| | |
| | | import java.text.SimpleDateFormat; |
| | | import java.util.ArrayList; |
| | | import java.util.List; |
| | | import java.util.Objects; |
| | | import java.util.stream.Collectors; |
| | | |
| | | /** |
| | |
| | | */ |
| | | public DepartmentReportVO hospitalReport(HospitalReportQuery query) { |
| | | DepartmentReportVO vo = new DepartmentReportVO(); |
| | | SysDepartment department = sysDepartmentService.getById(query.getDepartmentId()); |
| | | if (Objects.nonNull(department)) { |
| | | vo.setDepartmentName(department.getDepartmentName()); |
| | | } |
| | | List<SysDictDataVO> wasteTypeList = sysDictDataService.medicalWasteTypeList(); |
| | | |
| | | if (CollUtils.isEmpty(wasteTypeList)) { |
| | |
| | | totalCount = totalCount.add(currentCount); |
| | | totalWeight = totalWeight.add(weight); |
| | | } |
| | | itemVO.getData().add(totalCount); |
| | | itemVO.getData().add(totalWeight); |
| | | //查询预警记录判断是否超时 |
| | | if (query.getDateType().equals(1)) { |
| | | itemVO.setOverTimeFlag("否"); |
| | | List<Long> collectIdList = collectRecordList.stream().filter(e -> finalSdf.format(e.getCollectTime()).equals(date)).map(MwCollectRecord::getId).collect(Collectors.toList()); |
| | | if (CollUtils.isNotEmpty(collectIdList)) { |
| | | List<MwWarningRecord> warningRecordList = mwWarningRecordService.lambdaQuery().in(MwWarningRecord::getWarningTargetId, collectIdList).list(); |
| | | if (CollUtils.isNotEmpty(warningRecordList)) { |
| | | itemVO.setOverTimeFlag("是"); |
| | | } |
| | | } |
| | | } |
| | | list.add(itemVO); |
| | |
| | | public DepartmentReportVO transformList(TransformQuery query) { |
| | | DepartmentReportVO vo = new DepartmentReportVO(); |
| | | SysDepartment department = sysDepartmentService.getById(query.getDepartmentId()); |
| | | if (Objects.nonNull(department)) { |
| | | vo.setDepartmentName(department.getDepartmentName()); |
| | | } |
| | | SysDepartment region = sysDepartmentService.getDepartmentByParentId(department.getParentId()); |
| | | List<SysDepartment> hospitalList = sysDepartmentService.lambdaQuery().likeRight(SysDepartment::getTreeCode, region.getTreeCode()).eq(SysDepartment::getOrgType, DepartmentEnum.MEDICAL_INSTITUTION.getCode()).list(); |
| | | if (CollUtils.isNotEmpty(hospitalList)) { |
| | |
| | | */ |
| | | public DepartmentReportVO disposalReport(DisposalReportQuery query) { |
| | | DepartmentReportVO vo = new DepartmentReportVO(); |
| | | SysDepartment department = sysDepartmentService.getById(query.getDepartmentId()); |
| | | if (Objects.nonNull(department)) { |
| | | vo.setDepartmentName(department.getDepartmentName()); |
| | | } |
| | | //已接收 |
| | | List<MwDisposalRecordReportVO> receivedList = mwDisposalRecordService.disposalReceiveReport(query); |
| | | //已处置 |
| | |
| | | */ |
| | | public DepartmentReportVO regulationReport(DisposalReportQuery query) { |
| | | DepartmentReportVO vo = new DepartmentReportVO(); |
| | | SysDepartment department = sysDepartmentService.getById(query.getDepartmentId()); |
| | | if (Objects.nonNull(department)) { |
| | | vo.setDepartmentName(department.getDepartmentName()); |
| | | } |
| | | //医废产生量 |
| | | List<MwCollectRecordVO> collectRecordList = mwCollectRecordService.getRegulationReportList(query); |
| | | //医废转移量 |
| | |
| | | for (String date : dateList) { |
| | | DepartmentReportItemVO departmentReportItemVO = new DepartmentReportItemVO(); |
| | | departmentReportItemVO.setName(date); |
| | | departmentReportItemVO.setData(new ArrayList<>()); |
| | | SimpleDateFormat finalSdf = sdf; |
| | | for (SysDictData sysDictData : wasteTypeList) { |
| | | BigDecimal weight = collectRecordList.stream().filter(e -> e.getWasteType().equals(sysDictData.getDictCode()) && |