From 8d8489126e0cb185af15edb8573788bc40c9dd1b Mon Sep 17 00:00:00 2001
From: zhoushihao <zsh19950802@163.com>
Date: 星期二, 13 八月 2024 14:10:36 +0800
Subject: [PATCH] 1、进笼计算目标格子方法优化 2、fixbug:解决无钢化信息系统报错

---
 hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/service/BigStorageCageService.java                 |    2 
 hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/mapper/BigStorageCageMapper.java                   |    4 +-
 hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/service/impl/BigStorageCageServiceImpl.java        |    8 ++--
 hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/service/impl/BigStorageCageDetailsServiceImpl.java |   32 ++++++++--------
 hangzhoumesParent/moduleService/TemperingGlassModule/src/main/java/com/mes/job/TemperingTask.java                                            |    4 ++
 hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/resources/mapper/BigStorageCageMapper.xml                                  |   27 +++++++------
 6 files changed, 41 insertions(+), 36 deletions(-)

diff --git a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/mapper/BigStorageCageMapper.java b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/mapper/BigStorageCageMapper.java
index b6f1cbd..99d6bb8 100644
--- a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/mapper/BigStorageCageMapper.java
+++ b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/mapper/BigStorageCageMapper.java
@@ -17,6 +17,6 @@
 public interface BigStorageCageMapper extends MPJBaseMapper<BigStorageCage> {
 
     List<Integer> queryFreeDeviceByUsed(@Param(value = "thickness") double thickness);
-
-    List<Integer> queryFreeDeviceByNotUsed(@Param(value = "thickness") double thickness);
+//
+//    List<Integer> queryFreeDeviceByNotUsed(@Param(value = "thickness") double thickness);
 }
diff --git a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/service/BigStorageCageService.java b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/service/BigStorageCageService.java
index 9ba368b..14eb11a 100644
--- a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/service/BigStorageCageService.java
+++ b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/service/BigStorageCageService.java
@@ -34,5 +34,5 @@
 
     List<Integer> queryFreeDeviceByUsed(double thickness);
 
-    List<Integer> queryFreeDeviceByNotUsed(double thickness);
+//    List<Integer> queryFreeDeviceByNotUsed(double thickness);
 }
diff --git a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/service/impl/BigStorageCageDetailsServiceImpl.java b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/service/impl/BigStorageCageDetailsServiceImpl.java
index 2093b2c..ba71749 100644
--- a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/service/impl/BigStorageCageDetailsServiceImpl.java
+++ b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/service/impl/BigStorageCageDetailsServiceImpl.java
@@ -322,22 +322,22 @@
         }
 
         //鑾峰彇鐜荤拑鐨勫帤搴︼細閲嶆柊閫夌瀛愰渶瑕佹寜鐓х瀛愬彲鏀剧幓鐠冨帤搴﹁繘琛岄�夋嫨
-        List<Integer> deviceNotUsedList = bigStorageCageService.queryFreeDeviceByNotUsed(glassInfo.getThickness());
-        for (Integer item : deviceNotUsedList) {
-            bigStorageCage = bigStorageCageService.getOne(new LambdaQueryWrapper<BigStorageCage>()
-                    .eq(BigStorageCage::getRemainWidth, slotWidth)
-                    .eq(BigStorageCage::getEnableState, Const.SLOT_ON)
-                    .eq(BigStorageCage::getDeviceId, item)
-                    .last("limit 1"));
-            if (null != bigStorageCage) {
-                log.info("鎸夌収瀛樼鐜荤拑鏍煎瓙鏁板墿浣欐渶澶氬緱鏂瑰紡鑾峰彇淇℃伅鐗堝浘id:{},鏍煎瓙锛歿},鐜荤拑id锛歿}", glassInfo.getTemperingLayoutId(), bigStorageCage.getSlot(), glassInfo.getGlassId());
-                bigStorageDTO = new BigStorageDTO();
-                bigStorageDTO.setWidth(bigStorageCage.getRemainWidth());
-                bigStorageDTO.setSlot(bigStorageCage.getSlot());
-                bigStorageDTO.setDeviceId(bigStorageCage.getDeviceId());
-                return bigStorageDTO;
-            }
-        }
+//        List<Integer> deviceNotUsedList = bigStorageCageService.queryFreeDeviceByNotUsed(glassInfo.getThickness());
+//        for (Integer item : deviceNotUsedList) {
+//            bigStorageCage = bigStorageCageService.getOne(new LambdaQueryWrapper<BigStorageCage>()
+//                    .eq(BigStorageCage::getRemainWidth, slotWidth)
+//                    .eq(BigStorageCage::getEnableState, Const.SLOT_ON)
+//                    .eq(BigStorageCage::getDeviceId, item)
+//                    .last("limit 1"));
+//            if (null != bigStorageCage) {
+//                log.info("鎸夌収瀛樼鐜荤拑鏍煎瓙鏁板墿浣欐渶澶氬緱鏂瑰紡鑾峰彇淇℃伅鐗堝浘id:{},鏍煎瓙锛歿},鐜荤拑id锛歿}", glassInfo.getTemperingLayoutId(), bigStorageCage.getSlot(), glassInfo.getGlassId());
+//                bigStorageDTO = new BigStorageDTO();
+//                bigStorageDTO.setWidth(bigStorageCage.getRemainWidth());
+//                bigStorageDTO.setSlot(bigStorageCage.getSlot());
+//                bigStorageDTO.setDeviceId(bigStorageCage.getDeviceId());
+//                return bigStorageDTO;
+//            }
+//        }
         Assert.isTrue(null != bigStorageCage, "娌℃湁绌轰綑鐨勭瀛愬瓨鏀剧幓鐠�");
         return bigStorageDTO;
     }
