From dae61fa269844f76ccc9edf9eb316ef5c3dd0798 Mon Sep 17 00:00:00 2001
From: ZengTao <2773468879@qq.com>
Date: 星期一, 06 五月 2024 07:57:56 +0800
Subject: [PATCH] 根据客户需求修改复位倒计时,修改手动页面英文显示

---
 springboot-vue3/src/main/java/com/example/springboot/component/PLCManualJog.java |   65 ++++++++++++++------------------
 1 files changed, 28 insertions(+), 37 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 896be4c..4c030db 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 {
 
 
@@ -22,37 +24,19 @@
     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, 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();
-            }
-            // this.readValue();
-            // String PlcAddress = this.name;
-            // Integer Plccount = this.count;
-
-            // System.out.println(stt);
-
-
-            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 };
-            // List<Boolean> arraylist = new ArrayList<>(Arrays.asList(values1));
-            // Boolean[] values2 = { false, true, true, true, false, false, true, false };
-            // List<Boolean> arraylist2 = new ArrayList<>(Arrays.asList(values2));
-            // Boolean[] values3 = { false, false };
-            // List<Boolean> arraylist3 = new ArrayList<>(Arrays.asList(values3));
+                List<String> addressList21 = Arrays.asList(config.getProperty("PLCManualJog.button").split(","));
+       List<Boolean> arraylist = S7control.getinstance().readBits(addressList21);
 
 
             JSONObject jsonObject = new JSONObject();
@@ -62,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()) {
@@ -109,22 +88,34 @@
                             List<Boolean> bolList = new ArrayList<>();
 
 
-                            for (int i = 0; i < 26 && i < messageBooleans.size(); i++) {
+                            for (int i = 0; i < 28 && i < messageBooleans.size(); i++) {
                                 bolList.add(messageBooleans.get(i));
                             }
 
 
                             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