| | |
| | | |
| | | import com.gkhy.safePlatform.account.rpc.apimodel.AccountDepartmentService; |
| | | import com.gkhy.safePlatform.account.rpc.apimodel.model.resp.DepInfoRPCRespDTO; |
| | | import com.gkhy.safePlatform.commons.enums.E; |
| | | import com.gkhy.safePlatform.commons.enums.ResultCodes; |
| | | import com.gkhy.safePlatform.commons.exception.BusinessException; |
| | | 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.incidentManage.entity.*; |
| | | import com.gkhy.safePlatform.incidentManage.enums.AccidentReportGradeEnum; |
| | | import com.gkhy.safePlatform.incidentManage.enums.AccidentReportLevelEnum; |
| | | import com.gkhy.safePlatform.incidentManage.enums.AccidentResultCodes; |
| | | import com.gkhy.safePlatform.incidentManage.enums.DepartmentLevelEnum; |
| | |
| | | import org.springframework.util.CollectionUtils; |
| | | |
| | | import java.math.BigDecimal; |
| | | import java.time.LocalDate; |
| | | import java.util.*; |
| | | import java.util.stream.Collectors; |
| | | |
| | |
| | | } |
| | | return respDTOList; |
| | | } |
| | | |
| | | /** |
| | | * 统计数据 |
| | | */ |
| | | @Override |
| | | public List<AccidentStatisticDTO> getCountByAccidentGrade(Integer year, Integer month) { |
| | | if(null == year && null != month){ |
| | | throw new BusinessException(ResultCodes.CLIENT_PARAM_ERROR,"年份不可为空"); |
| | | } |
| | | if(null == year && null == month) { |
| | | year = LocalDate.now().getYear(); |
| | | } |
| | | List<AccidentStatisticDTO> accidentStatisticDTOList = new ArrayList<>(); |
| | | List<AccidentStatisticCountDO> countByAccidentGrades = accidentReportInfoService.getCountByAccidentGrade(year, month); |
| | | for (AccidentReportGradeEnum gradeEnum : AccidentReportGradeEnum.values()) { |
| | | AccidentStatisticDTO accidentStatisticDTO = new AccidentStatisticDTO(); |
| | | accidentStatisticDTO.setAccidentGrade(gradeEnum.getValue()); |
| | | List<AccidentStatisticCountDO> collect = countByAccidentGrades.stream().filter(c -> c.getAccidentGrade().equals(gradeEnum.getCode())).collect(Collectors.toList()); |
| | | accidentStatisticDTO.setCount(collect.size()>0 ? collect.get(0).getCount() : 0); |
| | | accidentStatisticDTOList.add(accidentStatisticDTO); |
| | | } |
| | | return accidentStatisticDTOList; |
| | | } |
| | | |
| | | /** |
| | | * 统计数据 |
| | | */ |
| | | @Override |
| | | public AccidentCountByGradeRespDTO getSpiAccidentCountByAccidentGrade(Integer year, Integer month) { |
| | | |
| | | List<AccidentStatisticCountDO> countByAccidentGrades = accidentReportInfoService.getCountByAccidentGrade(year, month); |
| | | AccidentCountByGradeRespDTO accidentCountByGradeRespDTO = new AccidentCountByGradeRespDTO(); |
| | | int total = 0; |
| | | for (AccidentStatisticCountDO countByAccidentGrade : countByAccidentGrades) { |
| | | if(countByAccidentGrade.getAccidentGrade().equals(AccidentReportGradeEnum.GRADE_ONE.getCode())){ |
| | | accidentCountByGradeRespDTO.setAccidentOne(countByAccidentGrade.getCount()); |
| | | } |
| | | if(countByAccidentGrade.getAccidentGrade().equals(AccidentReportGradeEnum.GRADE_TWO.getCode())){ |
| | | accidentCountByGradeRespDTO.setAccidentTwo(countByAccidentGrade.getCount()); |
| | | } |
| | | if(countByAccidentGrade.getAccidentGrade().equals(AccidentReportGradeEnum.GRADE_THREE.getCode())){ |
| | | accidentCountByGradeRespDTO.setAccidentThree(countByAccidentGrade.getCount()); |
| | | } |
| | | if(countByAccidentGrade.getAccidentGrade().equals(AccidentReportGradeEnum.GRADE_FOUR.getCode())){ |
| | | accidentCountByGradeRespDTO.setAccidentFour(countByAccidentGrade.getCount()); |
| | | } |
| | | total += countByAccidentGrade.getCount(); |
| | | } |
| | | |
| | | return accidentCountByGradeRespDTO; |
| | | } |
| | | } |