mitao
2025-01-03 9ca1188c5a951ea2f4b94876098798c8cd64784c
medicalWaste-system/src/main/java/com/sinata/system/service/biz/StaticsService.java
@@ -28,6 +28,7 @@
import com.sinata.system.service.MwDisposalRecordService;
import com.sinata.system.service.MwWarningRecordService;
import com.sinata.system.service.SysDepartmentService;
import com.sinata.system.utils.ImageToBase64;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;
@@ -241,7 +242,7 @@
                        departmentReportItemVO.setName(transformVO.getHospitalName());
                        departmentReportItemVO.setData(new ArrayList<>());
                        departmentReportItemVO.setDriverName(transformVO.getDriverName());
                        departmentReportItemVO.setHospitalSignature(transformVO.getHospitalSignature());
                        departmentReportItemVO.setHospitalSignature(ImageToBase64.convertImageToBase64(transformVO.getHospitalSignature()));
                        departmentReportItemVO.setHandoverTime(transformVO.getCheckoutTime());
                        for (SysDictData sysDictData : wasteTypeList) {
                            BigDecimal count = BigDecimal.valueOf(transformVO.getCollectRecordList().stream().filter(item -> item.getWasteType().equals(sysDictData.getDictCode())).count());
@@ -370,23 +371,17 @@
                SimpleDateFormat finalSdf = sdf;
                //接收
                for (SysDictData sysDictData : wasteTypeList) {
                    departmentReportItemVO.getData().add(BigDecimal.ZERO);
                    if (CollUtils.isNotEmpty(receivedList)) {
                        BigDecimal totalWeight = receivedList.stream().filter(item -> item.getWasteType().equals(sysDictData.getDictCode()) &&
                                        finalSdf.format(item.getReceiveTime()).equals(date)).map(MwDisposalRecordReportVO::getWeight)
                                .reduce(BigDecimal.ZERO, BigDecimal::add);
                        departmentReportItemVO.getData().add(totalWeight);
                    }
                    BigDecimal totalWeight = receivedList.stream().filter(item -> item.getWasteType().equals(sysDictData.getDictCode()) &&
                                    finalSdf.format(item.getReceiveTime()).equals(date)).map(MwDisposalRecordReportVO::getWeight)
                            .reduce(BigDecimal.ZERO, BigDecimal::add);
                    departmentReportItemVO.getData().add(totalWeight);
                }
                //处置
                for (SysDictData sysDictData : wasteTypeList) {
                    departmentReportItemVO.getData().add(BigDecimal.ZERO);
                    if (CollUtils.isNotEmpty(disposaledList)) {
                        BigDecimal totalWeight = disposaledList.stream().filter(item -> item.getWasteType().equals(sysDictData.getDictCode()) &&
                                        finalSdf.format(item.getReceiveTime()).equals(date)).map(MwDisposalRecordReportVO::getWeight)
                                .reduce(BigDecimal.ZERO, BigDecimal::add);
                        departmentReportItemVO.getData().add(totalWeight);
                    }
                    BigDecimal totalWeight = disposaledList.stream().filter(item -> item.getWasteType().equals(sysDictData.getDictCode()) &&
                                    finalSdf.format(item.getReceiveTime()).equals(date)).map(MwDisposalRecordReportVO::getWeight)
                            .reduce(BigDecimal.ZERO, BigDecimal::add);
                    departmentReportItemVO.getData().add(totalWeight);
                }
                list.add(departmentReportItemVO);
            }