From b4ff04d7dd22f0e48bf386cd422e885aef08fed7 Mon Sep 17 00:00:00 2001
From: ZengTao <2773468879@qq.com>
Date: 星期四, 22 五月 2025 15:03:10 +0800
Subject: [PATCH] OPC通讯修改为S7通讯

---
 hangzhoumesParent/moduleService/hollowGlassModule/src/main/java/com/mes/job/PushMessageToIndex.java |  113 +++++++++++++++++++++++++++++++++++++++++++++++---------
 1 files changed, 94 insertions(+), 19 deletions(-)

diff --git a/hangzhoumesParent/moduleService/hollowGlassModule/src/main/java/com/mes/job/PushMessageToIndex.java b/hangzhoumesParent/moduleService/hollowGlassModule/src/main/java/com/mes/job/PushMessageToIndex.java
index 3b8520f..8bccc41 100644
--- a/hangzhoumesParent/moduleService/hollowGlassModule/src/main/java/com/mes/job/PushMessageToIndex.java
+++ b/hangzhoumesParent/moduleService/hollowGlassModule/src/main/java/com/mes/job/PushMessageToIndex.java
@@ -3,6 +3,7 @@
 import cn.hutool.core.collection.CollectionUtil;
 import cn.hutool.json.JSONObject;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.github.xingshuangs.iot.protocol.s7.serializer.S7Serializer;
 import com.kangaroohy.milo.model.ReadWriteEntity;
 import com.kangaroohy.milo.service.MiloService;
 import com.mes.bigstoragecagetask.entity.BigStorageCageTask;
@@ -19,10 +20,16 @@
 import com.mes.hollow.service.HollowGlassRelationInfoService;
 import com.mes.hollowqueue.entity.HollowGlassQueueInfo;
 import com.mes.hollowqueue.service.HollowGlassQueueInfoService;
+import com.mes.hollowtask.service.HollowBigStorageCageHistoryTaskService;
+import com.mes.largenscreen.entity.PieChartVO;
+import com.mes.largenscreen.entity.RunTime;
+import com.mes.s7.entity.S7DataZKDLPOne;
+import com.mes.s7.entity.S7DataZKDLPTwo;
 import com.mes.tools.WebSocketServer;
 import com.mes.utils.RedisUtil;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Qualifier;
 import org.springframework.scheduling.annotation.Scheduled;
 import org.springframework.stereotype.Component;
 
@@ -53,9 +60,19 @@
     BigStorageCageTaskService bigStorageCageTaskService;
     @Resource
     HollowGlassRelationInfoService hollowGlassRelationInfoService;
+    @Resource
+    HollowBigStorageCageHistoryTaskService hollowBigStorageCageHistoryTaskService;
 
     @Autowired(required = false)
     MiloService miloService;
+
+    @Autowired
+    @Qualifier("s7SerializerZKDLPOne")
+    private S7Serializer s7SerializerZKDLPOne;
+
+    @Autowired
+    @Qualifier("s7SerializerZKDLPTwo")
+    private S7Serializer s7SerializerZKDLPTwo;
 
     @Resource
     RedisUtil redisUtil;
