From 75375a0f68c8b91799482dc1cd2ec7d7f211167f Mon Sep 17 00:00:00 2001
From: wuyouming666 <2265557248@qq.com>
Date: 星期五, 31 五月 2024 09:28:06 +0800
Subject: [PATCH] Merge branch 'master' of http://10.153.19.25:10101/r/CanadaMes

---
 springboot-vue3/src/main/java/com/example/springboot/component/PLCManualJog.java |   57 ++++++++++++++++++++++++++++-----------------------------
 1 files changed, 28 insertions(+), 29 deletions(-)

diff --git a/springboot-vue3/src/main/java/com/example/springboot/component/PLCManualJog.java b/springboot-vue3/src/main/java/com/example/springboot/component/PLCManualJog.java
index 16fa085..048431f 100644
--- a/springboot-vue3/src/main/java/com/example/springboot/component/PLCManualJog.java
+++ b/springboot-vue3/src/main/java/com/example/springboot/component/PLCManualJog.java
@@ -2,13 +2,15 @@
 
 import cn.hutool.json.JSONArray;
 import cn.hutool.json.JSONObject;
+import lombok.extern.slf4j.Slf4j;
+
 import org.apache.commons.io.FileUtils;
 
 import java.io.*;
 import java.util.ArrayList;
 import java.util.Arrays;
 import java.util.List;
-
+@Slf4j
 public class PLCManualJog extends Thread {
 
 
@@ -16,35 +18,25 @@
     private Configuration config;
 
     // 鍒涘缓涓�涓嚜瀹氫箟鐨� S7 鎺у埗鍣ㄦ秷鎭鐞嗗櫒瀵硅薄
-    MessageHandler customS7Control = new MessageHandler();
+
 
 
     public PLCManualJog() throws IOException {
         config = new Configuration("config.properties");
     }
-
+//    Boolean[] values1 = { false, true, true, true, false, false, true, false,
+//            false, true, true, true, false, false,
+//            true, false,false, true, true, true, false, false, true, false,
+//            false, true };
+//    List<Boolean> arraylist = new ArrayList<>(Arrays.asList(values1));
 
     @Override
     public void run() {
         while (this != null) {
             try {
                 Thread.sleep(500);
-
-            } catch (InterruptedException e) {
-                e.printStackTrace();
-            }
-
-
-
-           List<String> addressList21 = Arrays.asList(config.getProperty("PLCManualJog.button").split(","));
-         List<Boolean> arraylist = S7control.getinstance().readBits(addressList21);
-
-//             Boolean[] values1 = { false, true, true, true, false, false, true, false,
-//             false, true, true, true, false, false,
-//             true, false,false, true, true, true, false, false, true, false,
-//                     false, true, false, true };
-//             List<Boolean> arraylist = new ArrayList<>(Arrays.asList(values1));
-
+                List<String> addressList21 = Arrays.asList(config.getProperty("PLCManualJog.button").split(","));
+       List<Boolean> arraylist = S7control.getinstance().readBits(addressList21);
 
 
             JSONObject jsonObject = new JSONObject();
@@ -54,24 +46,19 @@
                 boolean value = arraylist.get(i);
                 params[i] = value ? (short) 1 : (short) 0;
             }
-
+          //  System.out.println("messageValue锛�"+ arraylist  );
             jsonObject.append("params", params);
 
-//      System.out.println("messageValue锛�" + arraylist +"messageValue2锛�" + arraylist2 );
-//      WebSocketServer sendwServer = WebSocketServer.sessionMap.get("ManualJog");
-//      if (sendwServer != null) {
-//        sendwServer.sendMessage(jsonObject.toString());
-//      }
 
             ArrayList<WebSocketServer> sendwServer = WebSocketServer.sessionMap.get("ManualJog");
             if (sendwServer != null) {
                 for (WebSocketServer webserver : sendwServer) {
-                    webserver.sendMessage(jsonObject.toString());
+                    
 
 //      WebSocketServer webSocketServer = WebSocketServer.sessionMap.get("ManualJog");
 
-                    if (webserver != null) {
-
+                    if (webserver != null&&webserver.session.isOpen()) {
+                        webserver.sendMessage(jsonObject.toString());
 
                         List<String> messages = webserver.getMessages();
                         if (!messages.isEmpty()) {
@@ -107,16 +94,28 @@
 
 
                             if (!bolList.isEmpty()) {
-                           S7control.getinstance().WriteBit(addressList21, bolList);
+                         S7control.getinstance().WriteBit(addressList21, bolList);
+//                                arraylist.clear();
+//                                arraylist.addAll(bolList);
+
                                 System.out.println("messageValue锛�" + bolList + " written to PLC at address " + addressList21);
                             }
 
                             webserver.clearMessages();
                         }
+                    }else{
+                        log.info("ManualJog is closed");
                     }
                 }
 
             }
+            } catch (InterruptedException e) {
+                e.printStackTrace();
+            }
+
+
+
+           
 
         }
     }

--
Gitblit v1.8.0