From 0795daf740782f708968e9fe12f4d034fcd6488d Mon Sep 17 00:00:00 2001
From: wuyouming666 <2265557248@qq.com>
Date: 星期五, 15 十二月 2023 13:47:22 +0800
Subject: [PATCH] 更新测试后的

---
 CanadaMes-ui/src/views/Electrical/ManualonePosition2.vue                                         |   41 +++---
 springboot-vue3/src/main/resources/config.properties                                             |    2 
 CanadaMes-ui/src/views/Electrical/Positioning1.vue                                               |   74 +++++-------
 springboot-vue3/src/main/java/com/example/springboot/config/AppRunnerConfig.java                 |    4 
 CanadaMes-ui/src/views/Electrical/AutomaticParameterSetting.vue                                  |   56 ++++++---
 springboot-vue3/src/main/java/com/example/springboot/component/S7control.java                    |   35 +++--
 CanadaMes-ui/src/views/Electrical/ManualonePosition.vue                                          |   46 +++----
 CanadaMes-ui/src/views/Electrical/Parameter2.vue                                                 |    2 
 springboot-vue3/src/main/java/com/example/springboot/component/PLCAutomaticParameterSetting.java |    2 
 springboot-vue3/src/main/java/com/example/springboot/component/PLCManualJog.java                 |    2 
 CanadaMes-ui/src/views/Electrical/ManualJog.vue                                                  |    9 +
 CanadaMes-ui/src/views/Electrical/ServoManualone.vue                                             |   40 ++----
 12 files changed, 161 insertions(+), 152 deletions(-)

diff --git a/CanadaMes-ui/src/views/Electrical/AutomaticParameterSetting.vue b/CanadaMes-ui/src/views/Electrical/AutomaticParameterSetting.vue
index c9fd7bb..6eefe8b 100644
--- a/CanadaMes-ui/src/views/Electrical/AutomaticParameterSetting.vue
+++ b/CanadaMes-ui/src/views/Electrical/AutomaticParameterSetting.vue
@@ -181,7 +181,19 @@
         };
 
         // 鏀跺埌娑堟伅
