From 555ff988376b8650455547d0b6ff7f12f4ae2c63 Mon Sep 17 00:00:00 2001
From: luoyisheng <yangdongji@argo-ai.cn>
Date: 星期三, 26 三月 2025 17:27:02 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 medicalWaste-system/src/main/java/com/sinata/system/service/impl/MwMicroEquipmentRecordServiceImpl.java |   48 +++++++++++++++++++++++-------------------------
 1 files changed, 23 insertions(+), 25 deletions(-)

diff --git a/medicalWaste-system/src/main/java/com/sinata/system/service/impl/MwMicroEquipmentRecordServiceImpl.java b/medicalWaste-system/src/main/java/com/sinata/system/service/impl/MwMicroEquipmentRecordServiceImpl.java
index 9a71886..2383c4d 100644
--- a/medicalWaste-system/src/main/java/com/sinata/system/service/impl/MwMicroEquipmentRecordServiceImpl.java
+++ b/medicalWaste-system/src/main/java/com/sinata/system/service/impl/MwMicroEquipmentRecordServiceImpl.java
@@ -214,7 +214,7 @@
         vo.setLegend(wasteTypeList.stream().map(SysDictDataVO::getDictLabel).collect(Collectors.toList()));
         vo.getLegend().add("小计");
         String treeCode = sysDepartmentService.getTreeCodeByDepartmentId(query.getDepartmentId());
-        List<SysDictData> medicalWasteTypeList = sysDictDataService.lambdaQuery().eq(SysDictData::getDictType, "medical_waste_type").list();
+        List<SysDictData> medicalWasteTypeList = sysDictDataService.lambdaQuery().eq(SysDictData::getDictType, "medical_waste_type").orderByDesc(SysDictData::getDictCode).list();
 
         List<MwMicroEquipmentStaticsVO> staticsData = baseMapper.getStaticsData(query, treeCode);
         SimpleDateFormat sdf = new SimpleDateFormat(DateUtils.YYYY_MM_DD_HH_MM_SS);
@@ -230,32 +230,30 @@
                 break;
         }
         List<String> dateList = DateUtils.getDayBetween(query.getStartTime(), query.getEndTime(), query.getDateType());
-        if (CollUtils.isNotEmpty(staticsData)) {
-            List<DepartmentReportItemVO> result = new ArrayList<>();
-            for (String date : dateList) {
-                DepartmentReportItemVO departmentReportItemVO = new DepartmentReportItemVO();
-                departmentReportItemVO.setName(date);
-                departmentReportItemVO.setData(new ArrayList<>());
-                SimpleDateFormat finalSdf = sdf;
-                BigDecimal totalWeight = BigDecimal.ZERO;
-                BigDecimal totalCount = BigDecimal.ZERO;
-                for (SysDictData sysDictData : medicalWasteTypeList) {
-                    BigDecimal weight = staticsData.stream().filter(e -> e.getWasteType().equals(sysDictData.getDictCode())
-                            && finalSdf.format(e.getUseTime()).equals(date)
-                    ).map(MwMicroEquipmentStaticsVO::getWeight).reduce(BigDecimal.ZERO, BigDecimal::add).setScale(2, RoundingMode.HALF_UP);
-                    long count = staticsData.stream().filter(e -> e.getWasteType().equals(sysDictData.getDictCode())
-                            && finalSdf.format(e.getUseTime()).equals(date)).count();
-                    departmentReportItemVO.getData().add(weight);
-                    departmentReportItemVO.getData().add(BigDecimal.valueOf(count));
-                    totalWeight = totalWeight.add(weight);
-                    totalCount = totalCount.add(BigDecimal.valueOf(count));
-                }
-                departmentReportItemVO.getData().add(totalWeight);
-                departmentReportItemVO.getData().add(totalCount);
-                result.add(departmentReportItemVO);
+        List<DepartmentReportItemVO> result = new ArrayList<>();
+        for (String date : dateList) {
+            DepartmentReportItemVO departmentReportItemVO = new DepartmentReportItemVO();
+            departmentReportItemVO.setName(date);
+            departmentReportItemVO.setData(new ArrayList<>());
+            SimpleDateFormat finalSdf = sdf;
+            BigDecimal totalWeight = BigDecimal.ZERO;
+            BigDecimal totalCount = BigDecimal.ZERO;
+            for (SysDictData sysDictData : medicalWasteTypeList) {
+                BigDecimal weight = staticsData.stream().filter(e -> e.getWasteType().equals(sysDictData.getDictCode())
+                        && finalSdf.format(e.getUseTime()).equals(date)
+                ).map(MwMicroEquipmentStaticsVO::getWeight).reduce(BigDecimal.ZERO, BigDecimal::add).setScale(2, RoundingMode.HALF_UP);
+                long count = staticsData.stream().filter(e -> e.getWasteType().equals(sysDictData.getDictCode())
+                        && finalSdf.format(e.getUseTime()).equals(date)).count();
+                departmentReportItemVO.getData().add(weight);
+                departmentReportItemVO.getData().add(BigDecimal.valueOf(count));
+                totalWeight = totalWeight.add(weight);
+                totalCount = totalCount.add(BigDecimal.valueOf(count));
             }
-            vo.setList(result);
+            departmentReportItemVO.getData().add(totalWeight);
+            departmentReportItemVO.getData().add(totalCount);
+            result.add(departmentReportItemVO);
         }
+        vo.setList(result);
         return vo;
     }
 

--
Gitblit v1.7.1