From 979f95e192e306bf8ae6552415d20c57015baab4 Mon Sep 17 00:00:00 2001
From: 严智鑫 <test>
Date: 星期三, 22 十月 2025 13:59:05 +0800
Subject: [PATCH] 优化:短连接+抛异常 防止异常导致端口占用 无法连接设备

---
 JiuMuMesParent/moduleService/DeviceInteractionModule/src/main/java/com/mes/plcTaskThread/MachineFlipSlice.java |   16 +++++++++-------
 1 files changed, 9 insertions(+), 7 deletions(-)

diff --git a/JiuMuMesParent/moduleService/DeviceInteractionModule/src/main/java/com/mes/plcTaskThread/MachineFlipSlice.java b/JiuMuMesParent/moduleService/DeviceInteractionModule/src/main/java/com/mes/plcTaskThread/MachineFlipSlice.java
index 902d5ee..25355eb 100644
--- a/JiuMuMesParent/moduleService/DeviceInteractionModule/src/main/java/com/mes/plcTaskThread/MachineFlipSlice.java
+++ b/JiuMuMesParent/moduleService/DeviceInteractionModule/src/main/java/com/mes/plcTaskThread/MachineFlipSlice.java
@@ -33,13 +33,14 @@
     public void plcStart() throws Exception {
         Machine machine = machineMapper.selectById(thisMachine.getId());
         S7objectMachine s7objectMachine = new S7objectMachine(machine.getIp(), machine.getPort(), machine.getFileName(), EPlcType.S1200);
-        s7objectMachine.readData();//鎸夌収json鏂囦欢璇诲彇鍐呭
-        PlcParameterObject plcParameterObject = s7objectMachine.PlcMesObject;
-        if (plcParameterObject == null) {
-            s7objectMachine.plccontrol.closeS7client();
-            return;
-        }
+
         try {
+            s7objectMachine.readData();//鎸夌収json鏂囦欢璇诲彇鍐呭
+            PlcParameterObject plcParameterObject = s7objectMachine.PlcMesObject;
+            if (plcParameterObject == null) {
+                s7objectMachine.plccontrol.closeS7client();
+                return;
+            }
             PlcParameterInfo plcRequest = plcParameterObject.getPlcParameter("plcRequest");//璇锋眰瀛�
             PlcParameterInfo plcRequestID = plcParameterObject.getPlcParameter("plcRequestID");//璇锋眰ID
             PlcParameterInfo plcRequestType = plcParameterObject.getPlcParameter("plcRequestType");//PLC璇锋眰
@@ -127,9 +128,10 @@
                 nullMachine(machine);
             }
         } catch (Exception e) {
-            s7objectMachine.plccontrol.closeS7client();
+
             log.info("閫昏緫澶勭悊寮傚父锛氳澶噄d銆恵}銆�", machine.getId());
         }
+        s7objectMachine.plccontrol.closeS7client();
     }
 
 

--
Gitblit v1.8.0