diff --git a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/service/impl/BigStorageCageServiceImpl.java b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/service/impl/BigStorageCageServiceImpl.java
index a255625..7d4adc6 100644
--- a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/service/impl/BigStorageCageServiceImpl.java
+++ b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/service/impl/BigStorageCageServiceImpl.java
@@ -289,8 +289,8 @@
         return baseMapper.queryFreeDeviceByUsed(thickness);
     }
 
-    @Override
-    public List<Integer> queryFreeDeviceByNotUsed(double thickness) {
-        return baseMapper.queryFreeDeviceByNotUsed(thickness);
-    }
+//    @Override
+//    public List<Integer> queryFreeDeviceByNotUsed(double thickness) {
+//        return baseMapper.queryFreeDeviceByNotUsed(thickness);
+//    }
 }
diff --git a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/resources/mapper/BigStorageCageMapper.xml b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/resources/mapper/BigStorageCageMapper.xml
index d9b1ce4..11899a5 100644
--- a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/resources/mapper/BigStorageCageMapper.xml
+++ b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/resources/mapper/BigStorageCageMapper.xml
@@ -6,24 +6,25 @@
     <select id="queryFreeDeviceByUsed" resultType="java.lang.Integer">
         SELECT T.DEVICE_ID
         FROM BIG_STORAGE_CAGE T
-                 LEFT JOIN (SELECT * FROM BIG_STORAGE_CAGE_DETAILS WHERE STATE NOT IN (101, 200, 201)) T1
+                 LEFT JOIN (SELECT * FROM BIG_STORAGE_CAGE_DETAILS WHERE STATE NOT IN (101, 8, 9)) T1
                            ON T.SLOT = T1.SLOT
         WHERE T.MAX_THICKNESS >= #{thickness}
           AND T.ENABLE_STATE = 1
         GROUP BY T.DEVICE_ID
-        ORDER BY COUNT(DISTINCT T1.TEMPERING_LAYOUT_ID),
+        ORDER BY COUNT(DISTINCT T1.ENGINEER_ID) COUNT(DISTINCT T1.TEMPERING_LAYOUT_ID),
                  COUNT(DISTINCT T1.SLOT)
     </select>
 
-    <select id="queryFreeDeviceByNotUsed" resultType="java.lang.Integer">
-        SELECT T.DEVICE_ID
-        FROM BIG_STORAGE_CAGE T
-                 LEFT JOIN (SELECT * FROM BIG_STORAGE_CAGE_DETAILS WHERE STATE NOT IN (101, 200, 201)) T1
-                           ON T.SLOT = T1.SLOT
-        WHERE T.MAX_THICKNESS >= #{thickness}
-          AND T.ENABLE_STATE = 1
-        GROUP BY T.DEVICE_ID
-        ORDER BY COUNT(DISTINCT T1.TEMPERING_LAYOUT_ID),
-                 COUNT(DISTINCT T.SLOT) - COUNT(DISTINCT T1.SLOT) DESC
-    </select>
+    <!--    <select id="queryFreeDeviceByNotUsed" resultType="java.lang.Integer">-->
+    <!--        SELECT T.DEVICE_ID-->
+    <!--        FROM BIG_STORAGE_CAGE T-->
+    <!--                 LEFT JOIN (SELECT * FROM BIG_STORAGE_CAGE_DETAILS WHERE STATE NOT IN (101, 8, 9)) T1-->
+    <!--                           ON T.SLOT = T1.SLOT-->
+    <!--        WHERE T.MAX_THICKNESS >= #{thickness}-->
+    <!--          AND T.ENABLE_STATE = 1-->
+    <!--        GROUP BY T.DEVICE_ID-->
+    <!--        ORDER BY COUNT(DISTINCT T1.ENGINEER_ID)-->
+    <!--                 COUNT(DISTINCT T1.TEMPERING_LAYOUT_ID),-->
+    <!--                 COUNT(DISTINCT T.SLOT) - COUNT(DISTINCT T1.SLOT) DESC-->
+    <!--    </select>-->
 </mapper>
diff --git a/hangzhoumesParent/moduleService/TemperingGlassModule/src/main/java/com/mes/job/TemperingTask.java b/hangzhoumesParent/moduleService/TemperingGlassModule/src/main/java/com/mes/job/TemperingTask.java
index 763fe68..ac92054 100644
--- a/hangzhoumesParent/moduleService/TemperingGlassModule/src/main/java/com/mes/job/TemperingTask.java
+++ b/hangzhoumesParent/moduleService/TemperingGlassModule/src/main/java/com/mes/job/TemperingTask.java
@@ -60,6 +60,10 @@
         List<Object> temperRecordIdListObj = temporalRecordService.listObjs(new QueryWrapper<TemperingRecord>().select("distinct tempering_layout_id"));
 
         List<String> temperRecordIdList = temperRecordIdListObj.stream().map(String::valueOf).collect(Collectors.toList());
+        if (CollectionUtils.isEmpty(temperRecordIdList)) {
+            log.info("褰撳墠绯荤粺娌℃湁闇�瑕侀挗鍖栫殑鐜荤拑淇℃伅");
+            return;
+        }
         List<TemperingGlassInfo> list = temporaryGlassInfoService.list(new LambdaQueryWrapper<TemperingGlassInfo>()
                 .eq(TemperingGlassInfo::getState, Const.TEMPERING_START).notIn(TemperingGlassInfo::getTemperingLayoutId, temperRecordIdList));
         if (CollectionUtils.isEmpty(list)) {

--
Gitblit v1.8.0