| | |
| | | import com.gkhy.safePlatform.emergency.model.dto.resp.*; |
| | | import com.gkhy.safePlatform.emergency.query.EmergencyDrillCountQuery; |
| | | import com.gkhy.safePlatform.emergency.query.EmergencyDrillExecuteCountQuery; |
| | | import com.gkhy.safePlatform.emergency.query.EmergencyDrillTimeQuery; |
| | | import com.gkhy.safePlatform.emergency.query.EmergencySuppliesCountQuery; |
| | | import com.gkhy.safePlatform.emergency.rpc.api.model.dto.req.EmergencyExecuteNumRPCReq; |
| | | import com.gkhy.safePlatform.emergency.rpc.api.model.dto.req.EmergencyExecuteTimeRPCReq; |
| | |
| | | } |
| | | return respDTO; |
| | | } |
| | | @Override |
| | | public EmergencyExecuteLastTimeRespDTO getLastPracticeTimeByDeptIdAndTime(EmergencyDrillTimeQuery query) { |
| | | if(null == query.getDeptId()){ |
| | | throw new EmergencyException(EmergencyResultCodes.SUPPLIES_PARAM_NULL,"部门id不可为空"); |
| | | } |
| | | if(null == query.getYear()){ |
| | | throw new EmergencyException(EmergencyResultCodes.SUPPLIES_PARAM_NULL,"年份不可为空"); |
| | | } |
| | | //通过RPC获取部门相关数据 |
| | | DepInfoRPCRespDTO depInfoRPCRespDTO = getDepInfoByDepId(query.getDeptId()); |
| | | List<Long> idList = new ArrayList<>(); |
| | | idList.add(query.getDeptId()); |
| | | //开始时间结束时间 |
| | | String startTime; |
| | | String endTime; |
| | | if(null == query.getMonth()){//年 |
| | | startTime = TimeUtils.getYearFirst(query.getYear()); |
| | | endTime = TimeUtils.getYearLast(query.getYear()); |
| | | }else{//月 |
| | | startTime = TimeUtils.getMonthFirst(query.getYear(),query.getMonth()); |
| | | endTime = TimeUtils.getMonthLast(query.getYear(),query.getMonth()); |
| | | } |
| | | // 查询该部门最后一次演练时间 |
| | | String lastTime = emergencyDrillExecuteInfoService.getLastTimeByDeptIdsAndTime(idList,startTime,endTime); |
| | | //填充数据 |
| | | EmergencyExecuteLastTimeRespDTO respDTO = new EmergencyExecuteLastTimeRespDTO(); |
| | | respDTO.setDepId(depInfoRPCRespDTO.getDepId()); |
| | | respDTO.setDepLevel(depInfoRPCRespDTO.getDepLevel()); |
| | | respDTO.setYear(query.getYear()); |
| | | respDTO.setMonth(query.getMonth()); |
| | | respDTO.setLastPricticeTime(StringUtils.isBlank(lastTime) == true ? "" : lastTime); |
| | | return respDTO; |
| | | } |
| | | |
| | | @Override |
| | | public EmergencyExecuteLastTimeRespDTO getLastPracticeTimeByDeptIdsAndTime(EmergencyDrillTimeQuery query) { |
| | | if(null == query.getDeptId()){ |
| | | throw new EmergencyException(EmergencyResultCodes.SUPPLIES_PARAM_NULL,"部门id不可为空"); |
| | | } |
| | | if(null == query.getYear()){ |
| | | throw new EmergencyException(EmergencyResultCodes.SUPPLIES_PARAM_NULL,"年份不可为空"); |
| | | } |
| | | //通过RPC获取部门相关数据 |
| | | List<DepInfoRPCRespDTO> depInfoList = getDepListInfoByDepId(query.getDeptId()); |
| | | //过滤获取部门id |
| | | List<Long> deptIdList = depInfoList |
| | | .stream() |
| | | .map(dep -> dep.getDepId()) |
| | | .collect(Collectors.toList()); |
| | | //过滤出传入部门的信息 |
| | | List<DepInfoRPCRespDTO> selectDepList = depInfoList |
| | | .stream() |
| | | .filter(dep -> dep.getDepId().equals(query.getDeptId())) |
| | | .collect(Collectors.toList()); |
| | | //开始时间结束时间 |
| | | String startTime; |
| | | String endTime; |
| | | if(null == query.getMonth()){//年 |
| | | startTime = TimeUtils.getYearFirst(query.getYear()); |
| | | endTime = TimeUtils.getYearLast(query.getYear()); |
| | | }else{//月 |
| | | startTime = TimeUtils.getMonthFirst(query.getYear(),query.getMonth()); |
| | | endTime = TimeUtils.getMonthLast(query.getYear(),query.getMonth()); |
| | | } |
| | | // 查询该部门ids最后一次演练时间 |
| | | String lastTime = emergencyDrillExecuteInfoService.getLastTimeByDeptIdsAndTime(deptIdList,startTime,endTime); |
| | | |
| | | //填充数据 |
| | | EmergencyExecuteLastTimeRespDTO respDTO = new EmergencyExecuteLastTimeRespDTO(); |
| | | respDTO.setDepId(query.getDeptId()); |
| | | respDTO.setYear(query.getYear()); |
| | | respDTO.setMonth(query.getMonth()); |
| | | respDTO.setLastPricticeTime(StringUtils.isBlank(lastTime) == true ? "" : lastTime); |
| | | if(selectDepList.size()>0){ |
| | | respDTO.setDepLevel(selectDepList.get(0).getDepLevel()); |
| | | } |
| | | return respDTO; |
| | | } |
| | | /** |
| | | * 根据部门id和指定年份 统计演练数据 |
| | | * |
| | |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | } |