From 09312a47be9adb12715b73eddc9ac467cda3a361 Mon Sep 17 00:00:00 2001
From: ZengTao <2773468879@qq.com>
Date: 星期四, 18 七月 2024 14:16:48 +0800
Subject: [PATCH] Merge branch 'master' of http://10.153.19.25:10101/r/HangZhouMes

---
 hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/resources/mapper/BigStorageCageFeedTaskMapper.xml |    1 
 hangzhoumesParent/moduleService/TemperingGlassModule/src/main/resources/json/PlcTemperingGlass.json                 |  132 ++++++++++++++++++++++++++++++++++++++++++++
 hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/job/PlcStorageCageTask.java          |   15 +++--
 hangzhoumesParent/common/servicebase/src/main/java/com/mes/common/config/Const.java                                 |    3 
 4 files changed, 144 insertions(+), 7 deletions(-)

diff --git a/hangzhoumesParent/common/servicebase/src/main/java/com/mes/common/config/Const.java b/hangzhoumesParent/common/servicebase/src/main/java/com/mes/common/config/Const.java
index 5423c6e..f8a310c 100644
--- a/hangzhoumesParent/common/servicebase/src/main/java/com/mes/common/config/Const.java
+++ b/hangzhoumesParent/common/servicebase/src/main/java/com/mes/common/config/Const.java
@@ -21,6 +21,7 @@
      * A09鍑虹墖鐩爣浣嶇疆  d02鍗ц浆绔�    2001
      * A10鍑虹墖鐩爣浣嶇疆  d05鍗ц浆绔�    2002
      */
+    public static final Integer OUT_TARGET_POSITION_ZERO = 0;
     public static final Integer A09_OUT_TARGET_POSITION = 2001;
     public static final Integer A10_OUT_TARGET_POSITION = 2002;
 
@@ -29,7 +30,7 @@
      * A09鍑虹墖鐩爣浣嶇疆  d02鍗ц浆绔� 閽㈠寲鍑虹墖    3001
      * A10鍑虹墖鐩爣浣嶇疆  d05鍗ц浆绔� 浜哄伐鍑虹墖    3002
      */
-    public static final Integer TEMPERING_OUT_TARGET_POSITION = 3001;
+    public static final Integer TEMPERING_OUT_TARGET_POSITION = 3002;
     public static final Integer ARTIFICIAL_OUT_TARGET_POSITION = 3002;
 
     /**
diff --git a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/job/PlcStorageCageTask.java b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/job/PlcStorageCageTask.java
index 5430e36..12ebb88 100644
--- a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/job/PlcStorageCageTask.java
+++ b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/job/PlcStorageCageTask.java
@@ -145,6 +145,7 @@
         }
         LambdaQueryWrapper<BigStorageCageFeedTask> wrapper = new LambdaQueryWrapper<BigStorageCageFeedTask>()
                 .eq(BigStorageCageFeedTask::getTaskType, Const.BIG_STORAGE_IN_RUN)
+                .and(e -> e.isNull(BigStorageCageFeedTask::getTargetSlot).or().eq(BigStorageCageFeedTask::getTargetSlot, Const.OUT_TARGET_POSITION_ZERO))
                 .eq(BigStorageCageFeedTask::getTaskState, Const.BIG_STORAGE_IN_UP);
         //鑾峰彇鍙互鍚姩鍗ц浆绔嬬殑浠诲姟绾胯矾
         List<BigStorageCageFeedTask> feedTaskList = bigStorageCageFeedTaskService.list(wrapper);
@@ -169,7 +170,7 @@
 //            log.info("涓ゆ潯绾块兘瀛樺湪杩涚墖浠诲姟锛岀粨鏉熶换鍔�");
 //            return;
 //        }
-        //鑾峰彇涓ゆ潯绾垮崸杞珛鏄惁鏈夌幓鐠冿紝涓斾换鍔$姸鎬侀兘涓�2
+        //鑾峰彇涓ゆ潯绾垮崸杞珛鏄惁鏈夌幓鐠冿紝涓斾换鍔$姸鎬佷负1/2
         List<Integer> lineList = bigStorageCageFeedTaskService.querySitToUpGlass();
         if (CollectionUtils.isEmpty(lineList)) {
             Date endDate = new Date();
@@ -439,7 +440,8 @@
      */
     public Integer getStartLine() {
         List<BigStorageCageFeedTask> taskList = bigStorageCageFeedTaskService.list(new LambdaQueryWrapper<BigStorageCageFeedTask>()
-                .inSql(BigStorageCageFeedTask::getId, "select min(id) from big_storage_cage_feed_task where task_state = 2 group by line"));
+                .inSql(BigStorageCageFeedTask::getId, "select min(id) from big_storage_cage_feed_task where task_state = 2" +
+                        "and (target_slot = 0 or target_slot is null) group by line"));
         Assert.isFalse(CollectionUtils.isEmpty(taskList), "鍗ц浆绔嬩袱鏉$嚎閮芥病鏈夌幓鐠冭繘鐗囦换鍔�");
         Map<String, Integer> taskMap = taskList.stream().collect(Collectors.toMap(BigStorageCageFeedTask::getGlassId,
                 BigStorageCageFeedTask::getLine));
