fix
songhuangfeng123
2022-09-20 f1f506172a3edff8d31e4db77b8940f115660919
emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/impl/EmergencyTeamServiceImpl.java
@@ -8,6 +8,7 @@
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.enums.TeamLevelEnum;
import com.gkhy.safePlatform.emergency.excepiton.EmergencyException;
import com.gkhy.safePlatform.emergency.enums.EmergencyResultCodes;
import com.gkhy.safePlatform.emergency.model.dto.req.EmergencyTeamFileReqDTO;
@@ -74,7 +75,7 @@
        return new SearchResultVO<>(
                true,
                pageIndex,
                pageSize,
                pageSize,page.getPages(),
                page.getTotal(),
                respList,
                ResultCodes.OK
@@ -82,9 +83,11 @@
    }
    @Override
    public ResultVO addEmergencyTeam(Long uid, EmergencyTeamReqDTO emergencyTeamReqDTO) {
    public ResultVO<EmergencyTeamDetailRespDTO> addEmergencyTeam(Long uid, EmergencyTeamReqDTO emergencyTeamReqDTO) {
        //必填项验证
        checkRequired(emergencyTeamReqDTO);
        // 验证枚举
        checkEnum(emergencyTeamReqDTO);
        Date nowDate = new Date();
        //1.新增应急队伍
@@ -95,11 +98,16 @@
        emergencyTeamInfo.setGmtCreate(nowDate);
        emergencyTeamInfoService.addEmergencyTeam(emergencyTeamInfo);
        //2.新增应急队伍附件
        addEmergencyTeamFile(emergencyTeamInfo.getId(),uid,nowDate,emergencyTeamReqDTO.getFileList());
        if (!CollectionUtils.isEmpty(emergencyTeamReqDTO.getFileList())){
            addEmergencyTeamFile(emergencyTeamInfo.getId(),uid,nowDate,emergencyTeamReqDTO.getFileList());
        }
        //3.新增应急队伍人员
        addEmergencyTeamMember(emergencyTeamInfo.getId(),uid,nowDate,emergencyTeamReqDTO.getMemberList());
        return new ResultVO(ResultCodes.OK);
        if (!CollectionUtils.isEmpty(emergencyTeamReqDTO.getMemberList())){
            addEmergencyTeamMember(emergencyTeamInfo.getId(),uid,nowDate,emergencyTeamReqDTO.getMemberList());
        }
        EmergencyTeamDetailRespDTO emergencyTeamDetailRespDTO = new EmergencyTeamDetailRespDTO();
        BeanUtils.copyProperties(emergencyTeamInfo,emergencyTeamDetailRespDTO);
        return new ResultVO<>(ResultCodes.OK,emergencyTeamDetailRespDTO);
    }
    private void  addEmergencyTeamFile(Long teamId ,Long uid , Date nowDate , List<EmergencyTeamFileReqDTO> emergencyTeamFileReqDTOList){
@@ -156,6 +164,9 @@
    @Override
    public ResultVO updateEmergencyTeam(Long uid, EmergencyTeamReqDTO emergencyTeamReqDTO) {
        // 验证枚举
        checkEnum(emergencyTeamReqDTO);
        Date nowDate = new Date();
        //查询是否存在
        EmergencyTeamInfoDetailDO emergencyTeamInfoDetailDO = emergencyTeamInfoService.selectEmergencyTeamById(emergencyTeamReqDTO.getId());
        if (emergencyTeamInfoDetailDO==null){
@@ -164,16 +175,15 @@
            EmergencyTeamInfo emergencyTeamInfo = new EmergencyTeamInfo();
            BeanUtils.copyProperties(emergencyTeamReqDTO,emergencyTeamInfo);
            emergencyTeamInfo.setUpdateUid(uid);
            emergencyTeamInfo.setGmtModitify(new Date());
            emergencyTeamInfo.setGmtModitify(nowDate);
            emergencyTeamInfoService.updateEmergencyTeam(emergencyTeamInfo);
            //修改应急队伍附件
            updateEmergencyTeamFile(uid,emergencyTeamReqDTO.getId(),emergencyTeamReqDTO.getFileList());
            updateEmergencyTeamFile(uid,emergencyTeamReqDTO.getId(),nowDate,emergencyTeamReqDTO.getFileList());
            return new ResultVO(ResultCodes.OK);
        }
    }
    private void updateEmergencyTeamFile(Long uid ,Long teamId ,List<EmergencyTeamFileReqDTO> emergencyTeamFileReqDTOList){
        Date nowDate = new Date();
    private void updateEmergencyTeamFile(Long uid ,Long teamId ,Date nowDate,List<EmergencyTeamFileReqDTO> emergencyTeamFileReqDTOList){
        List<EmergencyTeamFileInfoDO> emergencyTeamFileInfoDOList = emergencyTeamFileInfoService.selectByEmergencyTeamId(teamId);
        List<Long> oldIdsList = emergencyTeamFileInfoDOList.stream().map(EmergencyTeamFileInfoDO::getId).collect(Collectors.toList());
@@ -242,7 +252,25 @@
    }
    @Override
    public ResultVO deleteEmergencyTeam(Long id) {
    public ResultVO batchDeleteEmergencyTeam(Long[] ids) {
        if (ids == null ||  ids.length==0){
            throw new EmergencyException(EmergencyResultCodes.TEAM_NULL);
        }else{
            for (Long id : ids){
                deleteEmergencyTeam(id);
            }
            return new ResultVO(ResultCodes.OK);
        }
    }
    @Override
    public ResultVO getEmergencyTeamMemberByTeamId(Long teamId) {
        List<EmergencyTeamMemberInfoDO> emergencyTeamMemberInfoDOList = emergencyTeamMemberInfoService.selectByEmergencyTeamId(teamId);
        List<EmergencyTeamMemberRespDTO> emergencyTeamMemberRespDTOList = BeanCopyUtils.copyBeanList(emergencyTeamMemberInfoDOList , EmergencyTeamMemberRespDTO.class);
        return new ResultVO<>(ResultCodes.OK,emergencyTeamMemberRespDTOList);
    }
    private void deleteEmergencyTeam(Long id) {
        //查询是否存在
        EmergencyTeamInfoDetailDO emergencyTeamInfoDetailDO = emergencyTeamInfoService.selectEmergencyTeamById(id);
        if (emergencyTeamInfoDetailDO==null){
@@ -255,7 +283,6 @@
            emergencyTeamFileInfoService.deleteEmergencyTeamFileByTeamId(teamId);
            //删除应急队伍
            emergencyTeamInfoService.deleteEmergencyTeamById(teamId);
            return new ResultVO(ResultCodes.OK);
        }
    }
@@ -295,7 +322,7 @@
            throw new EmergencyException(EmergencyResultCodes.TEAM_NAME_NULL);
        }
        //级别
        if (StringUtils.isBlank(emergencyTeamReqDTO.getTeamLevel())) {
        if (emergencyTeamReqDTO.getTeamLevel() == null) {
            throw new EmergencyException(EmergencyResultCodes.TEAM_LEVEL_NULL);
        }
        //负责人
@@ -341,4 +368,13 @@
        }
    }
    /**
     * 枚举验证
     */
    private void checkEnum(EmergencyTeamReqDTO emergencyTeamReqDTO) {
        if (TeamLevelEnum.getByCode(emergencyTeamReqDTO.getTeamLevel()) == null) {
            throw new EmergencyException(EmergencyResultCodes.TEAM_ENUM_LEVEL_NOT_EXIST);
        }
    }
}