@@ -132,6 +149,8 @@
 
 
     public void queryDataSource1(JSONObject jsonObject) throws Exception {
+        S7DataZKDLPOne s7DataZKDLPOne = s7SerializerZKDLPOne.read(S7DataZKDLPOne.class);
+        S7DataZKDLPTwo s7DataZKDLPTwo = s7SerializerZKDLPTwo.read(S7DataZKDLPTwo.class);
         List<Double> carPostion = new ArrayList<>();
         carPostion.add(0.25);
         carPostion.add(0.5);
@@ -142,14 +161,52 @@
         try {
             //杩涚墖浠诲姟鏁版嵁
             List<BigStorageTaskVO> inTaskList = new ArrayList();
-            ReadWriteEntity fromOpcUa = miloService.readFromOpcUa("DLP2A.DLP2A.FROM1");
+//            ReadWriteEntity fromOpcUa = miloService.readFromOpcUa("DLP2A.DLP2A.FROM1");
+            String fromOpcUa = s7DataZKDLPOne.getFrom1().toString();
             for (int i = 1; i <= 6; i++) {
-                ReadWriteEntity requestWord = miloService.readFromOpcUa("DLP2A.DLP2A.DI" + i);
-                ReadWriteEntity targetSlotWord = miloService.readFromOpcUa("DLP2A.DLP2A.TO" + i);
-                ReadWriteEntity stateWord = miloService.readFromOpcUa("DLP2A.DLP2A.STATE" + i);
-                if (null != requestWord.getValue()) {
+//                ReadWriteEntity requestWord = miloService.readFromOpcUa("DLP2A.DLP2A.DI" + i);
+//                ReadWriteEntity targetSlotWord = miloService.readFromOpcUa("DLP2A.DLP2A.TO" + i);
+//                ReadWriteEntity stateWord = miloService.readFromOpcUa("DLP2A.DLP2A.STATE" + i);
+                String requestWord = "";
+                String stateWord = "";
+                String targetSlotWord = "";
+                switch (i) {
+                    case 0:
+                        requestWord = s7DataZKDLPOne.getId1().toString();
+                        stateWord = s7DataZKDLPOne.getState1().toString();
+                        targetSlotWord = s7DataZKDLPOne.getTo1().toString();
+                        break;
+                    case 1:
+                        requestWord = s7DataZKDLPOne.getId2().toString();
+                        stateWord = s7DataZKDLPOne.getState2().toString();
+                        targetSlotWord = s7DataZKDLPOne.getTo2().toString();
+                        break;
+                    case 2:
+                        requestWord = s7DataZKDLPOne.getId3().toString();
+                        stateWord = s7DataZKDLPOne.getState3().toString();
+                        targetSlotWord = s7DataZKDLPOne.getTo3().toString();
+                        break;
+                    case 3:
+                        requestWord = s7DataZKDLPOne.getId4().toString();
+                        stateWord = s7DataZKDLPOne.getState4().toString();
+                        targetSlotWord = s7DataZKDLPOne.getTo4().toString();
+                        break;
+                    case 4:
+                        requestWord = s7DataZKDLPOne.getId5().toString();
+                        stateWord = s7DataZKDLPOne.getState5().toString();
+                        targetSlotWord = s7DataZKDLPOne.getTo5().toString();
+                        break;
+                    case 5:
+                        requestWord = s7DataZKDLPOne.getId6().toString();
+                        stateWord = s7DataZKDLPOne.getState6().toString();
+                        targetSlotWord = s7DataZKDLPOne.getTo6().toString();
+                        break;
+                }
+//                if (null != requestWord.getValue()) {
+                if (null != requestWord) {
                     BigStorageTaskVO task = new BigStorageTaskVO();
-                    task.setGlassId(requestWord.getValue() + "");
+//                    task.setGlassId(requestWord.getValue() + "");
+                    task.setGlassId(requestWord);
                     int isExistCount = hollowBigStorageCageDetailsService.count(new LambdaQueryWrapper<HollowBigStorageCageDetails>().in(HollowBigStorageCageDetails::getGlassId, task.getGlassId())
                             .in(HollowBigStorageCageDetails::getState, Const.GLASS_STATE_IN_ALL));
                     if (isExistCount > 0) {
@@ -157,9 +214,12 @@
                     } else {
                         task.setIsSame(0);
                     }
-                    task.setStartSlot(Integer.parseInt(fromOpcUa.getValue() + ""));
-                    task.setTargetSlot(Integer.parseInt(targetSlotWord.getValue() + ""));
-                    task.setTaskState(Integer.parseInt(stateWord.getValue() + ""));
+//                    task.setStartSlot(Integer.parseInt(fromOpcUa.getValue() + ""));
+//                    task.setTargetSlot(Integer.parseInt(targetSlotWord.getValue() + ""));
+//                    task.setTaskState(Integer.parseInt(stateWord.getValue() + ""));
+                    task.setStartSlot(Integer.parseInt(fromOpcUa));
+                    task.setTargetSlot(Integer.parseInt(targetSlotWord));
+                    task.setTaskState(Integer.parseInt(stateWord));
                     inTaskList.add(task);
                     continue;
                 }
@@ -170,20 +230,30 @@
         }
         try {
             //杩涚墖鑱旀満
-            ReadWriteEntity inkageEntity = miloService.readFromOpcUa("DLP2A.DLP2A.mesControl");
-            jsonObject.append("inkageEntity", inkageEntity.getValue());
+//            ReadWriteEntity inkageEntity = miloService.readFromOpcUa("DLP2A.DLP2A.mesControl");
+//            jsonObject.append("inkageEntity", inkageEntity.getValue());
+            Boolean inkageEntity = s7DataZKDLPOne.getMesControl();
+            jsonObject.append("inkageEntity", inkageEntity);
             //杩涚墖璇锋眰
-            ReadWriteEntity requestEntity = miloService.readFromOpcUa("DLP2A.DLP2A.RequestMes");
-            jsonObject.append("requestEntity", requestEntity.getValue());
+//            ReadWriteEntity requestEntity = miloService.readFromOpcUa("DLP2A.DLP2A.RequestMes");
+//            jsonObject.append("requestEntity", requestEntity.getValue());
+            String requestEntity = s7DataZKDLPOne.getRequestMes().toString();
+            jsonObject.append("requestEntity", requestEntity);
             //鍚姩鍛戒护
-            ReadWriteEntity mesReplyEntity = miloService.readFromOpcUa("DLP2A.DLP2A.MesReply");
-            jsonObject.append("mesReplyEntity", mesReplyEntity.getValue());
+//            ReadWriteEntity mesReplyEntity = miloService.readFromOpcUa("DLP2A.DLP2A.MesReply");
+//            jsonObject.append("mesReplyEntity", mesReplyEntity.getValue());
+            String mesReplyEntity = s7DataZKDLPOne.getMesReply().toString();
+            jsonObject.append("mesReplyEntity", mesReplyEntity);
             //鍑虹墖鑱旀満
-            ReadWriteEntity outInkageEntity = miloService.readFromOpcUa("DLP2B.DLP2B.mesControl");
-            jsonObject.append("outInkageEntity", outInkageEntity.getValue());
+//            ReadWriteEntity outInkageEntity = miloService.readFromOpcUa("DLP2B.DLP2B.mesControl");
+//            jsonObject.append("outInkageEntity", outInkageEntity.getValue());
+            String outInkageEntity = s7DataZKDLPTwo.getMesControl().toString();
+            jsonObject.append("outInkageEntity", outInkageEntity);
             //鍑虹墖璇锋眰
-            ReadWriteEntity outRequestEntity = miloService.readFromOpcUa("DLP2B.DLP2B.RequestMes");
-            jsonObject.append("outRequestEntity", outRequestEntity.getValue());
+//            ReadWriteEntity outRequestEntity = miloService.readFromOpcUa("DLP2B.DLP2B.RequestMes");
+//            jsonObject.append("outRequestEntity", outRequestEntity.getValue());
+            String outRequestEntity = s7DataZKDLPTwo.getRequestMes().toString();
+            jsonObject.append("outInkageEntity", outInkageEntity);
             //930绌洪棽淇″彿
             ReadWriteEntity freeOneRequestEntity = miloService.readFromOpcUa("CMJ1.CMJ1.isFree");
             jsonObject.append("freeOneRequestEntity", freeOneRequestEntity.getValue());
@@ -226,6 +296,11 @@
         //鐞嗙墖绗间娇鐢ㄦ儏鍐�
         List<Map<String, Object>> hollowBigStorageCageUsage = hollowBigStorageCageService.selectBigStorageCageUsage();
         jsonObject.append("hollowBigStorageCageUsage", hollowBigStorageCageUsage);
+        //閽㈠寲楗煎浘鏁版嵁
+        List<PieChartVO> pieChartVOS = hollowGlassOutRelationInfoService.queryPieChart();
+        jsonObject.append("pieChartVOS", pieChartVOS);
+        List<RunTime> hollowRunTimes = hollowBigStorageCageHistoryTaskService.queryRunTimes();
+        jsonObject.append("hollowRunTimes", hollowRunTimes);
         ArrayList<WebSocketServer> sendwServer = WebSocketServer.sessionMap.get("largenScreen");
         if (sendwServer != null) {
             for (WebSocketServer webserver : sendwServer) {

--
Gitblit v1.8.0