@@ -458,6 +460,7 @@
         //1銆佽幏鍙栦换鍔¤〃涓殑鎵�鏈夌幓鐠冿紙鎸囧畾绾胯矾涓斿凡缁忚繘鍗ц浆绔嬪畬鎴愶級
         List<BigStorageCageFeedTask> taskList = bigStorageCageFeedTaskService.list(new LambdaQueryWrapper<BigStorageCageFeedTask>()
                 .eq(BigStorageCageFeedTask::getLine, line)
+                .and(e -> e.isNull(BigStorageCageFeedTask::getTargetSlot).or().eq(BigStorageCageFeedTask::getTargetSlot, Const.OUT_TARGET_POSITION_ZERO))
                 .in(BigStorageCageFeedTask::getTaskState, Const.BIG_STORAGE_IN_UP_ALL)
                 .orderByAsc(BigStorageCageFeedTask::getId));
         //2銆佸幓绗煎瓙鍐呮煡鎵炬槸鍚﹀彲浠ョ户缁瓨鏀剧殑绗煎瓙
@@ -524,7 +527,7 @@
         //鎵撹溅鍓╀綑灏哄
         Integer remainWidth = carWidth;
         for (T e : list) {
-            if (bigStorageCageOutTaskList.size() > outCarMaxSize || e.getWidth() > remainWidth) {
+            if (bigStorageCageOutTaskList.size() >= outCarMaxSize || e.getWidth() > remainWidth) {
                 break;
             }
             remainWidth = remainWidth - (int) e.getWidth() - glassGap;
@@ -555,14 +558,14 @@
     /**
      * 鏇存柊绗煎瓙鍐呮牸瀛愮殑鍓╀綑灏哄
      *
-     * @param list
-     * @param taskGlassIds
+     * @param list         绗煎唴鍙互鍑虹鐨勭幓鐠冧俊鎭�
+     * @param taskGlassIds 鏈浠诲姟鍑哄幓鐨勭幓鐠僫ds
      * @param <T>
      */
     public <T extends BigStorageCageBaseInfo> void updateSlotRemain(List<T> list, List<String> taskGlassIds) {
         //鑾峰彇闇�瑕佸嚭鍘伙紙鍖呮嫭寰呭嚭鍘荤殑锛夌殑鎵�鏈夌幓鐠冩牸瀛愬彿
         List<Integer> slotList = list.stream().map(T::getSlot).distinct().collect(Collectors.toList());
-        //鑾峰彇寰呭嚭鍘荤殑鐜荤拑淇℃伅锛堢瓑涓嬭溅鍑哄幓鐨勭幓鐠冿級
+        //鑾峰彇寰呭嚭鍘荤殑鐜荤拑淇℃伅锛堢瓑寰呮湰娆′换鍔$粨鏉熷悗涓嬭溅鍑哄幓鐨勭幓鐠冿級
         Map<Integer, Double> slotRemainMap = list.stream().filter(e -> !taskGlassIds.contains(e.getGlassId()))
                 .collect(Collectors.groupingBy(T::getSlot, Collectors.summingDouble(item -> item.getWidth() + glassGap)));
         if (CollectionUtils.isNotEmpty(slotRemainMap)) {
diff --git a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/resources/mapper/BigStorageCageFeedTaskMapper.xml b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/resources/mapper/BigStorageCageFeedTaskMapper.xml
index 0a32e28..c4affcd 100644
--- a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/resources/mapper/BigStorageCageFeedTaskMapper.xml
+++ b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/resources/mapper/BigStorageCageFeedTaskMapper.xml
@@ -34,6 +34,7 @@
                             END MAX_LENGTH
                  FROM BIG_STORAGE_CAGE_FEED_TASK
                  WHERE LINE = #{line}
+                   AND (target_slot = 0 or target_slot is null)
                    AND TASK_STATE IN (1, 2)
              ) T
     </select>
diff --git a/hangzhoumesParent/moduleService/TemperingGlassModule/src/main/resources/json/PlcTemperingGlass.json b/hangzhoumesParent/moduleService/TemperingGlassModule/src/main/resources/json/PlcTemperingGlass.json
new file mode 100644
index 0000000..3abe9a6
--- /dev/null
+++ b/hangzhoumesParent/moduleService/TemperingGlassModule/src/main/resources/json/PlcTemperingGlass.json
@@ -0,0 +1,132 @@
+{
+    "plcAddressBegin": "DB88.0",
+    "plcAddressLenght": "58",
+    "dataType": "word",
+    "parameteInfor": [
+        {
+            "codeId": "confirmationWord",
+            "addressIndex": "0",
+            "addressLenght": "2"
+        },
+        {
+            "codeId": "temperingLayoutId",
+            "addressIndex": "2",
+            "addressLenght": "2"
+        },
+        {
+            "codeId": "filmsid",
+            "addressIndex": "4",
+            "addressLenght": "2"
+        },
+        {
+            "codeId": "temperingType",
+            "addressIndex": "6",
+            "addressLenght": "2"
+        },
+        {
+            "codeId": "thickness",
+            "addressIndex": "8",
+            "addressLenght": "2"
+        },
+        {
+            "codeId": "loadingRate",
+            "addressIndex": "10",
+            "addressLenght": "2"
+        },
+        {
+            "codeId": "areaDifference",
+            "addressIndex": "12",
+            "addressLenght": "2"
+        },
+        {
+            "codeId": "state",
+            "addressIndex": "22",
+            "addressLenght": "2"
+        },
+        {
+            "codeId": "deviceState",
+            "addressIndex": "24",
+            "addressLenght": "2"
+        },
+        {
+            "codeId": "resultState",
+            "addressIndex": "26",
+            "addressLenght": "2"
+        },
+        {
+            "codeId": "loadSpeed",
+            "addressIndex": "28",
+            "addressLenght": "2"
+        },
+        {
+            "codeId": "downSpeed",
+            "addressIndex": "30",
+            "addressLenght": "2"
+        },
+        {
+            "codeId": "load1",
+            "addressIndex": "32",
+            "addressLenght": "2"
+        },
+        {
+            "codeId": "heat1",
+            "addressIndex": "34",
+            "addressLenght": "2"
+        },
+        {
+            "codeId": "heat2",
+            "addressIndex": "36",
+            "addressLenght": "2"
+        },
+        {
+            "codeId": "cool1",
+            "addressIndex": "38",
+            "addressLenght": "2"
+        },
+        {
+            "codeId": "cool2",
+            "addressIndex": "40",
+            "addressLenght": "2"
+        },
+        {
+            "codeId": "downId",
+            "addressIndex": "42",
+            "addressLenght": "2"
+        },
+        {
+            "codeId": "productionTime",
+            "addressIndex": "44",
+            "addressLenght": "2"
+        },
+        {
+            "codeId": "heatEnergy",
+            "addressIndex": "46",
+            "addressLenght": "2"
+        },
+        {
+            "codeId": "coolEnergy",
+            "addressIndex": "48",
+            "addressLenght": "2"
+        },
+        {
+            "codeId": "temperatureUp1",
+            "addressIndex": "50",
+            "addressLenght": "2"
+        },
+        {
+            "codeId": "temperatureDown1",
+            "addressIndex": "52",
+            "addressLenght": "2"
+        },
+        {
+            "codeId": "temperatureUp2",
+            "addressIndex": "54",
+            "addressLenght": "2"
+        },
+        {
+            "codeId": "temperatureDown2",
+            "addressIndex": "56",
+            "addressLenght": "2"
+        }
+    ]
+}
\ No newline at end of file

--
Gitblit v1.8.0