From c604f08ffc5264165a25d15b3eeef87c72ed8489 Mon Sep 17 00:00:00 2001
From: songhuangfeng123 <shf18767906695@163.com>
Date: 星期二, 05 七月 2022 18:05:34 +0800
Subject: [PATCH] 应急队伍详情

---
 emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/impl/EmergencyTeamServiceImpl.java |  124 ++++++++++++++++++++++++++++-------------
 1 files changed, 85 insertions(+), 39 deletions(-)

diff --git a/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/impl/EmergencyTeamServiceImpl.java b/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/impl/EmergencyTeamServiceImpl.java
index ba4fd5b..5c5c0ef 100644
--- a/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/impl/EmergencyTeamServiceImpl.java
+++ b/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/impl/EmergencyTeamServiceImpl.java
@@ -8,10 +8,13 @@
 import com.gkhy.safePlatform.commons.vo.ResultVO;
 import com.gkhy.safePlatform.commons.vo.SearchResultVO;
 import com.gkhy.safePlatform.emergency.entity.*;
-import com.gkhy.safePlatform.emergency.excepiton.EmergencyServiceException;
+import com.gkhy.safePlatform.emergency.excepiton.EmergencyException;
 import com.gkhy.safePlatform.emergency.enums.EmergencyResultCodes;
+import com.gkhy.safePlatform.emergency.model.dto.req.EmergencyTeamMemberReqDTO;
 import com.gkhy.safePlatform.emergency.model.dto.req.EmergencyTeamReqDTO;
+import com.gkhy.safePlatform.emergency.model.dto.resp.EmergencyTeamDetailRespDTO;
 import com.gkhy.safePlatform.emergency.model.dto.resp.EmergencyTeamFileRespDTO;
+import com.gkhy.safePlatform.emergency.model.dto.resp.EmergencyTeamMemberRespDTO;
 import com.gkhy.safePlatform.emergency.model.dto.resp.EmergencyTeamPageRespDTO;
 import com.gkhy.safePlatform.emergency.query.EmergencyTeamQuery;
 import com.gkhy.safePlatform.emergency.query.db.EmergencyTeamDBQuery;
@@ -52,9 +55,9 @@
         }
 
         List<EmergencyTeamPageRespDTO> respList = new ArrayList<>();
-        List<EmergencyTeamInfoPageDO> emergencyTeamInfoPageDOList = emergencyTeamInfoService.selectEmergencyTeamList(page,emergencyTeamDBQuery);
+        List<EmergencyTeamInfoPageDO> emergencyTeamInfoPageDOList = emergencyTeamInfoService.selectEmergencyTeamList(page, emergencyTeamDBQuery);
 
