From 1ca3da2cdeee4597a7782fd0d7f5386108b9eb11 Mon Sep 17 00:00:00 2001
From: ZengTao <2773468879@qq.com>
Date: 星期三, 18 六月 2025 14:02:37 +0800
Subject: [PATCH] 中空模块配置多线程

---
 hangzhoumesParent/moduleService/hollowGlassModule/src/main/java/com/mes/hollow/service/impl/HollowGlassRelationInfoServiceImpl.java |   47 ++++++++++++++++++++++++++++++++++++-----------
 1 files changed, 36 insertions(+), 11 deletions(-)

diff --git a/hangzhoumesParent/moduleService/hollowGlassModule/src/main/java/com/mes/hollow/service/impl/HollowGlassRelationInfoServiceImpl.java b/hangzhoumesParent/moduleService/hollowGlassModule/src/main/java/com/mes/hollow/service/impl/HollowGlassRelationInfoServiceImpl.java
index dbc4e08..09316c3 100644
--- a/hangzhoumesParent/moduleService/hollowGlassModule/src/main/java/com/mes/hollow/service/impl/HollowGlassRelationInfoServiceImpl.java
+++ b/hangzhoumesParent/moduleService/hollowGlassModule/src/main/java/com/mes/hollow/service/impl/HollowGlassRelationInfoServiceImpl.java
@@ -32,6 +32,7 @@
 import java.util.Comparator;
 import java.util.List;
 import java.util.Map;
+import java.util.concurrent.atomic.AtomicInteger;
 import java.util.regex.Matcher;
 import java.util.regex.Pattern;
 import java.util.stream.Collectors;
@@ -250,7 +251,8 @@
         //鏂瑰紡浜岋細灏嗙幓鐠冩寜娴佺▼鍗°�佸昂瀵搞�佺増鍥俱�佺増搴� 锛屼紭鍏堝皢鏍煎瓙鍏ㄩ儴琛ュ叏鍚� 渚濇璁$畻鍚庨潰鐨勬牸瀛愬彿
 
         Integer slotWidth = sysConfigService.queryConfigValue(ConstSysConfig.HOLLOW_SLOT_WIDTH);
-        Integer glassGap = sysConfigService.queryConfigValue(ConstSysConfig.HOLLOW_GLASS_GAP);
+//        Integer glassGap = sysConfigService.queryConfigValue(ConstSysConfig.HOLLOW_GLASS_GAP);
+        Integer glassGap = getGlassGapByThickness(tempGlassList.get(0).getThickness());
         Integer outCarMaxSize = sysConfigService.queryConfigValue(ConstSysConfig.HOLLOW_OUT_CAR_SIZE);
         List<HollowGlassRelationInfo> relationInfoList = new ArrayList();
         List<List<HollowGlassRelationInfo>> tempHollowList = new ArrayList<>();
@@ -312,25 +314,33 @@
         }
         Map<String, List<HollowBigStorageCageDetails>> listMap = detailsList.stream().collect(Collectors.groupingBy(HollowBigStorageCageDetails::getFlowCardId));
         List<HollowAllFlowCardVO> resultList = new ArrayList<>();
+        AtomicInteger pairTotalCount = new AtomicInteger();
         listMap.forEach((e, v) -> {
             HollowAllFlowCardVO hollowAllFlowCardVO = new HollowAllFlowCardVO();
             HollowBigStorageCageDetails cageDetails = v.get(0);
             //鎸夌収娴佺▼鍗¤幏鍙栧搴旂殑浜у搧鍚嶇О
-            OrderDetailsDTO orderDetails = baseMapper.queryProductNameByFlowCardId(cageDetails.getFlowCardId());
+            OrderDetailsDTO orderDetails = baseMapper.queryProductNameByFlowCardId(cageDetails.getFlowCardId(), query.getProductName(), query.getCustomerName());
             if (null != orderDetails) {
                 BeanUtils.copyProperties(orderDetails, hollowAllFlowCardVO);
+                hollowAllFlowCardVO.setFlowCardId(e);
+
+                if (cageDetails.getHollowSequence() == 0) {
+                    hollowAllFlowCardVO.setIsThroughSlot(Boolean.TRUE);
+                } else {
+                    hollowAllFlowCardVO.setIsThroughSlot(Boolean.FALSE);
+                }
+                List<FlowCardGlassInfoDTO> flowCardInfoList = hollowBigStorageCageDetailsService.hollowIsAll(e, cageDetails.getTotalLayer(), Boolean.FALSE);
+                hollowAllFlowCardVO.setFlowCardGlassInfoDTOList(flowCardInfoList);
+                pairTotalCount.addAndGet(flowCardInfoList.get(0).getPairCount());
+
+                resultList.add(hollowAllFlowCardVO);
             }
-            hollowAllFlowCardVO.setFlowCardId(e);
-            if (cageDetails.getHollowSequence() == 0) {
-                hollowAllFlowCardVO.setIsThroughSlot(Boolean.TRUE);
-            } else {
-                hollowAllFlowCardVO.setIsThroughSlot(Boolean.FALSE);
-            }
-            List<FlowCardGlassInfoDTO> flowCardInfoList = hollowBigStorageCageDetailsService.hollowIsAll(e, cageDetails.getTotalLayer(), Boolean.FALSE);
-            hollowAllFlowCardVO.setFlowCardGlassInfoDTOList(flowCardInfoList);
-            resultList.add(hollowAllFlowCardVO);
         });
+        if (CollectionUtil.isEmpty(resultList)) {
+            return new ArrayList<>();
+        }
         sortFlowCardIdList(resultList);
+        resultList.get(0).setPairTotalCount(pairTotalCount.get());
         return resultList;
     }
 
@@ -392,6 +402,21 @@
     public int queryLayerByFlowCardId(String flowCardId) {
         return baseMapper.queryLayerByFlowCardId(flowCardId);
     }
+
+    @Override
+    public Integer getGlassGapByThickness(Double thickness) {
+        int sysKey = 0;
+        if (thickness >= 12) {
+            sysKey = ConstSysConfig.HOLLOW_GLASS_GAP_12;
+        } else if (thickness == 8) {
+            sysKey = ConstSysConfig.HOLLOW_GLASS_GAP_8;
+        } else if (thickness == 10) {
+            sysKey = ConstSysConfig.HOLLOW_GLASS_GAP_10;
+        } else {
+            sysKey = ConstSysConfig.HOLLOW_GLASS_GAP;
+        }
+        return sysConfigService.queryConfigValue(sysKey);
+    }
     //    @Override
 //    public List<LackDetailsDTO> queryLackByFlowCard(String flowCardId) {
 //        List<LackDetailsDTO> lackDetailsList = this.baseMapper.queryLackByFlowCard(flowCardId);

--
Gitblit v1.8.0