songhuangfeng123
2022-09-05 208b6439eb8e63b6485240a8b466ebdcfd08c57a
emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/impl/EmergencyDrillEvaluationServiceImpl.java
@@ -13,10 +13,7 @@
import com.gkhy.safePlatform.emergency.model.dto.req.EmergencyDrillEvaluationFileReqDTO;
import com.gkhy.safePlatform.emergency.model.dto.req.EmergencyDrillEvaluationReqDTO;
import com.gkhy.safePlatform.emergency.model.dto.req.EmergencyDrillEvaluationUserReqDTO;
import com.gkhy.safePlatform.emergency.model.dto.resp.EmergencyDrillEvaluationDetailRespDTO;
import com.gkhy.safePlatform.emergency.model.dto.resp.EmergencyDrillEvaluationFileRespDTO;
import com.gkhy.safePlatform.emergency.model.dto.resp.EmergencyDrillEvaluationPageRespDTO;
import com.gkhy.safePlatform.emergency.model.dto.resp.EmergencyDrillEvaluationUserRespDTO;
import com.gkhy.safePlatform.emergency.model.dto.resp.*;
import com.gkhy.safePlatform.emergency.query.EmergencyDrillEvaluationQuery;
import com.gkhy.safePlatform.emergency.query.db.EmergencyDrillEvaluationDBQuery;
import com.gkhy.safePlatform.emergency.service.EmergencyDrillEvaluationService;
@@ -46,6 +43,14 @@
    @Autowired
    private EmergencyDrillExecuteInfoService emergencyDrillExecuteInfoService;
    @Autowired
    private EmergencyDrillExecuteUserInfoService emergencyDrillExecuteUserInfoService;
    @Autowired
    private EmergencyDrillPlanFileInfoService emergencyDrillPlanFileInfoService;
    @Autowired
    private EmergencyDrillPlanUserInfoService emergencyDrillPlanUserInfoService;
    @Override
    public SearchResultVO<List<EmergencyDrillEvaluationPageRespDTO>> selectEmergencyDrillEvaluationList(PageQuery<EmergencyDrillEvaluationQuery> query) {
@@ -63,7 +68,7 @@
        return new SearchResultVO<>(
                true,
                pageIndex,
                pageSize,
                pageSize,page.getPages(),
                page.getTotal(),
                respList,
                ResultCodes.OK
@@ -77,7 +82,7 @@
            throw new EmergencyException(EmergencyResultCodes.DRILL_EXECUTE_NULL);
        } else {
            EmergencyDrillExecuteInfoDetailDO emergencyDrillExecuteInfoDetailDO = emergencyDrillExecuteInfoService.selectEmergencyDrillExecuteById(emergencyDrillEvaluationReqDTO.getDrillExecuteId());
            // 判断是否存在该演练计划
            // 判断是否存在该演练实施
            if (emergencyDrillExecuteInfoDetailDO == null) {
                throw new EmergencyException(EmergencyResultCodes.DRILL_EXECUTE_NOT_EXIST);
            } else {
@@ -93,10 +98,11 @@
                if (!CollectionUtils.isEmpty(emergencyDrillEvaluationReqDTO.getFileList())) {
                    addEmergencyDrillEvaluationFile(uid, emergencyDrillEvaluationInfo.getId(), nowDate, emergencyDrillEvaluationReqDTO.getFileList());
                }
                // 新增急演练计划应急人员表
                // 新增急演练实施评价应急人员表
                if (!CollectionUtils.isEmpty(emergencyDrillEvaluationReqDTO.getUserList())) {
                    addEmergencyDrillEvaluationUser(uid, emergencyDrillEvaluationInfo.getId(), nowDate, emergencyDrillEvaluationReqDTO.getUserList());
                }
                return new ResultVO<>(ResultCodes.OK);
            }
        }
@@ -132,24 +138,48 @@
    public ResultVO<EmergencyDrillEvaluationDetailRespDTO> getEmergencyDrillEvaluationById(Long id) {
        EmergencyDrillEvaluationDetailRespDTO emergencyDrillEvaluationDetailRespDTO = new EmergencyDrillEvaluationDetailRespDTO();
        // 查询是否存在
        EmergencyDrillEvaluationInfoDetailDO emergencyDrillEvaluationInfoDetailDO = emergencyDrillEvaluationInfoService.selectEmergencyDrillEvaluationById(id);
        EmergencyDrillEvaluationInfoDetailDO emergencyDrillEvaluationInfoDetailDO = emergencyDrillEvaluationInfoService.selectEmergencyDrillEvaluationByExecuteId(id);
        if (emergencyDrillEvaluationInfoDetailDO == null) {
            throw new EmergencyException(EmergencyResultCodes.DRILL_EVALUATION_NOT_EXIST);
        } else {
            BeanUtils.copyProperties(emergencyDrillEvaluationInfoDetailDO, emergencyDrillEvaluationDetailRespDTO);
            // 查找对应的人员
            List<EmergencyDrillEvaluationUserInfoDO> emergencyDrillEvaluationUserInfoDOList = emergencyDrillEvaluationUserInfoService.selectEmergencyDrillEvaluationUserByDrillEvaluationId(id);
            if (!CollectionUtils.isEmpty(emergencyDrillEvaluationUserInfoDOList)) {
                List<EmergencyDrillEvaluationUserRespDTO> emergencyUserUserRespDTOList = BeanCopyUtils.copyBeanList(emergencyDrillEvaluationUserInfoDOList, EmergencyDrillEvaluationUserRespDTO.class);
                emergencyDrillEvaluationDetailRespDTO.setUserList(emergencyUserUserRespDTOList);
            // 演练计划的文件
            List<EmergencyDrillPlanFileInfoDO> planFileInfoDOList = emergencyDrillPlanFileInfoService.selectEmergencyDrillPlanFileByDrillPlanId(emergencyDrillEvaluationDetailRespDTO.getDrillPlanId());
            if (!CollectionUtils.isEmpty(planFileInfoDOList)) {
                List<EmergencyDrillPlanFileRespDTO> emergencyUserFileRespDTOList = BeanCopyUtils.copyBeanList(planFileInfoDOList, EmergencyDrillPlanFileRespDTO.class);
                emergencyDrillEvaluationDetailRespDTO.setPlanFileList(emergencyUserFileRespDTOList);
            }
            // 查找对应的附件
            List<EmergencyDrillEvaluationFileInfoDO> emergencyDrillEvaluationFileInfoDOList = emergencyDrillEvaluationFileInfoService.selectEmergencyDrillEvaluationFileByDrillEvaluationId(id);
            // 演练计划的人员
            List<EmergencyDrillPlanUserInfoDO> planUserInfoDOList = emergencyDrillPlanUserInfoService.selectEmergencyDrillPlanUserByDrillPlanId(emergencyDrillEvaluationDetailRespDTO.getDrillPlanId());
            if (!CollectionUtils.isEmpty(planUserInfoDOList)) {
                List<EmergencyDrillPlanUserRespDTO> emergencyDrillPlanUserRespDTOList = BeanCopyUtils.copyBeanList(planUserInfoDOList, EmergencyDrillPlanUserRespDTO.class);
                List<EmergencyDrillPlanUserRespDTO> planUserList = emergencyDrillPlanUserRespDTOList.stream().filter(user -> user.getType()==1 ).collect(Collectors.toList());
                List<EmergencyDrillPlanUserRespDTO> planChargeUserList = emergencyDrillPlanUserRespDTOList.stream().filter(user -> user.getType()==2 ).collect(Collectors.toList());
                emergencyDrillEvaluationDetailRespDTO.setPlanUserList(planUserList);
                emergencyDrillEvaluationDetailRespDTO.setPlanChargeUserList(planChargeUserList);
            }
            // 演练实施的人员
            List<EmergencyDrillExecuteUserInfoDO> executeUserList = emergencyDrillExecuteUserInfoService.selectEmergencyDrillExecuteUserByDrillExecuteId(emergencyDrillEvaluationDetailRespDTO.getDrillExecuteId());
            if (!CollectionUtils.isEmpty(executeUserList)) {
                List<EmergencyDrillExecuteUserRespDTO> emergencyUserFileRespDTOList = BeanCopyUtils.copyBeanList(executeUserList, EmergencyDrillExecuteUserRespDTO.class);
                emergencyDrillEvaluationDetailRespDTO.setExecuteUserList(emergencyUserFileRespDTOList);
            }
            // 演练评价的文件
            List<EmergencyDrillEvaluationFileInfoDO> emergencyDrillEvaluationFileInfoDOList = emergencyDrillEvaluationFileInfoService.selectEmergencyDrillEvaluationFileByDrillEvaluationId(emergencyDrillEvaluationDetailRespDTO.getId());
            if (!CollectionUtils.isEmpty(emergencyDrillEvaluationFileInfoDOList)) {
                List<EmergencyDrillEvaluationFileRespDTO> emergencyUserFileRespDTOList = BeanCopyUtils.copyBeanList(emergencyDrillEvaluationFileInfoDOList, EmergencyDrillEvaluationFileRespDTO.class);
                emergencyDrillEvaluationDetailRespDTO.setFileList(emergencyUserFileRespDTOList);
                emergencyDrillEvaluationDetailRespDTO.setEvaluationFileList(emergencyUserFileRespDTOList);
            }
            // 演练评价的人员
            List<EmergencyDrillEvaluationUserInfoDO> emergencyDrillEvaluationUserInfoDOList = emergencyDrillEvaluationUserInfoService.selectEmergencyDrillEvaluationUserByDrillEvaluationId(emergencyDrillEvaluationDetailRespDTO.getId());
            if (!CollectionUtils.isEmpty(emergencyDrillEvaluationUserInfoDOList)) {
                List<EmergencyDrillEvaluationUserRespDTO> emergencyUserUserRespDTOList = BeanCopyUtils.copyBeanList(emergencyDrillEvaluationUserInfoDOList, EmergencyDrillEvaluationUserRespDTO.class);
                emergencyDrillEvaluationDetailRespDTO.setEvaluationUserList(emergencyUserUserRespDTOList);
            }
            return new ResultVO<>(ResultCodes.OK, emergencyDrillEvaluationDetailRespDTO);
        }
    }
@@ -158,25 +188,27 @@
    public ResultVO updateEmergencyDrillEvaluation(Long uid, EmergencyDrillEvaluationReqDTO emergencyDrillEvaluationReqDTO) {
        Date nowDate = new Date();
        // 查询是否存在
        EmergencyDrillEvaluationInfoDetailDO emergencyDrillEvaluationInfoDetailDO = emergencyDrillEvaluationInfoService.selectEmergencyDrillEvaluationById(emergencyDrillEvaluationReqDTO.getId());
        EmergencyDrillEvaluationInfoDetailDO emergencyDrillEvaluationInfoDetailDO = emergencyDrillEvaluationInfoService.selectEmergencyDrillEvaluationByExecuteId(emergencyDrillEvaluationReqDTO.getDrillExecuteId());
        if (emergencyDrillEvaluationInfoDetailDO == null) {
            throw new EmergencyException(EmergencyResultCodes.DRILL_EVALUATION_NOT_EXIST);
        } else {
            EmergencyDrillEvaluationInfo emergencyDrillEvaluationInfo = new EmergencyDrillEvaluationInfo();
            BeanUtils.copyProperties(emergencyDrillEvaluationReqDTO, emergencyDrillEvaluationInfo);
            emergencyDrillEvaluationInfo.setId(emergencyDrillEvaluationInfoDetailDO.getId());
            emergencyDrillEvaluationInfo.setUpdateUid(uid);
            emergencyDrillEvaluationInfo.setGmtModitify(nowDate);
            emergencyDrillEvaluationInfoService.updateEmergencyDrillEvaluation(emergencyDrillEvaluationInfo);
            // 更新急演练计划附件表
            // 更新急演练实施评价附件表
            if (!CollectionUtils.isEmpty(emergencyDrillEvaluationReqDTO.getFileList())) {
                updateEmergencyDrillEvaluationFile(uid, emergencyDrillEvaluationInfo.getId(), nowDate, emergencyDrillEvaluationReqDTO.getFileList());
            }
            // 更新急演练计划应急队伍表
            // 更新急演练实施评价应急队伍表
            if (!CollectionUtils.isEmpty(emergencyDrillEvaluationReqDTO.getUserList())) {
                updateEmergencyDrillEvaluationUser(uid, emergencyDrillEvaluationInfo.getId(), nowDate, emergencyDrillEvaluationReqDTO.getUserList());
            }
            // 修改实施表的评价状态
            emergencyDrillExecuteInfoService.updateStatusById(emergencyDrillEvaluationInfoDetailDO.getDrillExecuteId());
            return new ResultVO<>(ResultCodes.OK);
        }
    }
@@ -264,13 +296,13 @@
    }
    @Override
    public ResultVO batchDeleteEmergencyDrillEvaluation(String ids) {
        if (StringUtils.isBlank(ids)) {
    public ResultVO batchDeleteEmergencyDrillEvaluation(Long[] ids) {
        if (ids == null ||  ids.length==0){
            throw new EmergencyException(EmergencyResultCodes.DRILL_EVALUATION_NULL);
        } else {
            String[] idArr = ids.split(",");
            for (String id : idArr) {
                deleteEmergencyDrillEvaluation(Long.valueOf(id));
        }else{
            for (Long id : ids){
                deleteEmergencyDrillEvaluation(id);
            }
            return new ResultVO(ResultCodes.OK);
        }
@@ -278,7 +310,7 @@
    private void deleteEmergencyDrillEvaluation(Long id) {
        //查询是否存在
        EmergencyDrillEvaluationInfoDetailDO emergencyDrillEvaluationInfoDetailDO = emergencyDrillEvaluationInfoService.selectEmergencyDrillEvaluationById(id);
        EmergencyDrillEvaluationInfoDetailDO emergencyDrillEvaluationInfoDetailDO = emergencyDrillEvaluationInfoService.selectEmergencyDrillEvaluationByExecuteId(id);
        if (emergencyDrillEvaluationInfoDetailDO == null) {
            throw new EmergencyException(EmergencyResultCodes.DRILL_EVALUATION_NOT_EXIST);
        } else {