From 81eae83295642387de38a97fdc5a35f485307587 Mon Sep 17 00:00:00 2001
From: Lius <Lius2225@163.com>
Date: 星期四, 07 十一月 2024 22:20:11 +0800
Subject: [PATCH] license

---
 lxzn-module-mdc/src/main/java/org/jeecg/modules/screen/service/impl/MdcLargeScreenServiceImpl.java |   22 +++++++++++++++-------
 1 files changed, 15 insertions(+), 7 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 76d8f2a..50c8bc1 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
@@ -18,6 +18,7 @@
 import java.time.LocalDate;
 import java.util.ArrayList;
 import java.util.List;
+import java.util.stream.Collectors;
 
 /**
  * @author Lius
@@ -61,7 +62,7 @@
         BigDecimal processCount = mdcLargeScreenMapper.findYesterdayProcessCount(yesterday);
         BigDecimal utilizationRate = BigDecimal.ZERO;
         if (equipmentCount != null && processCount != null) {
-            utilizationRate = processCount.divide(new BigDecimal("86400").multiply(equipmentCount), 0, RoundingMode.HALF_UP).multiply(new BigDecimal("100")).setScale(2, RoundingMode.HALF_UP);
+            utilizationRate = processCount.divide(new BigDecimal("86400").multiply(equipmentCount), 4, RoundingMode.HALF_UP).multiply(new BigDecimal("100")).setScale(0, RoundingMode.HALF_UP);
         }
         yesterdayOverviewDto.setUtilizationRate(utilizationRate);
         return yesterdayOverviewDto;
@@ -93,7 +94,9 @@
                 if (mdcProductDayschedule.getCompletionCount() != 0) {
                     todayProductionPassRateDto.setPassRate(new BigDecimal(mdcProductDayschedule.getQualifiedCount()).divide(new BigDecimal(mdcProductDayschedule.getCompletionCount()), 0, RoundingMode.HALF_UP).multiply(new BigDecimal("100")).setScale(2, RoundingMode.HALF_UP));
                 }
-                result.add(todayProductionPassRateDto);
+                if (!(todayProductionPassRateDto.getPassRate().compareTo(BigDecimal.ZERO) == 0)) {
+                    result.add(todayProductionPassRateDto);
+                }
             }
         }
         return result;
@@ -106,7 +109,8 @@
      */
     @Override
     public List<ClazzCompletionCountDto> todayClazzCompletionCount() {
-        return mdcLargeScreenMapper.todayClazzCompletionCount(today);
+        List<ClazzCompletionCountDto> result = mdcLargeScreenMapper.todayClazzCompletionCount(today);
+        return result.stream().filter(clazzCompletionCountDto -> clazzCompletionCountDto.getCompletionCount() != 0).collect(Collectors.toList());
     }
 
     /**
@@ -123,9 +127,11 @@
                 EquipmentRateDto equipmentRateDto = new EquipmentRateDto();
                 equipmentRateDto.setEquipmentId(mdcEfficiencyDto.getEquipmentId());
                 equipmentRateDto.setEquipmentName(mdcEfficiencyDto.getEquipmentName());
-                equipmentRateDto.setOpenRate(mdcEfficiencyDto.getOpenRate().setScale(2, RoundingMode.HALF_UP));
-                equipmentRateDto.setUtilizationRate(mdcEfficiencyDto.getUtilizationRate().setScale(2, RoundingMode.HALF_UP));
-                result.add(equipmentRateDto);
+                equipmentRateDto.setOpenRate(mdcEfficiencyDto.getOpenRate().multiply(new BigDecimal("100")).setScale(2, RoundingMode.HALF_UP));
+                equipmentRateDto.setUtilizationRate(mdcEfficiencyDto.getUtilizationRate().multiply(new BigDecimal("100")).setScale(2, RoundingMode.HALF_UP));
+                if (!(equipmentRateDto.getOpenRate().compareTo(BigDecimal.ZERO) == 0) && !(equipmentRateDto.getUtilizationRate().compareTo(BigDecimal.ZERO) == 0)) {
+                    result.add(equipmentRateDto);
+                }
             }
         }
         return result;
@@ -147,7 +153,9 @@
                 meu.setDate(new StringBuilder(mdcEfficiencyDto.getTheDate().substring(4, 8)).insert(2, "-").toString());
                 BigDecimal equipmentCount = mdcLargeScreenMapper.findEquipmentCount(yesterday);
                 meu.setUtilizationRate(mdcEfficiencyDto.getProcessLong().divide(equipmentCount.multiply(new BigDecimal("86400")), 4, RoundingMode.HALF_UP).multiply(new BigDecimal("100")).setScale(2, RoundingMode.HALF_UP));
-                result.add(meu);
+                if (!(meu.getUtilizationRate().compareTo(BigDecimal.ZERO) == 0)) {
+                    result.add(meu);
+                }
             }
         }
         return result;

--
Gitblit v1.9.3