From 0ce7df5c83217a0561ef71e927444ae8f52c2a47 Mon Sep 17 00:00:00 2001 From: songhuangfeng123 <shf18767906695@163.com> Date: 星期四, 07 七月 2022 17:45:07 +0800 Subject: [PATCH] 应急预案新增+详情 --- emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/impl/EmergencyPlanServiceImpl.java | 130 ++++++++++++++++++++++++++++++++++++++++-- 1 files changed, 122 insertions(+), 8 deletions(-) diff --git a/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/impl/EmergencyPlanServiceImpl.java b/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/impl/EmergencyPlanServiceImpl.java index f03e0d1..2a3b615 100644 --- a/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/impl/EmergencyPlanServiceImpl.java +++ b/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/impl/EmergencyPlanServiceImpl.java @@ -6,17 +6,22 @@ import com.gkhy.safePlatform.commons.utils.BeanCopyUtils; import com.gkhy.safePlatform.commons.vo.ResultVO; import com.gkhy.safePlatform.commons.vo.SearchResultVO; -import com.gkhy.safePlatform.emergency.entity.EmergencyPlanInfoPageDO; +import com.gkhy.safePlatform.emergency.entity.*; +import com.gkhy.safePlatform.emergency.enums.EmergencyPlanStatus; +import com.gkhy.safePlatform.emergency.enums.EmergencyResultCodes; +import com.gkhy.safePlatform.emergency.excepiton.EmergencyException; import com.gkhy.safePlatform.emergency.model.dto.req.EmergencyPlanReqDTO; -import com.gkhy.safePlatform.emergency.model.dto.resp.EmergencyPlanPageRespDTO; +import com.gkhy.safePlatform.emergency.model.dto.resp.*; import com.gkhy.safePlatform.emergency.query.EmergencyPlanQuery; import com.gkhy.safePlatform.emergency.query.db.EmergencyPlanDBQuery; import com.gkhy.safePlatform.emergency.service.EmergencyPlanService; -import com.gkhy.safePlatform.emergency.service.baseService.EmergencyPlanInfoService; +import com.gkhy.safePlatform.emergency.service.baseService.*; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import org.springframework.util.CollectionUtils; +import java.util.Date; import java.util.List; @Service("emergencyPlanService") @@ -24,6 +29,18 @@ @Autowired private EmergencyPlanInfoService emergencyPlanInfoService; + + @Autowired + private EmergencyPlanAreaInfoService emergencyPlanAreaInfoService; + + @Autowired + private EmergencyPlanDepartmentInfoService emergencyPlanDepartmentInfoService; + + @Autowired + private EmergencyPlanTeamInfoService emergencyPlanTeamInfoService; + + @Autowired + private EmergencyPlanFileInfoService emergencyPlanFileInfoService; @Override public SearchResultVO<List<EmergencyPlanPageRespDTO>> selectEmergencyPlanList(PageQuery<EmergencyPlanQuery> query) { @@ -49,10 +66,107 @@ } @Override - public ResultVO<String> add(Long valueOf, EmergencyPlanReqDTO emergencyPlanReqDTO) { - //新增应急预案 - //新增应急预案使用部门表 - // - return null; + public ResultVO addEmergencyPlan(Long uid, EmergencyPlanReqDTO emergencyPlanReqDTO) { + Date nowDate = new Date(); + // 新增应急预案 + EmergencyPlanInfo emergencyPlanInfo = new EmergencyPlanInfo(); + BeanUtils.copyProperties(emergencyPlanReqDTO,emergencyPlanInfo); + emergencyPlanInfo.setDelFlag(false); + emergencyPlanInfo.setCreateUid(uid); + emergencyPlanInfo.setGmtCreate(nowDate); + emergencyPlanInfo.setStatus(EmergencyPlanStatus.START.getStatus()); + emergencyPlanInfoService.addEmergencyPlan(emergencyPlanInfo); + // 新增应急预案区域表 + if (!CollectionUtils.isEmpty(emergencyPlanReqDTO.getAreaList())){ + List<EmergencyPlanAreaInfo> emergencyPlanAreaInfoList = BeanCopyUtils.copyBeanList(emergencyPlanReqDTO.getAreaList(),EmergencyPlanAreaInfo.class); + emergencyPlanAreaInfoList.forEach(EmergencyPlanAreaInfo->{ + EmergencyPlanAreaInfo.setDelFlag(false); + EmergencyPlanAreaInfo.setCreateUid(uid); + EmergencyPlanAreaInfo.setGmtCreate(nowDate); + EmergencyPlanAreaInfo.setPlanId(emergencyPlanInfo.getId()); + }); + for (EmergencyPlanAreaInfo emergencyPlanAreaInfo : emergencyPlanAreaInfoList){ + emergencyPlanAreaInfoService.addEmergencyPlanArea(emergencyPlanAreaInfo); + } + } + // 新增应急预案适用部门表 + if (!CollectionUtils.isEmpty(emergencyPlanReqDTO.getDeptList())){ + List<EmergencyPlanDepartmentInfo> emergencyPlanDepartmentInfoList = BeanCopyUtils.copyBeanList(emergencyPlanReqDTO.getDeptList(),EmergencyPlanDepartmentInfo.class); + emergencyPlanDepartmentInfoList.forEach(EmergencyPlanDepartmentInfo->{ + EmergencyPlanDepartmentInfo.setDelFlag(false); + EmergencyPlanDepartmentInfo.setCreateUid(uid); + EmergencyPlanDepartmentInfo.setGmtCreate(nowDate); + EmergencyPlanDepartmentInfo.setPlanId(emergencyPlanInfo.getId()); + }); + for (EmergencyPlanDepartmentInfo emergencyPlanDepartmentInfo : emergencyPlanDepartmentInfoList){ + emergencyPlanDepartmentInfoService.addEmergencyPlanDepartment(emergencyPlanDepartmentInfo); + } + } + // 新增应急预案附件表 + if (!CollectionUtils.isEmpty(emergencyPlanReqDTO.getFileList())){ + List<EmergencyPlanFileInfo> emergencyPlanFileInfoList = BeanCopyUtils.copyBeanList(emergencyPlanReqDTO.getFileList(),EmergencyPlanFileInfo.class); + emergencyPlanFileInfoList.forEach(EmergencyPlanFileInfo->{ + EmergencyPlanFileInfo.setDelFlag(false); + EmergencyPlanFileInfo.setCreateUid(uid); + EmergencyPlanFileInfo.setGmtCreate(nowDate); + EmergencyPlanFileInfo.setPlanId(emergencyPlanInfo.getId()); + }); + for (EmergencyPlanFileInfo emergencyPlanFileInfo : emergencyPlanFileInfoList){ + emergencyPlanFileInfoService.addEmergencyPlanFile(emergencyPlanFileInfo); + } + } + // 新增应急预案应急队伍表 + if (!CollectionUtils.isEmpty(emergencyPlanReqDTO.getTeamList())){ + List<EmergencyPlanTeamInfo> emergencyPlanTeamInfoList = BeanCopyUtils.copyBeanList(emergencyPlanReqDTO.getTeamList(),EmergencyPlanTeamInfo.class); + emergencyPlanTeamInfoList.forEach(EmergencyPlanTeamInfo->{ + EmergencyPlanTeamInfo.setDelFlag(false); + EmergencyPlanTeamInfo.setCreateUid(uid); + EmergencyPlanTeamInfo.setGmtCreate(nowDate); + EmergencyPlanTeamInfo.setPlanId(emergencyPlanInfo.getId()); + }); + for (EmergencyPlanTeamInfo emergencyPlanTeamInfo : emergencyPlanTeamInfoList){ + emergencyPlanTeamInfoService.addEmergencyPlanTeam(emergencyPlanTeamInfo); + } + } + + return new ResultVO<>(ResultCodes.OK); + } + + @Override + public ResultVO<EmergencyPlanDetailRespDTO> getEmergencyPlanById(Long id) { + EmergencyPlanDetailRespDTO emergencyPlanDetailRespDTO = new EmergencyPlanDetailRespDTO(); + // 查询是否存在 + EmergencyPlanInfoDetailDO emergencyPlanInfoDetailDO = emergencyPlanInfoService.selectEmergencyPlanById(id); + if (emergencyPlanInfoDetailDO==null){ + throw new EmergencyException(EmergencyResultCodes.PLAN_NOT_EXIST); + }else{ + BeanUtils.copyProperties(emergencyPlanInfoDetailDO,emergencyPlanDetailRespDTO); + + // 查找对应的区域 + List<EmergencyPlanAreaInfoDO> emergencyPlanAreaInfoDOList = emergencyPlanAreaInfoService.selectEmergencyPlanAreaByPlanId(id); + if (!CollectionUtils.isEmpty(emergencyPlanAreaInfoDOList)){ + List<EmergencyPlanAreaRespDTO> emergencyTeamFileRespDTOList = BeanCopyUtils.copyBeanList(emergencyPlanAreaInfoDOList , EmergencyPlanAreaRespDTO.class); + emergencyPlanDetailRespDTO.setAreaList(emergencyTeamFileRespDTOList); + } + // 查找对应的适用部门 + List<EmergencyPlanDepartmentInfoDO> emergencyPlanDepartmentInfoDOList = emergencyPlanDepartmentInfoService.selectEmergencyPlanDepartmentByPlanId(id); + if (!CollectionUtils.isEmpty(emergencyPlanDepartmentInfoDOList)){ + List<EmergencyPlanDepartmentRespDTO> emergencyTeamDepartmentRespDTOList = BeanCopyUtils.copyBeanList(emergencyPlanDepartmentInfoDOList , EmergencyPlanDepartmentRespDTO.class); + emergencyPlanDetailRespDTO.setDeptList(emergencyTeamDepartmentRespDTOList); + } + // 查找对应的应急队伍 + List<EmergencyPlanTeamInfoDO> emergencyPlanTeamInfoDOList = emergencyPlanTeamInfoService.selectEmergencyPlanTeamByPlanId(id); + if (!CollectionUtils.isEmpty(emergencyPlanTeamInfoDOList)){ + List<EmergencyPlanTeamRespDTO> emergencyTeamTeamRespDTOList = BeanCopyUtils.copyBeanList(emergencyPlanTeamInfoDOList , EmergencyPlanTeamRespDTO.class); + emergencyPlanDetailRespDTO.setTeamList(emergencyTeamTeamRespDTOList); + } + // 查找对应的附件 + List<EmergencyPlanFileInfoDO> emergencyPlanFileInfoDOList = emergencyPlanFileInfoService.selectEmergencyPlanFileByPlanId(id); + if (!CollectionUtils.isEmpty(emergencyPlanFileInfoDOList)){ + List<EmergencyPlanFileRespDTO> emergencyTeamFileRespDTOList = BeanCopyUtils.copyBeanList(emergencyPlanFileInfoDOList , EmergencyPlanFileRespDTO.class); + emergencyPlanDetailRespDTO.setFileList(emergencyTeamFileRespDTOList); + } + return new ResultVO<>(ResultCodes.OK,emergencyPlanDetailRespDTO); + } } } -- Gitblit v1.9.2