From 18c35e5010d11a49a4ce4f346e760a9bd1988c6c Mon Sep 17 00:00:00 2001
From: jiazx0107@163.com <jiazx0107@163.com>
Date: 星期五, 18 八月 2023 18:56:25 +0800
Subject: [PATCH] 调整粮情打印错误

---
 igds-protocol-modbus/src/main/java/com/ld/igds/protocol/modbus/command/RemoteControlServiceImpl.java |   31 ++++++++++++++++++++++---------
 1 files changed, 22 insertions(+), 9 deletions(-)

diff --git a/igds-protocol-modbus/src/main/java/com/ld/igds/protocol/modbus/command/RemoteControlServiceImpl.java b/igds-protocol-modbus/src/main/java/com/ld/igds/protocol/modbus/command/RemoteControlServiceImpl.java
index 601e72a..0af4436 100644
--- a/igds-protocol-modbus/src/main/java/com/ld/igds/protocol/modbus/command/RemoteControlServiceImpl.java
+++ b/igds-protocol-modbus/src/main/java/com/ld/igds/protocol/modbus/command/RemoteControlServiceImpl.java
@@ -2,6 +2,7 @@
 
 import com.ld.igds.common.CoreDeviceService;
 import com.ld.igds.constant.Constant;
+import com.ld.igds.constant.DeviceStatus;
 import com.ld.igds.io.RemoteControlService;
 import com.ld.igds.io.constant.OrderRespEnum;
 import com.ld.igds.io.constant.ProtocolEnum;
@@ -58,6 +59,7 @@
             ModbusTcp modbusTcp;
             String[] addr;
             String temp;
+            int addrExe = 65535;
             for (ExeDevice exeDevice : deviceList) {
                 device = deviceService.getCacheDeviceById(exeDevice.getCompanyId(), exeDevice.getId());
 
@@ -74,24 +76,35 @@
                 //modbus瑙勫垯锛氬紑鍦板潃-鍏冲湴鍧�-鍋滃湴鍧�-寮�鍒颁綅-鍏冲埌浣�-寮�鏁呴殰-鍏虫晠闅滐紝鏃犲湴鍧�鐢∟浠f浛
                 addr = device.getModbus().split("-");
                 temp = addr[0];
-                if (!Constant.YN_N.equals(temp)) modbusTcp.setAddrOpen(Integer.valueOf(temp));
+                if (!Constant.YN_N.equals(temp)) modbusTcp.setAddrOpen(temp);
                 temp = addr[1];
-                if (!Constant.YN_N.equals(temp)) modbusTcp.setAddrClose(Integer.valueOf(temp));
+                if (!Constant.YN_N.equals(temp)) modbusTcp.setAddrClose(temp);
                 temp = addr[2];
-                if (!Constant.YN_N.equals(temp)) modbusTcp.setAddrStop(Integer.valueOf(temp));
+                if (!Constant.YN_N.equals(temp)) modbusTcp.setAddrStop(temp);
                 temp = addr[3];
-                if (!Constant.YN_N.equals(temp)) modbusTcp.setAddrOpenEnd(Integer.valueOf(temp));
+                if (!Constant.YN_N.equals(temp)) modbusTcp.setAddrOpenEnd(temp);
                 temp = addr[4];
-                if (!Constant.YN_N.equals(temp)) modbusTcp.setAddrCloseEnd(Integer.valueOf(temp));
+                if (!Constant.YN_N.equals(temp)) modbusTcp.setAddrCloseEnd(temp);
                 temp = addr[5];
-                if (!Constant.YN_N.equals(temp)) modbusTcp.setAddrOpenError(Integer.valueOf(temp));
+                if (!Constant.YN_N.equals(temp)) modbusTcp.setAddrOpenError(temp);
                 temp = addr[6];
-                if (!Constant.YN_N.equals(temp)) modbusTcp.setAddrCloseError(Integer.valueOf(temp));
+                if (!Constant.YN_N.equals(temp)) modbusTcp.setAddrCloseError(temp);
 
+
+                //鏍规嵁璁惧鐩爣鐩爣鐘舵�侊紝閫夋嫨闇�瑕佹墽琛岀殑閫氶亾
+                if (DeviceStatus.CLOSE.getCode().equals(device.getTargetStatus())) {
+                    addrExe = Integer.valueOf(modbusTcp.getAddrClose());
+                }
+
+                if(DeviceStatus.OPEN.getCode().equals(device.getTargetStatus())){
+                    addrExe = Integer.valueOf(modbusTcp.getAddrOpen());
+                }
+
+
+                //TODO 鍏朵粬鐘舵�佸緟瀹�
 
                 //鏍规嵁璁惧鐩爣鐘舵�侊紝璋冪敤MODBUS鎵ц
-                modbusUtil.writeCoil(modbusTcp.getIp(), modbusTcp.getPort(), modbusTcp.getAddrOpen(), true);
-
+                modbusUtil.writeCoil(modbusTcp.getIp(), modbusTcp.getPort(),addrExe, true);
 
             }
         } catch (Exception e) {

--
Gitblit v1.9.3