From 178c71496d5508dae69110f4d988cf128723d740 Mon Sep 17 00:00:00 2001
From: CZT <czt18638530771@163.com>
Date: 星期三, 30 八月 2023 14:58:41 +0800
Subject: [PATCH] 配置Modbus协议:增加能耗信息

---
 igds-protocol-modbus/src/main/java/com/ld/igds/protocol/modbus/command/RemoteControlServiceImpl.java |   15 ++++++++++-----
 1 files changed, 10 insertions(+), 5 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 b6c25d7..5da1698 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
@@ -67,6 +67,7 @@
             ModbusTcp modbusTcp;
             ModbusTcp modbusTcpLink = null;
             String temp = Constant.YN_N;
+            DeviceSer deviceSer;
             for (ExeDevice exeDevice : deviceList) {
                 deviceModbus = deviceModbusService.getCacheDeviceModbus(request.getCompanyId(), exeDevice.getPassCode() + "");
 
@@ -78,6 +79,12 @@
                 modbusTcp = new ModbusTcp(deviceModbus);
                 modbusTcp.setIp(request.getIp());
                 modbusTcp.setPort(request.getPort());
+                //鑻odbus璁惧閰嶇疆鍒嗘満锛屽垯浣跨敤鎵�閰嶇疆鍒嗘満鐨処P銆佺鍙�
+                if(StringUtils.isNotEmpty(deviceModbus.getSerId())){
+                    deviceSer = coreSerService.getCacheSer(request.getCompanyId(), deviceModbus.getSerId());
+                    modbusTcp.setIp(deviceSer.getIp());
+                    modbusTcp.setPort(deviceSer.getPort());
+                }
                 modbusTcp.setBizCode(exeDevice.getPassCode() + "");
                 modbusTcp.setSerId(request.getSerId());
                 modbusTcp.setCompanyId(request.getCompanyId());
@@ -109,7 +116,6 @@
                     continue;
                 }
 
-
                 deviceModbus = deviceModbusService.getCacheDeviceModbus(request.getCompanyId(), exeDevice.getLink());
                 if (null == deviceModbus) continue;
                 modbusTcpLink = new ModbusTcp(deviceModbus);
@@ -118,9 +124,10 @@
                 modbusTcpLink.setBizCode(exeDevice.getLink());
                 modbusTcpLink.setSerId(request.getSerId());
                 modbusTcpLink.setCompanyId(request.getCompanyId());
+
+                //鑻odbus璁惧閰嶇疆鍒嗘満锛屽垯浣跨敤鎵�閰嶇疆鍒嗘満鐨処P銆佺鍙�
                 if(StringUtils.isNotEmpty(deviceModbus.getSerId())){
-                    //鑻odbus璁惧閰嶇疆鍒嗘満锛屽垯浣跨敤鎵�閰嶇疆鍒嗘満鐨処P銆佺鍙�
-                    DeviceSer deviceSer = coreSerService.getCacheSer(request.getCompanyId(), deviceModbus.getSerId());
+                    deviceSer = coreSerService.getCacheSer(request.getCompanyId(), deviceModbus.getSerId());
                     modbusTcpLink.setIp(deviceSer.getIp());
                     modbusTcpLink.setPort(deviceSer.getPort());
                 }
@@ -131,9 +138,7 @@
                     //鍏堝紑绐楀彛
                     temp = modbusTcp.getDeviceModbus().getOpen();
                     modbusTcp.setAddrExe(ServerUtil.getAddrExe(temp));
-
                     doWriteExe(modbusTcp, DeviceStatus.OPEN.getCode());
-
 
                     Thread.sleep(300);
 

--
Gitblit v1.9.3