From 7e6836f99b10cde552d2f403009bf66082535d94 Mon Sep 17 00:00:00 2001
From: gongchunyi <deslre0381@gmail.com>
Date: 星期四, 02 四月 2026 11:58:33 +0800
Subject: [PATCH] fix: 生产统计看板能耗统计单位

---
 src/main/java/com/ruoyi/home/service/impl/HomeServiceImpl.java |   41 +++++++++++++++++++++++++++++++++++++++--
 1 files changed, 39 insertions(+), 2 deletions(-)

diff --git a/src/main/java/com/ruoyi/home/service/impl/HomeServiceImpl.java b/src/main/java/com/ruoyi/home/service/impl/HomeServiceImpl.java
index 79d9102..1df045f 100644
--- a/src/main/java/com/ruoyi/home/service/impl/HomeServiceImpl.java
+++ b/src/main/java/com/ruoyi/home/service/impl/HomeServiceImpl.java
@@ -58,8 +58,10 @@
 import com.ruoyi.staff.mapper.StaffOnJobMapper;
 import com.ruoyi.staff.pojo.StaffOnJob;
 import com.ruoyi.stock.mapper.StockInventoryMapper;
-import com.ruoyi.energy.mapper.EnergyConsumptionDetailMapper;
+import com.ruoyi.energy.mapper.EnergyMapper;
+import com.ruoyi.energy.pojo.Energy;
 import com.ruoyi.energy.dto.EnergyCostDto;
+import com.ruoyi.energy.mapper.EnergyConsumptionDetailMapper;
 import com.ruoyi.energy.vo.EnergyStatisticsVo;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -158,6 +160,10 @@
 
     @Autowired
     private SalesDeliveryMapper salesDeliveryMapper;
+
+    @Autowired
+    private EnergyMapper energyMapper;
+
 
     @Override
     public HomeBusinessDto business() {
@@ -3405,6 +3411,13 @@
         }
 
         if (!CollectionUtils.isEmpty(costDtos)) {
+            // 鑾峰彇鍗曚綅
+            List<Energy> energies = energyMapper.selectList(Wrappers.<Energy>lambdaQuery()
+                    .in(Energy::getEnergyTyep, Arrays.asList("姘�", "鐢�", "姘�")));
+            String waterUnit = energies.stream().filter(e -> "姘�".equals(e.getEnergyTyep())).map(Energy::getUnit).findFirst().orElse("");
+            String electricityUnit = energies.stream().filter(e -> "鐢�".equals(e.getEnergyTyep())).map(Energy::getUnit).findFirst().orElse("");
+            String steamUnit = energies.stream().filter(e -> "姘�".equals(e.getEnergyTyep())).map(Energy::getUnit).findFirst().orElse("");
+
             for (EnergyCostDto costDto : costDtos) {
                 String dateStr = costDto.getMeterReadingDate();
                 String label = "";
@@ -3427,6 +3440,9 @@
                     dayDto.setWater(water);
                     dayDto.setElectricity(electricity);
                     dayDto.setSteam(steam);
+                    dayDto.setWaterUnit(waterUnit);
+                    dayDto.setElectricityUnit(electricityUnit);
+                    dayDto.setSteamUnit(steamUnit);
                 }
             }
         }
@@ -3530,7 +3546,7 @@
         if (CollectionUtils.isEmpty(mainList)) return new ArrayList<>();
 
         List<Long> mainIds = mainList.stream().map(ProductionProductMain::getId).collect(Collectors.toList());
-        
+
         // 鑾峰彇鎶曞叆鏄庣粏
         List<ProductionProductInput> allInputs = productionProductInputService.list(Wrappers.<ProductionProductInput>lambdaQuery()
                 .in(ProductionProductInput::getProductMainId, mainIds));
@@ -3584,4 +3600,25 @@
 
         return result;
     }
+
+    @Override
+    public Map<String, Long> manage() {
+        Map<String, Long> map = new HashMap<>();
+        //鐢熶骇璁㈠崟鎬绘暟
+        Long total = productOrderMapper.selectCount(new QueryWrapper<ProductOrder>().ne("status", 4));
+        map.put("total", total);
+        //宸插畬鎴愯鍗曟暟
+        Long completed = productOrderMapper.selectCount(new QueryWrapper<ProductOrder>().eq("status", 3));
+        map.put("completed", completed);
+        //鏈畬鎴愯鍗曟暟
+        Long uncompleted = productOrderMapper.selectCount(new QueryWrapper<ProductOrder>().eq("status", 1));
+        map.put("uncompleted", uncompleted);
+        //閮ㄥ垎瀹屾垚璁㈠崟鏁�
+        Long partialCompleted = productOrderMapper.selectCount(new QueryWrapper<ProductOrder>().eq("status", 2));
+        map.put("partialCompleted", partialCompleted);
+        //鏉ユ枡妫�鎬绘暟
+        Long materialInspection = qualityInspectMapper.selectCount(new QueryWrapper<QualityInspect>().eq("inspect_type", 0));
+        map.put("materialInspection", materialInspection);
+        return map;
+    }
 }

--
Gitblit v1.9.3