车间能级提升-智能设备管理系统
zhuguifei
2 天以前 453f63fd6cd6466222304df619e62b3a5667ca68
eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/service/impl/EimsInspectStServiceImpl.java
@@ -11,9 +11,12 @@
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import lombok.RequiredArgsConstructor;
import org.dromara.common.satoken.utils.LoginHelper;
import org.dromara.eims.domain.EimsEqu;
import org.dromara.eims.domain.EimsInspectRecord;
import org.dromara.eims.domain.EimsMaintOrder;
import org.dromara.eims.domain.vo.EimsInspectRecordVo;
import org.dromara.eims.domain.vo.EimsMaintStVo;
import org.dromara.eims.mapper.EimsEquMapper;
import org.dromara.eims.mapper.EimsInspectRecordMapper;
import org.springframework.stereotype.Service;
@@ -132,20 +135,12 @@
    @Override
    public TableDataInfo<EimsInspectStVo> queryPageList(EimsInspectStBo bo, PageQuery pageQuery) {
        bo.setType(bo.getViewMode());
        // 月视图
//        if(bo.getViewMode().equals("Month")){
            QueryWrapper<EimsInspectSt> qw = buildWrapper(bo);
            Page<EimsInspectStVo> result = baseMapper.selectInspStList(pageQuery.build(), qw);
            // 填充数据
            fillStData(result,bo.getViewMode());
            return TableDataInfo.build(result);
            // 日视图
//        }else if(bo.getViewMode().equals("Day")){
//            Page<EimsInspectStVo> result = recordMapper.selectInspRecordDayList(pageQuery.build(), buildGroupWrapper(bo));
//            return TableDataInfo.build(result);
//        }
//       return null;
    }
    /**
@@ -179,7 +174,7 @@
            List<EimsInspectRecordVo> recordList = recordMapper.selectVoList(recordLqw);
            // TODO 根据字典eims_inspect_status
            Map<String, Long> cMap = recordList.stream()
                .filter(order -> List.of("0", "1").contains(order.getStatus()))
                .filter(order -> List.of("0","1", "2").contains(order.getStatus()))
                .collect(Collectors.groupingBy(EimsInspectRecordVo::getStatus, Collectors.counting()));
            // TODO 根据字典eims_inspect_result
            Map<String, Long> rMap = recordList.stream()
@@ -188,7 +183,8 @@
            stVo.setRecordCount(recordList.size());
            stVo.setUnCheckCount(cMap.getOrDefault("0", 0L).intValue());
            stVo.setCheckCount(cMap.getOrDefault("1", 0L).intValue());
            stVo.setDqrCount(cMap.getOrDefault("1", 0L).intValue());
            stVo.setCheckCount(cMap.getOrDefault("2", 0L).intValue());
            stVo.setNormalNum(rMap.getOrDefault("1", 0L).intValue());
            stVo.setAbNormalNum(rMap.getOrDefault("2", 0L).intValue());
@@ -253,6 +249,12 @@
        qw.eq( "st.type", bo.getType());
        qw.between(params.get("beginPlanTime") != null && params.get("endPlanTime") != null,
            "st.plan_time", params.get("beginPlanTime"), params.get("endPlanTime"));
        if (params.get("searchValue") != null && StringUtils.isNotBlank(params.get("searchValue").toString())) {
            qw.and(wq -> wq.like("st.title", params.get("searchValue"))
                .or().like("equ.equ_name", params.get("searchValue"))
                .or().like("equ.asset_no", params.get("searchValue"))
            );
        }
        qw.eq(bo.getInspUser() != null, "st.maint_user", bo.getInspUser());
        qw.eq(bo.getVerifyUser() != null, "st.verify_user", bo.getVerifyUser());
        qw.eq(bo.getStatus() != null, "st.status", bo.getStatus());
@@ -288,14 +290,38 @@
    public Boolean updateByBo(EimsInspectStBo bo) {
        EimsInspectSt update = MapstructUtils.convert(bo, EimsInspectSt.class);
        if(bo.getVerifyUser()!=null){
            EimsInspectSt st = baseMapper.selectById(bo.getId());
            String status = st.getStatus();
            if(status==null  || status.equals(DictConstants.MAINT_ORDER_ST_STATUS_DETAIL.N)){
                if(update.getVerifyTime()==null) update.setStatus(DictConstants.MAINT_ORDER_ST_STATUS_DETAIL.Y);
                if(update.getVerifyTime()==null) update.setVerifyTime(new Date());
            }
        }
//        if(bo.getVerifyUser()!=null){
//            EimsInspectSt st = baseMapper.selectById(bo.getId());
//            String status = st.getStatus();
//            if(status==null  || status.equals(DictConstants.MAINT_ORDER_ST_STATUS_DETAIL.N)){
//                if(update.getVerifyTime()==null) update.setStatus(DictConstants.MAINT_ORDER_ST_STATUS_DETAIL.Y);
//                if(update.getVerifyTime()==null) update.setVerifyTime(new Date());
//            }
//        }
        //点检汇总完成需同步更新st下子工单
            EimsInspectStVo st = baseMapper.selectVoById(bo.getId());
            Long equId =  st.getEquId();
            String planTime = DateUtils.dateTime(st.getPlanTime());
            LambdaQueryWrapper<EimsInspectRecord> wrapper = Wrappers.lambdaQuery();
            wrapper.eq(EimsInspectRecord::getEquId,equId);
            wrapper.eq(EimsInspectRecord::getPlanTime,planTime);
            List<EimsInspectRecord> recordList = recordMapper.selectList(wrapper);
            // st下子工单所有状态设置为3-已完成
            recordList.forEach(order -> {
                order.setStatus(bo.getStatus());
                if(order.getStatus().equals("1")){
                    order.setInspUser(LoginHelper.getUserId());
                }else if(order.getStatus().equals("2")){
                    order.setVerifyUser(LoginHelper.getUserId());
                }
            });
            recordMapper.updateBatchById(recordList);
        validEntityBeforeSave(update);
        return baseMapper.updateById(update) > 0;
    }