-        if (!CollectionUtils.isEmpty(emergencyTeamInfoPageDOList)){
+        if (!CollectionUtils.isEmpty(emergencyTeamInfoPageDOList)) {
             for (EmergencyTeamInfoPageDO emergencyTeamInfoPageDO : emergencyTeamInfoPageDOList) {
                 List<EmergencyTeamFileInfoDO> emergencyTeamFileInfoDOList = emergencyTeamFileInfoService.selectByEmergencyTeamId(emergencyTeamInfoPageDO.getId());
                 List<EmergencyTeamFileRespDTO> emergencyTeamFileRespDTOList = BeanCopyUtils.copyBeanList(emergencyTeamFileInfoDOList, EmergencyTeamFileRespDTO.class);
@@ -73,83 +76,126 @@
                 page.getTotal(),
                 respList,
                 ResultCodes.OK
-                );
+        );
     }
 
     @Override
     public ResultVO addEmergencyTeam(Long uid, EmergencyTeamReqDTO emergencyTeamReqDTO) {
-        Date nowDate = new Date();
+
         //必填项验证
         checkRequired(emergencyTeamReqDTO);
+
+        Date nowDate = new Date();
         //1.新增应急队伍
-        EmergencyTeamFileInfo emergencyTeamFileInfo = new EmergencyTeamFileInfo();
-        BeanUtils.copyProperties(emergencyTeamReqDTO,emergencyTeamFileInfo);
-        emergencyTeamFileInfo.setDelFlag(false);
-        emergencyTeamFileInfo.setCreateUid(uid);
-        emergencyTeamFileInfo.setGmtCreate(nowDate);
-        emergencyTeamInfoService.addEmergencyTeam(emergencyTeamFileInfo);
+        EmergencyTeamInfo emergencyTeamInfo = new EmergencyTeamInfo();
+        BeanUtils.copyProperties(emergencyTeamReqDTO, emergencyTeamInfo);
+        emergencyTeamInfo.setDelFlag(false);
+        emergencyTeamInfo.setCreateUid(uid);
+        emergencyTeamInfo.setGmtCreate(nowDate);
+        emergencyTeamInfoService.addEmergencyTeam(emergencyTeamInfo);
         //2.新增应急队伍附件
-        List<EmergencyTeamFileInfo> fileInfoList = new ArrayList<>();
-        BeanCopyUtils.copyBeanList(emergencyTeamReqDTO.getFileList(),fileInfoList.getClass());
+        List<EmergencyTeamFileInfo> fileInfoList = BeanCopyUtils.copyBeanList(emergencyTeamReqDTO.getFileList(), EmergencyTeamFileInfo.class);
         fileInfoList.forEach(EmergencyTeamFileInfo -> {
-            EmergencyTeamFileInfo.setTeamId(emergencyTeamFileInfo.getTeamId());
+            EmergencyTeamFileInfo.setTeamId(emergencyTeamInfo.getId());
             EmergencyTeamFileInfo.setDelFlag(false);
             EmergencyTeamFileInfo.setCreateUid(uid);
             EmergencyTeamFileInfo.setGmtCreate(nowDate);
         });
         emergencyTeamFileInfoService.addEmergencyTeamFile(fileInfoList);
         //3.新增应急队伍人员
-        List<EmergencyTeamMemberInfo> memberInfoList = new ArrayList<>();
-        BeanCopyUtils.copyBeanList(emergencyTeamReqDTO.getMemberList(),memberInfoList.getClass());
+        List<EmergencyTeamMemberInfo> memberInfoList = BeanCopyUtils.copyBeanList(emergencyTeamReqDTO.getMemberList(), EmergencyTeamMemberInfo.class);
         memberInfoList.forEach(EmergencyTeamMemberInfo -> {
-            EmergencyTeamMemberInfo.setTeamId(emergencyTeamFileInfo.getTeamId());
+            EmergencyTeamMemberInfo.setTeamId(emergencyTeamInfo.getId());
             EmergencyTeamMemberInfo.setDelFlag(false);
             EmergencyTeamMemberInfo.setCreateUid(uid);
             EmergencyTeamMemberInfo.setGmtCreate(nowDate);
         });
         emergencyTeamMemberInfoService.addEmergencyTeamMember(memberInfoList);
 
-        return ResultVO.success();
+        return new ResultVO(ResultCodes.OK);
+    }
+
+    @Override
+    public ResultVO<EmergencyTeamDetailRespDTO> getEmergencyTeamById(Long id) {
+        EmergencyTeamDetailRespDTO emergencyTeamDetailRespDTO = new EmergencyTeamDetailRespDTO();
+        EmergencyTeamInfoDetailDO emergencyTeamInfoDetailDO = emergencyTeamInfoService.selectEmergencyTeamById(id);
+        if (emergencyTeamInfoDetailDO==null){
+            throw new EmergencyException(EmergencyResultCodes.TEAM_NOT_EXIST);
+        }else{
+            BeanUtils.copyProperties(emergencyTeamInfoDetailDO,emergencyTeamDetailRespDTO);
+            //查找对应的附件
+            List<EmergencyTeamFileInfoDO> emergencyTeamFileInfoDOList = emergencyTeamFileInfoService.selectByEmergencyTeamId(id);
+            if (!CollectionUtils.isEmpty(emergencyTeamFileInfoDOList)){
+                List<EmergencyTeamFileRespDTO> emergencyTeamFileRespDTOList = BeanCopyUtils.copyBeanList(emergencyTeamFileInfoDOList , EmergencyTeamFileRespDTO.class);
+                emergencyTeamDetailRespDTO.setFileList(emergencyTeamFileRespDTOList);
+            }
+
+            //查找对应的人员
+            List<EmergencyTeamMemberInfoDO> emergencyTeamMemberInfoDOList = emergencyTeamMemberInfoService.selectByEmergencyTeamId(id);
+            if (!CollectionUtils.isEmpty(emergencyTeamMemberInfoDOList)){
+                List<EmergencyTeamMemberRespDTO> emergencyTeamMemberRespDTOList = BeanCopyUtils.copyBeanList(emergencyTeamMemberInfoDOList , EmergencyTeamMemberRespDTO.class);
+                emergencyTeamDetailRespDTO.setMemberList(emergencyTeamMemberRespDTOList);
+            }
+        }
+        return new ResultVO<>(ResultCodes.OK ,emergencyTeamDetailRespDTO);
     }
 
     /**
      * 验证必填项
+     *
      * @return
      */
