From 77f5af7a1cd1a57804a6391f5e2c73e8ae10a531 Mon Sep 17 00:00:00 2001
From: zhoushihao <zsh19950802@163.com>
Date: 星期一, 03 三月 2025 23:32:37 +0800
Subject: [PATCH] 1、优化出片队列,避免930lisec出片玻璃顺序倒叙情况下,出片玻璃尺寸较大一车只能存放小于一对的数量造成玻璃顺序错乱问题

---
 hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/job/OPCPlcSlicecage.java |   48 ++++++++++++++++++++++++------------------------
 1 files changed, 24 insertions(+), 24 deletions(-)

diff --git a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/job/OPCPlcSlicecage.java b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/job/OPCPlcSlicecage.java
index 1fcdedf..97f4364 100644
--- a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/job/OPCPlcSlicecage.java
+++ b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/job/OPCPlcSlicecage.java
@@ -1,7 +1,6 @@
 package com.mes.job;
 
 import cn.hutool.json.JSONObject;
-import cn.smallbun.screw.core.util.CollectionUtils;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.kangaroohy.milo.model.ReadWriteEntity;
 import com.kangaroohy.milo.service.MiloService;
@@ -9,8 +8,9 @@
 import com.mes.bigstorage.service.BigStorageCageDetailsService;
 import com.mes.bigstorage.service.BigStorageCageService;
 import com.mes.bigstoragecagetask.entity.BigStorageCageTask;
+import com.mes.bigstoragecagetask.entity.BigStorageTaskVO;
 import com.mes.bigstoragecagetask.service.BigStorageCageTaskService;
-import com.mes.glassinfo.entity.GlassInfo;
+import com.mes.common.config.Const;
 import com.mes.glassinfo.service.GlassInfoService;
 import com.mes.temperingglass.entity.TemperingGlassInfo;
 import com.mes.temperingglass.service.TemperingGlassInfoService;
@@ -18,14 +18,10 @@
 import com.mes.utils.RedisUtil;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.beans.factory.annotation.Value;
 import org.springframework.scheduling.annotation.Scheduled;
 import org.springframework.stereotype.Component;
 
 import javax.annotation.Resource;
-import java.io.BufferedReader;
-import java.io.InputStreamReader;
-import java.net.Socket;
 import java.util.ArrayList;
 import java.util.List;
 import java.util.Map;
@@ -53,12 +49,6 @@
     @Autowired(required = false)
     MiloService miloService;
 
-    @Value("${mes.scan.ip}")
-    private String scanIp;
-
-    @Value("${mes.scan.port}")
-    private Integer scanPort;
-
     private JSONObject jsonObject = new JSONObject();
 
     public void queryDataSource1() throws Exception {
@@ -67,19 +57,26 @@
         carPostion.add(0.5);
         jsonObject.append("carPostion", carPostion);
         //鐣岄潰灞曠ず绗煎瓙淇℃伅
-        jsonObject.append("bigStorageCageInfos", bigStorageCageService.querybigStorageCageDetail());
+        jsonObject.append("bigStorageCageInfos", bigStorageCageDetailsService.querybigStorageCageDetail());
 
-        try{
+        try {
             //杩涚墖浠诲姟鏁版嵁
-            List<BigStorageCageTask> inTaskList = new ArrayList();
+            List<BigStorageTaskVO> inTaskList = new ArrayList();
             ReadWriteEntity fromOpcUa = miloService.readFromOpcUa("DLP1A.DLP1A.FROM1");
             for (int i = 1; i <= 6; i++) {
                 ReadWriteEntity requestWord = miloService.readFromOpcUa("DLP1A.DLP1A.DI" + i);
                 ReadWriteEntity targetSlotWord = miloService.readFromOpcUa("DLP1A.DLP1A.TO" + i);
                 ReadWriteEntity stateWord = miloService.readFromOpcUa("DLP1A.DLP1A.STATE" + i);
                 if (null != requestWord.getValue()) {
-                    BigStorageCageTask task = new BigStorageCageTask();
+                    BigStorageTaskVO task = new BigStorageTaskVO();
                     task.setGlassId(requestWord.getValue() + "");
+                    int isExistCount = bigStorageCageDetailsService.count(new LambdaQueryWrapper<BigStorageCageDetails>().in(BigStorageCageDetails::getGlassId, task.getGlassId())
+                            .in(BigStorageCageDetails::getState, Const.GLASS_STATE_IN_ALL_ZERO));
+                    if (isExistCount > 0) {
+                        task.setIsSame(1);
+                    } else {
+                        task.setIsSame(0);
+                    }
                     task.setStartSlot(Integer.parseInt(fromOpcUa.getValue() + ""));
                     task.setTargetSlot(Integer.parseInt(targetSlotWord.getValue() + ""));
                     task.setTaskState(Integer.parseInt(stateWord.getValue() + ""));
@@ -88,7 +85,10 @@
                 }
             }
             jsonObject.append("bigStorageCageDetailsFeedTask", inTaskList);
-
+        } catch (Exception e) {
+            //todo:涓嶅仛浠诲姟澶勭悊
+        }
+        try {
             //杩涚墖鑱旀満
             ReadWriteEntity inkageEntity = miloService.readFromOpcUa("DLP1A.DLP1A.mesControl");
             jsonObject.append("inkageEntity", inkageEntity.getValue());
@@ -104,14 +104,14 @@
             //鍑虹墖璇锋眰
             ReadWriteEntity outRequestEntity = miloService.readFromOpcUa("DLP1B.DLP1B.RequestMes");
             jsonObject.append("outRequestEntity", outRequestEntity.getValue());
-        }catch(Exception e){
+
+
+            //鍑虹墖浠诲姟鏁版嵁
+            List<BigStorageCageTask> outTaskList = bigStorageCageTaskService.queryTaskMessage("big_storage_cage_out_one_task");
+            jsonObject.append("bigStorageCageDetailsOutTask", outTaskList);
+        } catch (Exception e) {
             //todo:涓嶅仛浠诲姟澶勭悊
         }
-
-        //鍑虹墖浠诲姟鏁版嵁
-        List<BigStorageCageTask> outTaskList = bigStorageCageTaskService.queryTaskMessage("big_storage_cage_out_one_task");
-        jsonObject.append("bigStorageCageDetailsOutTask", outTaskList);
-
 
         //閽㈠寲寮�鍏�
         boolean temperingSwitch = false;
@@ -178,7 +178,7 @@
             //鏌ヨ浣跨敤鏁版嵁婧�1鏌ヨ鏁版嵁
             queryDataSource1();
             //鏌ヨ浣跨敤鏁版嵁婧�2鏌ヨ鏁版嵁
-            queryDataSource2();
+//            queryDataSource2();
 
             ArrayList<WebSocketServer> sendwServer = WebSocketServer.sessionMap.get("slicecage");
             if (sendwServer != null) {

--
Gitblit v1.8.0