From a8b7758ca2b0641482ff709bbee8c172b8c5d7bb Mon Sep 17 00:00:00 2001
From: Lius <Lius2225@163.com>
Date: 星期五, 08 十二月 2023 17:00:01 +0800
Subject: [PATCH] 利用率报表

---
 lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/MdcEfficiencyReportServiceImpl.java |   60 ++++++++++++++++++++++++++++++++++++++++++++++++------------
 1 files changed, 48 insertions(+), 12 deletions(-)

diff --git a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/MdcEfficiencyReportServiceImpl.java b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/MdcEfficiencyReportServiceImpl.java
index 95e1d70..6a44ed3 100644
--- a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/MdcEfficiencyReportServiceImpl.java
+++ b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/MdcEfficiencyReportServiceImpl.java
@@ -19,7 +19,6 @@
 
 import javax.annotation.Resource;
 import java.math.BigDecimal;
-import java.text.Collator;
 import java.time.LocalDate;
 import java.time.format.DateTimeFormatter;
 import java.time.temporal.ChronoUnit;
@@ -97,17 +96,26 @@
         if (vo.getEquipmentIdList() == null || vo.getEquipmentIdList().isEmpty()) {
             result.setMdcEfficiencyList(listDtos);
         } else {
+            if (StringUtils.isNotEmpty(vo.getEquipmentType())) {
+                List<String> equipmentList = mdcEquipmentService.listEquipmentId(vo.getEquipmentType(), vo.getEquipmentIdList());
+                if (equipmentList != null && !equipmentList.isEmpty()) {
+                    vo.setEquipmentIdList(equipmentList);
+                } else {
+                    result.setMdcEfficiencyList(listDtos);
+                    return result;
+                }
+            }
             // 鏌ヨ鍒╃敤鐜囨暟鎹�
             List<MdcEfficiencyDto> efficiencyList = mdcEfficiencyReportMapper.efficiencyList(vo);
             // 鍒╃敤鐜囩瓑绾�
             List<MdcUtilizationRate> mdcUtilizationRateList = mdcUtilizationRateService.listByType("lyl");
-
+            result.setUtilizationRateList(mdcUtilizationRateList);
             // 灏佽缁撴灉
             if ("2".equals(vo.getTypeTree())) {
                 // 閮ㄩ棬灞傜骇
                 List<MdcEquDepDto> equipmentList = mdcEquipmentService.findEquDepList(vo.getEquipmentIdList());
                 // 鏌ヨ鎵�鏈夐儴闂ㄤ俊鎭�
-                List<SysDepart> departList = sysDepartService.list(new LambdaQueryWrapper<SysDepart>().ne(SysDepart::getDelFlag, CommonConstant.DEL_FLAG_1.toString()).orderByAsc(SysDepart::getDepartName));
+                List<SysDepart> departList = sysDepartService.list(new LambdaQueryWrapper<SysDepart>().ne(SysDepart::getDelFlag, CommonConstant.DEL_FLAG_1.toString()).orderByAsc(SysDepart::getDepartOrder));
 
                 for (MdcEquDepDto mdcEquDepDto : equipmentList) {
                     MdcEfficiencyListDto mdcEfficiencyListDto = new MdcEfficiencyListDto();
@@ -169,7 +177,7 @@
                 // 浜х嚎灞傜骇
                 List<MdcEquProDto> equipmentList = mdcEquipmentService.findEquProList(vo.getEquipmentIdList());
                 // 鏌ヨ鎵�鏈変骇绾夸俊鎭�
-                List<MdcProduction> productionList = mdcProductionService.list(new LambdaQueryWrapper<MdcProduction>().ne(MdcProduction::getDelFlag, CommonConstant.DEL_FLAG_1.toString()));
+                List<MdcProduction> productionList = mdcProductionService.list(new LambdaQueryWrapper<MdcProduction>().ne(MdcProduction::getDelFlag, CommonConstant.DEL_FLAG_1.toString()).orderByAsc(MdcProduction::getProductionOrder));
 
                 for (MdcEquProDto mdcEquProDto : equipmentList) {
                     MdcEfficiencyListDto mdcEfficiencyListDto = new MdcEfficiencyListDto();
@@ -227,10 +235,20 @@
                     listDtos.add(mdcEfficiencyListDto);
                 }
             }
-            listDtos.sort(((o1, o2) -> Collator.getInstance(Locale.TRADITIONAL_CHINESE).compare(o1.getLevel3(), o2.getLevel3())));
+            //listDtos.sort(((o1, o2) -> Collator.getInstance(Locale.TRADITIONAL_CHINESE).compare(o1.getLevel3(), o2.getLevel3())));
             result.setMdcEfficiencyList(listDtos);
         }
 
+/*        // 娣诲姞鍚堣鍊煎拰骞冲潎鍊�
+        result.getDates().add("骞冲潎鍊�");
+        MdcEfficiencyListDto sum = new MdcEfficiencyListDto();
+        sum.setLevel1("鍚堣鍊�");
+        sum.setLevel2("鍚堣鍊�");
+        sum.setLevel3("鍚堣鍊�");
+        sum.setEquipmentId("鍚堣鍊�");
+        sum.setEquipmentName("鍚堣鍊�");
+        sum.setEquipmentType("鍚堣鍊�");
+        result.getMdcEfficiencyList().add(sum);*/
         return result;
     }
 