-    private void checkRequired(EmergencyTeamReqDTO emergencyTeamReqDTO){
+    private void checkRequired(EmergencyTeamReqDTO emergencyTeamReqDTO) {
         //名称
-        if (StringUtils.isBlank(emergencyTeamReqDTO.getTeamName())){
-            throw new EmergencyServiceException(EmergencyResultCodes.TEAM_NAME_NULL);
+        if (StringUtils.isBlank(emergencyTeamReqDTO.getTeamName())) {
+            throw new EmergencyException(EmergencyResultCodes.TEAM_NAME_NULL);
         }
         //级别
-        if (StringUtils.isBlank(emergencyTeamReqDTO.getTeamLevel())){
-            throw new EmergencyServiceException(EmergencyResultCodes.TEAM_LEVEL_NULL);
+        if (StringUtils.isBlank(emergencyTeamReqDTO.getTeamLevel())) {
+            throw new EmergencyException(EmergencyResultCodes.TEAM_LEVEL_NULL);
         }
         //负责人
-        if(emergencyTeamReqDTO.getPrincipalUid() == null || emergencyTeamReqDTO.getPrincipalUid() == 0){
-            throw new EmergencyServiceException(EmergencyResultCodes.TEAM_PRINCIPAL_NULL);
+        if (emergencyTeamReqDTO.getPrincipalUid() == null || emergencyTeamReqDTO.getPrincipalUid() == 0) {
+            throw new EmergencyException(EmergencyResultCodes.TEAM_PRINCIPAL_NULL);
         }
         //负责人部门
 
-        if(emergencyTeamReqDTO.getPrincipalDepartmentId() == null || emergencyTeamReqDTO.getPrincipalDepartmentId() == 0){
-            throw new EmergencyServiceException(EmergencyResultCodes.TEAM_PRINCIPAL_DEPARTMENT_NULL);
+        if (emergencyTeamReqDTO.getPrincipalDepartmentId() == null || emergencyTeamReqDTO.getPrincipalDepartmentId() == 0) {
+            throw new EmergencyException(EmergencyResultCodes.TEAM_PRINCIPAL_DEPARTMENT_NULL);
         }
         //负责人手机
-        if (StringUtils.isBlank(emergencyTeamReqDTO.getPrincipalPhone())){
-            throw new EmergencyServiceException(EmergencyResultCodes.TEAM_PRINCIPAL_PHONE_NULL);
+        if (StringUtils.isBlank(emergencyTeamReqDTO.getPrincipalPhone())) {
+            throw new EmergencyException(EmergencyResultCodes.TEAM_PRINCIPAL_PHONE_NULL);
         }
         //固定电话
-        if (StringUtils.isBlank(emergencyTeamReqDTO.getTelephoneNumber())){
-            throw new EmergencyServiceException(EmergencyResultCodes.TEAM_TELEPHONE_NUMBER_NULL);
+        if (StringUtils.isBlank(emergencyTeamReqDTO.getTelephoneNumber())) {
+            throw new EmergencyException(EmergencyResultCodes.TEAM_TELEPHONE_NUMBER_NULL);
         }
-    }
-
-    /**
-     * 验证数据库是否存在
-     * @return
-     */
-    public Boolean checkeExist(){
-        return null;
+        //人员列表如果不为空,则需要验证其中的必填项
+        if (!CollectionUtils.isEmpty(emergencyTeamReqDTO.getMemberList())){
+            for(EmergencyTeamMemberReqDTO emergencyTeamMemberReqDTO : emergencyTeamReqDTO.getMemberList()){
+                //工号
+                if (StringUtils.isBlank(emergencyTeamMemberReqDTO.getJobNumber())) {
+                    throw new EmergencyException(EmergencyResultCodes.TEAM_USER_JOB_NUMBER_NULL);
+                }
+                //名称
+                if (StringUtils.isBlank(emergencyTeamMemberReqDTO.getName())) {
+                    throw new EmergencyException(EmergencyResultCodes.TEAM_USER_NAME_NULL);
+                }
+                //性别
+                if (emergencyTeamMemberReqDTO.getGender()==null) {
+                    throw new EmergencyException(EmergencyResultCodes.TEAM_USER_GENDER_NULL);
+                }
+                //手机号码
+                if (StringUtils.isBlank(emergencyTeamMemberReqDTO.getPhone())) {
+                    throw new EmergencyException(EmergencyResultCodes.TEAM_USER_PHONE_NULL);
+                }
+                //职务
+                if (StringUtils.isBlank(emergencyTeamMemberReqDTO.getPosition())) {
+                    throw new EmergencyException(EmergencyResultCodes.TEAM_USER_POSITION_NULL);
+                }
+            }
+        }
     }
 
 }

--
Gitblit v1.9.2