From 208b6439eb8e63b6485240a8b466ebdcfd08c57a Mon Sep 17 00:00:00 2001
From: songhuangfeng123 <shf18767906695@163.com>
Date: 星期一, 05 九月 2022 11:27:23 +0800
Subject: [PATCH] 应急统计

---
 emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/impl/EmergencyDrillEvaluationServiceImpl.java |   86 +++++++++++++++++++++++++++++-------------
 1 files changed, 59 insertions(+), 27 deletions(-)

diff --git a/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/impl/EmergencyDrillEvaluationServiceImpl.java b/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/impl/EmergencyDrillEvaluationServiceImpl.java
index 09f30eb..e792e0e 100644
--- a/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/impl/EmergencyDrillEvaluationServiceImpl.java
+++ b/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 {

--
Gitblit v1.9.2