From 572466e8ebaa67f1809a97ecf912d30e8802fd98 Mon Sep 17 00:00:00 2001
From: Lius <Lius2225@163.com>
Date: 星期一, 28 四月 2025 14:18:39 +0800
Subject: [PATCH] update

---
 lxzn-module-mdc/src/main/java/org/jeecg/modules/screen/service/impl/MdcLargeScreenServiceImpl.java |   55 +++++++++++++++++++++++++++++++------------------------
 1 files changed, 31 insertions(+), 24 deletions(-)

diff --git a/lxzn-module-mdc/src/main/java/org/jeecg/modules/screen/service/impl/MdcLargeScreenServiceImpl.java b/lxzn-module-mdc/src/main/java/org/jeecg/modules/screen/service/impl/MdcLargeScreenServiceImpl.java
index 89c26e7..0930b96 100644
--- a/lxzn-module-mdc/src/main/java/org/jeecg/modules/screen/service/impl/MdcLargeScreenServiceImpl.java
+++ b/lxzn-module-mdc/src/main/java/org/jeecg/modules/screen/service/impl/MdcLargeScreenServiceImpl.java
@@ -4,13 +4,11 @@
 import org.jeecg.common.constant.CommonConstant;
 import org.jeecg.common.system.vo.DictModel;
 import org.jeecg.modules.mdc.entity.MdcEquipmentMonitor;
+import org.jeecg.modules.mdc.service.IEquipmentAlarmService;
 import org.jeecg.modules.mdc.service.IMdcEquipmentService;
 import org.jeecg.modules.mdc.service.IMdcEquipmentStatisticalInfoService;
 import org.jeecg.modules.mdc.util.DateUtils;
-import org.jeecg.modules.screen.dto.EquipmentStatusOverview;
-import org.jeecg.modules.screen.dto.UtilizationDayDto;
-import org.jeecg.modules.screen.dto.UtilizationRate;
-import org.jeecg.modules.screen.dto.UtilizationRateDto;
+import org.jeecg.modules.screen.dto.*;
 import org.jeecg.modules.screen.service.MdcLargeScreenService;
 import org.jeecg.modules.system.entity.MdcProduction;
 import org.jeecg.modules.system.service.IMdcProductionService;
@@ -43,6 +41,9 @@
     @Resource
     private IMdcEquipmentStatisticalInfoService mdcEquipmentStatisticalInfoService;
 