-        socket.onmessage = (msg) => {
+        let isMouseInInputBox = false; // 鏍囪榧犳爣鏄惁鍦ㄨ緭鍏ユ鍐�
+
+const inputBox = document.querySelectorAll('.input-box');
+inputBox.forEach(box => {
+  box.addEventListener('mouseenter', () => {
+    isMouseInInputBox = true;
+  });
+  box.addEventListener('mouseleave', () => {
+    isMouseInInputBox = false;
+  });
+});
+
+socket.onmessage = (msg) => {
   if (!msg.data) {
     return; // 濡傛灉鏀跺埌绌烘暟鎹紝鍒欑洿鎺ヨ繑鍥烇紝涓嶆墽琛屽悗缁�昏緫
   }
@@ -189,17 +201,7 @@
   let obj = JSON.parse(msg.data);
   const jsonData2 = this.jsonData;
 
-  const handleMouseMove = (event) => {
-    if (!event || !event.target) {
-      return; // 濡傛灉 event 鎴� event.target 涓嶅瓨鍦紝鍒欑洿鎺ヨ繑鍥烇紝涓嶆墽琛屽悗缁�昏緫
-    }
-
-    const inputBox = document.querySelectorAll('.input-box');
-    const target = event.target;
-    const isMouseInInput = Array.from(inputBox).some(box => box.contains(target));
-
-    if (!isMouseInInput) {
-      const parms = obj.params;
+  const parms = obj.params;
       const fanzhuan = obj.fanzhuan;
       const xiaoche = obj.xiaoche;
       const dache = obj.dache1;
@@ -207,6 +209,9 @@
       const parms2 = obj.params2;
       const fanzhuan2 = obj.fanzhuan2;
       const xiaoche2 = obj.xiaoche2;
+
+  if(parms && !isMouseInInputBox){
+     
 
       let index = 0;
       for (let i = 0; i < jsonData2.length - 1; i++) {
@@ -234,10 +239,10 @@
 
       let index2 = 0;
       for (let i = 5; i < jsonData2.length; i++) {
-        let arr = jsonData2[i];
+        let arr2 = jsonData2[i];
 
-        for (let j = 0; j < arr.length; j++) {
-          let obj2 = arr[j];
+        for (let j = 0; j < arr2.length; j++) {
+          let obj2 = arr2[j];
           if (obj2.type === '0' && Object.prototype.hasOwnProperty.call(obj2, 'value')) {
             if (Array.isArray(parms2) && Array.isArray(parms2[0]) && parms2[0][index2] !== undefined) {
               obj2.value = parms2[0][index2];
@@ -246,6 +251,23 @@
           }
         }
       }
+
+
+     
+              for (let i = 0; i < jsonData2.length; i++) {
+                let arr = jsonData2[i];
+
+                for (let j = 0; j < arr.length; j++) {
+                  let obj = arr[j];
+                  if (obj.type === '0' && Object.prototype.hasOwnProperty.call(obj, 'value')) {
+                    if (Array.isArray(parms) && Array.isArray(parms[0]) && parms[0][index] !== undefined) {
+                      obj.value = parms[0][index];
+                      index++;
+                    }
+                  }
+                }
+              }
+      
       if (Array.isArray(fanzhuan2) && Array.isArray(fanzhuan2[0]) && fanzhuan2[0][0] !== undefined) {
         jsonData2[8][0]['value'] = fanzhuan2[0][0];
       }
@@ -253,11 +275,9 @@
         jsonData2[9][0]['value'] = xiaoche2[0][0];
       }
     }
-  };
+  
 
-  setInterval(() => handleMouseMove(event), 1000); // 姣忛殧 1000ms 妫�娴嬩竴娆¢紶鏍囦綅缃�
 
-document.addEventListener('mousemove', event => handleMouseMove(event));
 };
 
 
diff --git a/CanadaMes-ui/src/views/Electrical/ManualJog.vue b/CanadaMes-ui/src/views/Electrical/ManualJog.vue
index dab071b..fd73cbb 100644
--- a/CanadaMes-ui/src/views/Electrical/ManualJog.vue
+++ b/CanadaMes-ui/src/views/Electrical/ManualJog.vue
@@ -219,7 +219,7 @@
 
           const jsonData2 = this.jsonData;
           const parms = obj.params;
-//  console.log(obj)
+// console.log(obj)
 //console.log(this.jsonData)
           if(parms){
           // 濡傛灉榧犳爣涓嶅湪杈撳叆妗嗗唴锛屾洿鏂拌緭鍏ユ鐨勫��
@@ -232,13 +232,18 @@
             for (let j = 0; j < arr.length; j++) {
               let obj = arr[j];
               obj.button.value = parms[0][j];
-              obj.button.value2 =obj.button.value;
+              // obj.button.value2 = parms[0][j];
+             // obj.button.value2 =obj.button.value;
 
 
             }
 
           }
 
+          jsonData2[1][0].button.value = obj.params[0][26]; 
+          jsonData2[1][1].button.value = obj.params[0][27]; 
+
+
 
 
 
diff --git a/CanadaMes-ui/src/views/Electrical/ManualonePosition.vue b/CanadaMes-ui/src/views/Electrical/ManualonePosition.vue
index c9934cd..cf1dab8 100644
--- a/CanadaMes-ui/src/views/Electrical/ManualonePosition.vue
+++ b/CanadaMes-ui/src/views/Electrical/ManualonePosition.vue
@@ -431,31 +431,31 @@
         };
 
         // 鏀跺埌娑堟伅
-        socket.onmessage = (msg) => {
-          if (!msg.data) {
-            return; // 濡傛灉鏀跺埌绌烘暟鎹紝鍒欑洿鎺ヨ繑鍥烇紝涓嶆墽琛屽悗缁�昏緫
-          }
+        let isMouseInInputBox = false; // 鏍囪榧犳爣鏄惁鍦ㄨ緭鍏ユ鍐�
+
+const inputBox = document.querySelectorAll('.input-box');
+inputBox.forEach(box => {
+  box.addEventListener('mouseenter', () => {
+    isMouseInInputBox = true;
+  });
+  box.addEventListener('mouseleave', () => {
+    isMouseInInputBox = false;
+  });
+});
+
+socket.onmessage = (msg) => {
+  if (!msg.data) {
+    return; // 濡傛灉鏀跺埌绌烘暟鎹紝鍒欑洿鎺ヨ繑鍥烇紝涓嶆墽琛屽悗缁�昏緫
+  }
 
           let obj = JSON.parse(msg.data);
           const jsonData2 = this.jsonData;
           const weihuiling = obj.weihuiling;
-          const handleMouseMove = (event) => {
-    if (!event || !event.target) {
-      return; // 濡傛灉 event 鎴� event.target 涓嶅瓨鍦紝鍒欑洿鎺ヨ繑鍥烇紝涓嶆墽琛屽悗缁�昏緫
-    }
-
-    const inputBox = document.querySelectorAll('.input-box');
-    const target = event.target;
-    // console.log(obj);
-   
-    const isMouseInInput = Array.from(inputBox).some(box => box.contains(target));
-
-    if (!isMouseInInput) {
 
 
-  if(obj.zuhe1){
+  if(obj.zuhe1&& !isMouseInInputBox){
 
-
+// console.log(obj);
   
               // 鎵ц鏇存柊閫昏緫
               for (let i = 0; i < 4; i++) {
@@ -467,14 +467,8 @@
               }
             }
 
-            }
-        }
-
-              // console.log(jsonData2);
-              setInterval(() => handleMouseMove(event), 1000); // 姣忛殧 1000ms 妫�娴嬩竴娆¢紶鏍囦綅缃�
-
-document.addEventListener('mousemove', event => handleMouseMove(event));
-
+            
+     
 
 
 if(obj.zuhe1){
diff --git a/CanadaMes-ui/src/views/Electrical/ManualonePosition2.vue b/CanadaMes-ui/src/views/Electrical/ManualonePosition2.vue
index c2db6ea..286a5ef 100644
--- a/CanadaMes-ui/src/views/Electrical/ManualonePosition2.vue
+++ b/CanadaMes-ui/src/views/Electrical/ManualonePosition2.vue
@@ -318,10 +318,22 @@
         };
 
         // 鏀跺埌娑堟伅
-        socket.onmessage = (msg) => {
-          if (!msg.data) {
-            return; // 濡傛灉鏀跺埌绌烘暟鎹紝鍒欑洿鎺ヨ繑鍥烇紝涓嶆墽琛屽悗缁�昏緫
-          }
+        let isMouseInInputBox = false; // 鏍囪榧犳爣鏄惁鍦ㄨ緭鍏ユ鍐�
+
+const inputBox = document.querySelectorAll('.input-box');
+inputBox.forEach(box => {
+  box.addEventListener('mouseenter', () => {
+    isMouseInInputBox = true;
+  });
+  box.addEventListener('mouseleave', () => {
+    isMouseInInputBox = false;
+  });
+});
+
+socket.onmessage = (msg) => {
+  if (!msg.data) {
+    return; // 濡傛灉鏀跺埌绌烘暟鎹紝鍒欑洿鎺ヨ繑鍥烇紝涓嶆墽琛屽悗缁�昏緫
+  }
 
           let obj = JSON.parse(msg.data);
 
@@ -329,21 +341,11 @@
           // console.log(obj)
           const jsonData2 = this.jsonData;
           const weihuiling = obj.weihuiling;
-            const handleMouseMove = (event) => {
-    if (!event || !event.target) {
-      return; // 濡傛灉 event 鎴� event.target 涓嶅瓨鍦紝鍒欑洿鎺ヨ繑鍥烇紝涓嶆墽琛屽悗缁�昏緫
-    }
 
-    const inputBox = document.querySelectorAll('.input-box');
-    const target = event.target;
-    // console.log(obj);
-   
-    const isMouseInInput = Array.from(inputBox).some(box => box.contains(target));
- 
 
-if (!isMouseInInput) {
+
             
-            if (obj.zuhe1 ) {
+            if (obj.zuhe1&& !isMouseInInputBox ) {
               // 鎵ц鏇存柊閫昏緫
               for (let i = 0; i < 2; i++) {
                 jsonData2[i].forEach((item, index) => {
@@ -378,13 +380,8 @@
             }
          
 
-          }
-        
-        }
-              // console.log(jsonData2);
-              setInterval(() => handleMouseMove(event), 1000); // 姣忛殧 1000ms 妫�娴嬩竴娆¢紶鏍囦綅缃�
+     
 
-document.addEventListener('mousemove', event => handleMouseMove(event));
 
 
           if(obj.zuhe1){
diff --git a/CanadaMes-ui/src/views/Electrical/Parameter2.vue b/CanadaMes-ui/src/views/Electrical/Parameter2.vue
index c8ae4de..bfb587f 100644
--- a/CanadaMes-ui/src/views/Electrical/Parameter2.vue
+++ b/CanadaMes-ui/src/views/Electrical/Parameter2.vue
@@ -358,7 +358,7 @@
 
           const parms = obj.params;
 
-         // console.log(obj);
+        // console.log(obj);
 
           // const handleMouseMove = throttle(function(event) {
           // const inputBox = document.querySelectorAll('.id');
diff --git a/CanadaMes-ui/src/views/Electrical/Positioning1.vue b/CanadaMes-ui/src/views/Electrical/Positioning1.vue
index 9862208..a59cccb 100644
--- a/CanadaMes-ui/src/views/Electrical/Positioning1.vue
+++ b/CanadaMes-ui/src/views/Electrical/Positioning1.vue
@@ -236,7 +236,19 @@
         };
 
         // 鏀跺埌娑堟伅
-        socket.onmessage = (msg) => {
+        let isMouseInInputBox = false; // 鏍囪榧犳爣鏄惁鍦ㄨ緭鍏ユ鍐�
+
+const inputBox = document.querySelectorAll('.input-box');
+inputBox.forEach(box => {
+  box.addEventListener('mouseenter', () => {
+    isMouseInInputBox = true;
+  });
+  box.addEventListener('mouseleave', () => {
+    isMouseInInputBox = false;
+  });
+});
+
+socket.onmessage = (msg) => {
   if (!msg.data) {
     return; // 濡傛灉鏀跺埌绌烘暟鎹紝鍒欑洿鎺ヨ繑鍥烇紝涓嶆墽琛屽悗缁�昏緫
   }
@@ -244,50 +256,26 @@
   let obj = JSON.parse(msg.data);
   const jsonData2 = this.jsonData;
 
-  const handleMouseMove = (event) => {
-    if (!event || !event.target) {
-      return; // 濡傛灉 event 鎴� event.target 涓嶅瓨鍦紝鍒欑洿鎺ヨ繑鍥烇紝涓嶆墽琛屽悗缁�昏緫
-    }
+  const parms = obj.params;
 
-    const inputBox = document.querySelectorAll('.input-box');
-    const target = event.target;
-    const isMouseInInput = Array.from(inputBox).some(box => box.contains(target));
-
-    if (!isMouseInInput) {
-           
-            
-            const parms = obj.params;
-         
-              // 濡傛灉榧犳爣涓嶅湪杈撳叆妗嗗唴锛屾洿鏂拌緭鍏ユ鐨勫��
-              // this.submitDataToBackend()
-
-              // console.log(parms)
-if(parms){
-
-
-
-              let index = 0;
-              for (let i = 0; i < jsonData2.length; i++) {
-                let arr = jsonData2[i];
-                for (let j = 0; j < arr.length; j++) {
-                  let obj = arr[j];
-                  if (
-                    obj.type === "0" &&
-                    Object.prototype.hasOwnProperty.call(obj, "value")
-                  ) {
-                    obj.value = parms[0][index];
-                    index++;
-                  }
-                }
-              }
-            }
-          }
+  if(parms && !isMouseInInputBox){ // 鍙湁鍦ㄩ紶鏍囦笉鍦ㄨ緭鍏ユ鍐呮椂鎵嶆洿鏂版暟鎹�
+  //  console.log(parms)
+   
+    let index = 0;
+    for (let i = 0; i < jsonData2.length; i++) {
+      let arr = jsonData2[i];
+      for (let j = 0; j < arr.length; j++) {
+        let obj = arr[j];
+        if (
+          obj.type === "0" &&
+          Object.prototype.hasOwnProperty.call(obj, "value")
+        ) {
+          obj.value = parms[0][index];
+          index++;
         }
-
-              // console.log(jsonData2);
-              setInterval(() => handleMouseMove(event), 1000); // 姣忛殧 1000ms 妫�娴嬩竴娆¢紶鏍囦綅缃�
-
-document.addEventListener('mousemove', event => handleMouseMove(event));
+      }
+    }
+  }
 };
 
 
diff --git a/CanadaMes-ui/src/views/Electrical/ServoManualone.vue b/CanadaMes-ui/src/views/Electrical/ServoManualone.vue
index db99576..cc94515 100644
--- a/CanadaMes-ui/src/views/Electrical/ServoManualone.vue
+++ b/CanadaMes-ui/src/views/Electrical/ServoManualone.vue
@@ -424,12 +424,23 @@
           console.log("websocket宸叉墦寮�");
         };
 
-        // 鏀跺埌娑堟伅
-        socket.onmessage = (msg) => {
+
+        let isMouseInInputBox = false; // 鏍囪榧犳爣鏄惁鍦ㄨ緭鍏ユ鍐�
+
+const inputBox = document.querySelectorAll('.input-box');
+inputBox.forEach(box => {
+  box.addEventListener('mouseenter', () => {
+    isMouseInInputBox = true;
+  });
+  box.addEventListener('mouseleave', () => {
+    isMouseInInputBox = false;
+  });
+});
+
+socket.onmessage = (msg) => {
   if (!msg.data) {
     return; // 濡傛灉鏀跺埌绌烘暟鎹紝鍒欑洿鎺ヨ繑鍥烇紝涓嶆墽琛屽悗缁�昏緫
   }
-
   let obj = JSON.parse(msg.data);
 
 
@@ -438,21 +449,11 @@
 // console.log(obj)
 const weihuiling=obj.weihuiling;
   const jsonData2 = this.jsonData;
-  const handleMouseMove = (event) => {
-    if (!event || !event.target) {
-      return; // 濡傛灉 event 鎴� event.target 涓嶅瓨鍦紝鍒欑洿鎺ヨ繑鍥烇紝涓嶆墽琛屽悗缁�昏緫
-    }
 
-    const inputBox = document.querySelectorAll('.input-box');
-    const target = event.target;
-    // console.log(obj);
-   
-    const isMouseInInput = Array.from(inputBox).some(box => box.contains(target));
- 
 
-    if (!isMouseInInput) {
 
-  if (obj.zuhe1) {
+
+  if (obj.zuhe1 && !isMouseInInputBox) {
     
     //鍚姩鎸夐挳
  
@@ -488,18 +489,9 @@
 
 
 
-
-
-
   }
 
-}
-        
-      }
-            // console.log(jsonData2);
-            setInterval(() => handleMouseMove(event), 1000); // 姣忛殧 1000ms 妫�娴嬩竴娆¢紶鏍囦綅缃�
 
-document.addEventListener('mousemove', event => handleMouseMove(event));
 
   if (obj.qidong){
 
diff --git a/springboot-vue3/src/main/java/com/example/springboot/component/PLCAutomaticParameterSetting.java b/springboot-vue3/src/main/java/com/example/springboot/component/PLCAutomaticParameterSetting.java
index 7ae28fc..3532c83 100644
--- a/springboot-vue3/src/main/java/com/example/springboot/component/PLCAutomaticParameterSetting.java
+++ b/springboot-vue3/src/main/java/com/example/springboot/component/PLCAutomaticParameterSetting.java
@@ -42,6 +42,8 @@
       List<String> addresses = Arrays.asList(config.getProperty("Auto.addresses").split(","));
 
       List<Short> arraylist2 = S7control.getinstance().readWords(addresses);
+      //System.out.println("lastMessage锛�" + arraylist2);
+
 //缈昏浆
       List<Short> fanzhuan2 = S7control.getinstance().ReadWord("DB100.8", 1);
       List<Short> xiaoche2 = S7control.getinstance().ReadWord("DB100.12", 1);
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..bafe5ab 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
@@ -54,7 +54,7 @@
                 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 );
diff --git a/springboot-vue3/src/main/java/com/example/springboot/component/S7control.java b/springboot-vue3/src/main/java/com/example/springboot/component/S7control.java
index 36f2afb..2c883f0 100644
--- a/springboot-vue3/src/main/java/com/example/springboot/component/S7control.java
+++ b/springboot-vue3/src/main/java/com/example/springboot/component/S7control.java
@@ -216,19 +216,25 @@
         return s7PLC.readBoolean(addresslist);
     }
 //璇诲彇涓嶈繛缁湴鍧�bit
-    public List<Boolean> readBits(List<String> addressList) {
-        if (s7PLC == null || addressList.isEmpty()) {
-            return null;
-        }
+public List<Boolean> readBits(List<String> addressList) {
+    if (s7PLC == null || addressList.isEmpty()) {
+        return null;
+    }
 
-        List<Boolean> values = new ArrayList<>();
-        for (String address : addressList) {
+    List<Boolean> values = new ArrayList<>();
+    for (String address : addressList) {
+        try {
             boolean value = s7PLC.readBoolean(address);
             values.add(value);
+        } catch (Exception e) {
+            // 澶勭悊寮傚父
+            System.out.println("璇诲彇 " + address + " 澶辫触锛�" + e.getMessage());
         }
-
-        return values;
     }
+
+    return values;
+}
+
 
 //璇诲彇String
     public List<String> readStrings(List<String> addressList) {
@@ -307,15 +313,20 @@
         List<Short> data = new ArrayList<>();
 
         for (String address : addresses) {
+            try {
 
-            // 鍗曚釜鍦板潃
-            Short value = s7PLC.readInt16(address);
-            data.add(value);
+                // 鍗曚釜鍦板潃
+                Short value = s7PLC.readInt16(address);
+                data.add(value);
+            } catch (Exception e) {
+                System.out.println("璇诲彇 " + address + " 澶辫触锛�" + e.getMessage());
+
+            }
 
         }
-
         return data;
     }
+
 //璇诲彇鏃堕棿
     public Long readtime(String address) {
         if (s7PLC==null)
diff --git a/springboot-vue3/src/main/java/com/example/springboot/config/AppRunnerConfig.java b/springboot-vue3/src/main/java/com/example/springboot/config/AppRunnerConfig.java
index 0f76ee7..4d33bd9 100644
--- a/springboot-vue3/src/main/java/com/example/springboot/config/AppRunnerConfig.java
+++ b/springboot-vue3/src/main/java/com/example/springboot/config/AppRunnerConfig.java
@@ -17,7 +17,7 @@
         //
         System.out.println("鍚姩瀹屾垚");
 
-     // new PlcHold().start();
+      new PlcHold().start();
 
         new Plchome().start();
 
@@ -25,7 +25,7 @@
 
          new Plcsign().start();
 
-        
+
          new Plcstate().start();
          new PlcPositioning1().start();
 
diff --git a/springboot-vue3/src/main/resources/config.properties b/springboot-vue3/src/main/resources/config.properties
index 1037320..bee364f 100644
--- a/springboot-vue3/src/main/resources/config.properties
+++ b/springboot-vue3/src/main/resources/config.properties
@@ -153,7 +153,7 @@
 #addresses.add("DB100.36");
 #addresses.add("DB100.38");
 #addresses.add("DB100.40");
-Auto.addresses=DB100.0,DB100.2,DB100.4,DB100.6,DB100.26,DB100.28,DB100.30,DB100.32,DB100.36,DB100.38,DB100.40
+Auto.addresses=DB100.0,DB100.2,DB100.4,DB100.6,DB100.26,DB100.28,DB100.30,DB100.32,DB100.34,DB100.36,DB100.38,DB100.40
 
 #List<String> waddresses1 = new ArrayList<>();
 #waddresses1.add("DB100.0");

--
Gitblit v1.8.0