@@ -277,6 +295,15 @@
         if (vo.getEquipmentIdList() == null || vo.getEquipmentIdList().isEmpty()) {
             result.setMdcEfficiencyList(listDtos);
         } else {
+            if (StringUtils.isNotEmpty(vo.getEquipmentType())) {
+                List<String> equipmentList = mdcEquipmentService.listEquipmentId(vo.getEquipmentType(), vo.getEquipmentIdList());
+                if (equipmentList != null && !equipmentList.isEmpty()) {
+                    vo.setEquipmentIdList(equipmentList);
+                } else {
+                    result.setMdcEfficiencyList(listDtos);
+                    return result;
+                }
+            }
             // 鏌ヨ鍒╃敤鐜囨暟鎹�
             List<MdcEfficiencyDto> efficiencyList = mdcEfficiencyReportMapper.efficiencyPOList(vo);
             // 鍒╃敤鐜囩瓑绾�
@@ -287,7 +314,7 @@
                 // 閮ㄩ棬灞傜骇
                 List<MdcEquDepDto> equipmentList = mdcEquipmentService.findEquDepList(vo.getEquipmentIdList());
                 // 鏌ヨ鎵�鏈夐儴闂ㄤ俊鎭�
-                List<SysDepart> departList = sysDepartService.list(new LambdaQueryWrapper<SysDepart>().ne(SysDepart::getDelFlag, CommonConstant.DEL_FLAG_1.toString()).orderByAsc(SysDepart::getDepartName));
+                List<SysDepart> departList = sysDepartService.list(new LambdaQueryWrapper<SysDepart>().ne(SysDepart::getDelFlag, CommonConstant.DEL_FLAG_1.toString()).orderByAsc(SysDepart::getDepartOrder));
 
                 for (MdcEquDepDto mdcEquDepDto : equipmentList) {
                     MdcEfficiencyListDto mdcEfficiencyListDto = new MdcEfficiencyListDto();
@@ -349,7 +376,7 @@
                 // 浜х嚎灞傜骇
                 List<MdcEquProDto> equipmentList = mdcEquipmentService.findEquProList(vo.getEquipmentIdList());
                 // 鏌ヨ鎵�鏈変骇绾夸俊鎭�
-                List<MdcProduction> productionList = mdcProductionService.list(new LambdaQueryWrapper<MdcProduction>().ne(MdcProduction::getDelFlag, CommonConstant.DEL_FLAG_1.toString()));
+                List<MdcProduction> productionList = mdcProductionService.list(new LambdaQueryWrapper<MdcProduction>().ne(MdcProduction::getDelFlag, CommonConstant.DEL_FLAG_1.toString()).orderByAsc(MdcProduction::getProductionOrder));
 
                 for (MdcEquProDto mdcEquProDto : equipmentList) {
                     MdcEfficiencyListDto mdcEfficiencyListDto = new MdcEfficiencyListDto();
@@ -407,7 +434,7 @@
                     listDtos.add(mdcEfficiencyListDto);
                 }
             }
-            listDtos.sort(((o1, o2) -> Collator.getInstance(Locale.TRADITIONAL_CHINESE).compare(o1.getLevel3(), o2.getLevel3())));
+//            listDtos.sort(((o1, o2) -> Collator.getInstance(Locale.TRADITIONAL_CHINESE).compare(o1.getLevel3(), o2.getLevel3())));
             result.setMdcEfficiencyList(listDtos);
         }
 
