songhuangfeng123
2022-09-01 b854d8d7604329dcf99584d15f83ff02076d9e07
equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/impl/KeypointEquipmentInfoServiceImpl.java
@@ -1,5 +1,6 @@
package com.gkhy.safePlatform.equipment.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
@@ -7,6 +8,7 @@
import com.gkhy.safePlatform.account.rpc.apimodel.AccountDepartmentService;
import com.gkhy.safePlatform.equipment.entity.*;
import com.gkhy.safePlatform.equipment.model.dto.req.*;
import com.gkhy.safePlatform.equipment.repository.EquipmentTypeMngRepository;
import com.gkhy.safePlatform.equipment.repository.KeypointEquipmentInfoRepository;
import com.gkhy.safePlatform.equipment.service.*;
import org.apache.dubbo.config.annotation.DubboReference;
@@ -58,6 +60,9 @@
    @Autowired
    private EquipmentInfoService equipmentInfoService;
    @Autowired
    private EquipmentTypeMngRepository equipmentTypeMngRepository;
   
   @Override
    public ResultVO queryAll(PageQuery<KeypointEquipmentInfoQueryCriteria> pageQuery) {
@@ -69,6 +74,7 @@
                QueryHelpPlus.getPredicate(KeypointEquipmentInfo.class, pageQuery.getSearchParams()));
        List<KeypointEquipmentInfoDto> respList = BeanCopyUtils.copyBeanList(page.getRecords(), KeypointEquipmentInfoDto.class);
        Set<Long> collectTypeIdSet = new HashSet();
        //获取额外信息
        respList.forEach(f->{
            //设备保养
@@ -95,6 +101,8 @@
            List<EquipmentRepairDetail> repairDetailList = equipmentRepairDetailService.queryAll(criteria2);
            f.setRepaireDetailList(repairDetailList);
            // --------------------------- 获取设备设施类型管理ID-----------------------
            collectTypeIdSet.add(f.getEquipmentTypeId());
            // --------------------------- 获取部门信息-----------------------
            //收集所用到的部门ID
@@ -113,6 +121,20 @@
            checkDetailList.forEach(info->{info.setTestPersonDepartmentName(depNameMap.get(info.getTestPersonDepartmentId()));});
            repairDetailList.forEach(info->{info.setRepairPersonDepartmentName(depNameMap.get(info.getRepairPersonDepartmentId()));});
        });
        //获取设备设施类型名称
        if(!collectTypeIdSet.isEmpty()){
            List<EquipmentTypeMng> typeMngList = equipmentTypeMngRepository.selectList(new QueryWrapper<EquipmentTypeMng>().in("id",collectTypeIdSet));
            Map<Long, String> typePool = new HashMap<>();
            typeMngList.forEach(f->{
                typePool.put(f.getId(),f.getTypeName());
            });
            respList.forEach(f->{
                f.setEquipmentTypeName(typePool.get(f.getEquipmentTypeId()));
            });
        }
        return new SearchResultVO<>(
                true,
                pageIndex,
@@ -193,6 +215,13 @@
        checkDetailList.forEach(info->{info.setTestPersonDepartmentName(depNameMap.get(info.getTestPersonDepartmentId()));});
        repairDetailList.forEach(info->{info.setRepairPersonDepartmentName(depNameMap.get(info.getRepairPersonDepartmentId()));});
        EquipmentTypeMng typeMng = equipmentTypeMngRepository.selectOne(new QueryWrapper<EquipmentTypeMng>().eq("id",infoDto.getEquipmentTypeId()));
        if(typeMng != null){
            infoDto.setEquipmentTypeName(typeMng.getTypeName());
        }
        // TODO 调用应急预案RPC
        infoDto.setEmergencePlanName("");
        return infoDto;
    }
@@ -217,7 +246,15 @@
        if(StringUtils.hasText(infoDto.getDelTakecareDetails())){
            List<Long> idList = Arrays.stream(infoDto.getDelTakecareDetails().split(",")).map(s-> Long.parseLong(s.trim()))
                    .collect(Collectors.toList());
            equipmentTakecareDetailService.removeByIds(idList);
            List<EquipmentTakecareDetail> delList = new ArrayList<>();
            idList.forEach(f->{
                EquipmentTakecareDetail info = new EquipmentTakecareDetail();
                info.setDelFlag(1);
                info.setId(f);
                delList.add(info);
            });
            equipmentTakecareDetailService.updateBatchById(delList);
        }
        //保存设备检测
@@ -230,7 +267,15 @@
        if(StringUtils.hasText(infoDto.getDelTestDetails())){
            List<Long> idList = Arrays.stream(infoDto.getDelTestDetails().split(",")).map(s-> Long.parseLong(s.trim()))
                    .collect(Collectors.toList());
            equipmentTestDetailService.removeByIds(idList);
            List<EquipmentTestDetail> delList = new ArrayList<>();
            idList.forEach(f->{
                EquipmentTestDetail info = new EquipmentTestDetail();
                info.setDelFlag(1);
                info.setId(f);
                delList.add(info);
            });
            equipmentTestDetailService.updateBatchById(delList);
        }
        //设备检查 TODO
@@ -245,7 +290,15 @@
        if(StringUtils.hasText(infoDto.getDelRepaireDetails())){
            List<Long> idList = Arrays.stream(infoDto.getDelRepaireDetails().split(",")).map(s-> Long.parseLong(s.trim()))
                    .collect(Collectors.toList());
            equipmentRepairDetailService.removeByIds(idList);
            List<EquipmentRepairDetail> delList = new ArrayList<>();
            idList.forEach(f->{
                EquipmentRepairDetail info = new EquipmentRepairDetail();
                info.setDelFlag(1);
                info.setId(f);
                delList.add(info);
            });
            equipmentRepairDetailService.updateBatchById(delList);
        }
        //保存检查标准
        List<EquipmentCheckStandardDetail> checkStandardeDetailList = infoDto.getCheckStandardeDetailList();
@@ -257,7 +310,15 @@
        if(StringUtils.hasText(infoDto.getDelCheckStandardeDetails())){
            List<Long> idList = Arrays.stream(infoDto.getDelCheckStandardeDetails().split(",")).map(s-> Long.parseLong(s.trim()))
                    .collect(Collectors.toList());
            equipmentCheckStandardDetailService.removeByIds(idList);
            List<EquipmentCheckStandardDetail> delList = new ArrayList<>();
            idList.forEach(f->{
                EquipmentCheckStandardDetail info = new EquipmentCheckStandardDetail();
                info.setDelFlag(1);
                info.setId(f);
                delList.add(info);
            });
            equipmentCheckStandardDetailService.updateBatchById(delList);
        }
        //保存保养标准
        List<EquipmentTakecareStardardDetail> takecareStardardeDetailList = infoDto.getTakecareStardardeDetailList();
@@ -269,7 +330,15 @@
        if(StringUtils.hasText(infoDto.getDelTakecareStardardeDetails())){
            List<Long> idList = Arrays.stream(infoDto.getDelTakecareStardardeDetails().split(",")).map(s-> Long.parseLong(s.trim()))
                    .collect(Collectors.toList());
            equipmentTakecareStardardDetailService.removeByIds(idList);
            List<EquipmentTakecareStardardDetail> delList = new ArrayList<>();
            idList.forEach(f->{
                EquipmentTakecareStardardDetail info = new EquipmentTakecareStardardDetail();
                info.setDelFlag(1);
                info.setId(f);
                delList.add(info);
            });
            equipmentTakecareStardardDetailService.updateBatchById(delList);
        }
   }
}