+    @Resource
+    private IEquipmentAlarmService equipmentAlarmService;
+
     /**
      * 璁惧鐘舵�佹儏鍐�
      *
@@ -64,7 +65,7 @@
                                 equipmentStatusOverview.setWaitCount(equipmentStatusOverview.getWaitCount() + 1);
                                 break;
                             case 3:
-                                equipmentStatusOverview.setRunCount(equipmentStatusOverview.getRunCount());
+                                equipmentStatusOverview.setRunCount(equipmentStatusOverview.getRunCount() + 1);
                                 break;
                             case 22:
                                 equipmentStatusOverview.setErrorCount(equipmentStatusOverview.getErrorCount() + 1);
@@ -140,9 +141,7 @@
         Map<String, Object> result = new HashMap<>();
 
         // 鑾峰彇瀛愮敓浜у垪琛�
-        List<MdcProduction> mdcProductionList = mdcProductionService.list(
-                new LambdaQueryWrapper<MdcProduction>().eq(MdcProduction::getParentId, productionId)
-        );
+        List<MdcProduction> mdcProductionList = mdcProductionService.list(new LambdaQueryWrapper<MdcProduction>().eq(MdcProduction::getParentId, productionId));
 
         if (mdcProductionList == null || mdcProductionList.isEmpty()) {
             return result;
@@ -151,8 +150,7 @@
         List<String> dateList = DateUtils.getNearWeek();
         result.put("dateList", dateList);
         // 璁$畻姣忎釜宸ユ鐨勫埄鐢ㄧ巼
-        List<UtilizationRateDto> utilizationMonthDtoList = new ArrayList<>();
-        for (MdcProduction mdcProduction : mdcProductionList) {
+        List<UtilizationRateDto> utilizationMonthDtoList = mdcProductionList.stream().map(mdcProduction -> {
             UtilizationRateDto utilizationRateDto = new UtilizationRateDto();
             utilizationRateDto.setProductionId(mdcProduction.getId());
             utilizationRateDto.setProductionName(mdcProduction.getProductionName());
@@ -160,14 +158,13 @@
                     .map(date -> {
                         UtilizationRate utilizationMonth = new UtilizationRate();
                         utilizationMonth.setDate(date);
-                        BigDecimal utilizationRate = mdcEquipmentStatisticalInfoService.computeUtilizationWeek(productionId, date.replaceAll("-", ""));
+                        BigDecimal utilizationRate = mdcEquipmentStatisticalInfoService.computeUtilizationWeek(mdcProduction.getId(), date.replaceAll("-", ""));
                         utilizationMonth.setUtilizationRate(utilizationRate);
                         return utilizationMonth;
-                    })
-                    .collect(Collectors.toList());
-            utilizationRateDto.setUtilizationMonthList(utilizationRates);
-            utilizationMonthDtoList.add(utilizationRateDto);
-        }
+                    }).collect(Collectors.toList());
+            utilizationRateDto.setUtilizationRateList(utilizationRates);
+            return utilizationRateDto;
+        }).collect(Collectors.toList());
         //璁$畻鎬诲巶鐨勫埄鐢ㄧ巼
         UtilizationRateDto utilizationRateDto = new UtilizationRateDto();
         utilizationRateDto.setProductionName("鎬诲巶");
@@ -180,7 +177,7 @@
                     return utilizationMonth;
                 })
                 .collect(Collectors.toList());
-        utilizationRateDto.setUtilizationMonthList(utilizationRates);
+        utilizationRateDto.setUtilizationRateList(utilizationRates);
         utilizationMonthDtoList.add(utilizationRateDto);
         result.put("dataList", utilizationMonthDtoList);
         return result;
@@ -207,16 +204,26 @@
         result.put("productionList", productionList);
 
         String date = LocalDate.now().minusDays(1).toString().replaceAll("-", "");
-        List<UtilizationDayDto> utilizationDayDtos = new ArrayList<>();
-        for (MdcProduction mdcProduction : mdcProductionList) {
+        List<UtilizationDayDto> utilizationDayDtos = mdcProductionList.stream().map(mdcProduction -> {
             UtilizationDayDto utilizationDayDto = new UtilizationDayDto();
             utilizationDayDto.setProductionName(mdcProduction.getProductionName());
-            BigDecimal utilizationRate = mdcEquipmentStatisticalInfoService.computeUtilizationWeekTotal(mdcProduction.getId(), date);
+            BigDecimal utilizationRate = mdcEquipmentStatisticalInfoService.computeUtilizationWeek(mdcProduction.getId(), date);
             utilizationDayDto.setUtilizationRate(utilizationRate);
-            utilizationDayDtos.add(utilizationDayDto);
-        }
+            return utilizationDayDto;
+        }).collect(Collectors.toList());
         result.put("dataList", utilizationDayDtos);
         return result;
+    }
+
+    /**
+     * 璁惧鎶ヨ淇℃伅
+     *
+     * @param productionId
+     * @return
+     */
+    @Override
+    public List<AlarmInfoDto> getAlarmInfo(String productionId) {
+        return equipmentAlarmService.getAlarmInfo(productionId);
     }
 
     /**
@@ -228,7 +235,7 @@
         utilizationMonthDto.setProductionName(mdcProduction.getProductionName());
 
         List<UtilizationRate> utilizationMonthList = calculateUtilizationRates(mdcProduction.getId(), dateLists);
-        utilizationMonthDto.setUtilizationMonthList(utilizationMonthList);
+        utilizationMonthDto.setUtilizationRateList(utilizationMonthList);
 
         return utilizationMonthDto;
     }
@@ -241,7 +248,7 @@
         utilizationMonthDto.setProductionName("鎬诲巶");
 
         List<UtilizationRate> utilizationMonthList = calculateUtilizationRatesTotal(productionId, dateLists);
-        utilizationMonthDto.setUtilizationMonthList(utilizationMonthList);
+        utilizationMonthDto.setUtilizationRateList(utilizationMonthList);
 
         return utilizationMonthDto;
     }

--
Gitblit v1.9.3