@@ -457,6 +484,15 @@
         if (vo.getEquipmentIdList() == null || vo.getEquipmentIdList().isEmpty()) {
             result.setMdcEfficiencyList(listDtos);
         } else {
+            if (StringUtils.isNotEmpty(vo.getEquipmentType())) {
+                List<String> equipmentList = mdcEquipmentService.listEquipmentId(vo.getEquipmentType(), vo.getEquipmentIdList());
+                if (equipmentList != null && !equipmentList.isEmpty()) {
+                    vo.setEquipmentIdList(equipmentList);
+                } else {
+                    result.setMdcEfficiencyList(listDtos);
+                    return result;
+                }
+            }
             // 鐝鍒╃敤鐜囩瓑绾�
             List<MdcUtilizationRate> mdcUtilizationRateList = mdcUtilizationRateService.listByType("bclyl");
             // 鐝鍒╃敤鐜囨暟鎹�
@@ -467,7 +503,7 @@
                 // 閮ㄩ棬灞傜骇
                 List<MdcEquDepDto> equipmentList = mdcEquipmentService.findEquDepList(vo.getEquipmentIdList());
                 // 鏌ヨ鎵�鏈夐儴闂ㄤ俊鎭�
-                List<SysDepart> departList = sysDepartService.list(new LambdaQueryWrapper<SysDepart>().ne(SysDepart::getDelFlag, CommonConstant.DEL_FLAG_1.toString()).orderByAsc(SysDepart::getDepartName));
+                List<SysDepart> departList = sysDepartService.list(new LambdaQueryWrapper<SysDepart>().ne(SysDepart::getDelFlag, CommonConstant.DEL_FLAG_1.toString()).orderByAsc(SysDepart::getDepartOrder));
                 // 鐝鍚嶇О鏄剧ず澶勭悊
                 String shiftSubName = "";
                 if (StringUtils.isBlank(vo.getShiftId())) {
@@ -550,7 +586,7 @@
                 // 浜х嚎灞傜骇
                 List<MdcEquProDto> equipmentList = mdcEquipmentService.findEquProList(vo.getEquipmentIdList());
                 // 鏌ヨ鎵�鏈変骇绾夸俊鎭�
-                List<MdcProduction> productionList = mdcProductionService.list(new LambdaQueryWrapper<MdcProduction>().ne(MdcProduction::getDelFlag, CommonConstant.DEL_FLAG_1.toString()));
+                List<MdcProduction> productionList = mdcProductionService.list(new LambdaQueryWrapper<MdcProduction>().ne(MdcProduction::getDelFlag, CommonConstant.DEL_FLAG_1.toString()).orderByAsc(MdcProduction::getProductionOrder));
 
                 // 鐝鍚嶇О鏄剧ず澶勭悊
                 String shiftSubName = "";
@@ -630,7 +666,7 @@
                     listDtos.add(mdcEfficiencyShiftListDto);
                 }
             }
-            listDtos.sort(((o1, o2) -> Collator.getInstance(Locale.TRADITIONAL_CHINESE).compare(o1.getLevel3(), o2.getLevel3())));
+//            listDtos.sort(((o1, o2) -> Collator.getInstance(Locale.TRADITIONAL_CHINESE).compare(o1.getLevel3(), o2.getLevel3())));
             result.setMdcEfficiencyList(listDtos);
         }
         return result;
@@ -795,7 +831,7 @@
             }
         } else if (StringUtils.isNotEmpty(vo.getEquipmentId())) {
             // 鍗曞彴璁惧淇℃伅
-            vo.setEquipmentIdList(Collections.singletonList(vo.getEquipmentId()));
+            vo.setEquipmentIdList(Arrays.asList(vo.getEquipmentId().split(",")));
         } else {
             // 鏌ヨ鐢ㄦ埛鎷ユ湁鐨勬墍鏈夎澶囦俊鎭�
             if ("2".equals(vo.getTypeTree())) {

--
Gitblit v1.9.3