From 378bd90e53253245defb4c505e7550ad7e1521f2 Mon Sep 17 00:00:00 2001
From: Andy.jia <jiazx0107@163.com>
Date: 星期四, 17 八月 2023 19:40:03 +0800
Subject: [PATCH] 调整MODBUS实现类和数据配置
---
igds-protocol-modbus/src/main/java/com/ld/igds/protocol/modbus/command/RemoteControlServiceImpl.java | 31 +++++++---
igds-protocol-modbus/src/main/java/com/ld/igds/protocol/modbus/data/ModbusTcp.java | 35 +++++++++--
igds-web/src/main/java/com/ld/igds/web/LoginController.java | 1
igds-web/src/main/resources/application-pro5325.yml | 80 ++++++++++++++++++++++++++
igds-web/src/main/resources/verb-conf.properties | 7 ++
5 files changed, 136 insertions(+), 18 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) {
diff --git a/igds-protocol-modbus/src/main/java/com/ld/igds/protocol/modbus/data/ModbusTcp.java b/igds-protocol-modbus/src/main/java/com/ld/igds/protocol/modbus/data/ModbusTcp.java
index 6b1ddb0..49d1ebc 100644
--- a/igds-protocol-modbus/src/main/java/com/ld/igds/protocol/modbus/data/ModbusTcp.java
+++ b/igds-protocol-modbus/src/main/java/com/ld/igds/protocol/modbus/data/ModbusTcp.java
@@ -18,18 +18,39 @@
private int port;
- private int addrOpen;
+ /**
+ * 寮�鍦板潃
+ **/
+ private String addrOpen = "65535";
- private int addrClose;
+ /**
+ * 鍏冲湴鍧�
+ **/
+ private String addrClose = "65535";
- private int addrStop;
+ /**
+ * 鍋滃湴鍧�
+ **/
+ private String addrStop = "65535";
- private int addrOpenEnd;
+ /**
+ * 寮�鍒颁綅鍦板潃
+ **/
+ private String addrOpenEnd = "65535";
- private int addrCloseEnd;
+ /**
+ * 鍏冲埌浣嶅湴鍧�
+ **/
+ private String addrCloseEnd = "65535";
- private int addrOpenError;
+ /**
+ * 寮�鏁呴殰鍦板潃
+ **/
+ private String addrOpenError = "65535";
- private int addrCloseError;
+ /**
+ * 鍏虫晠闅滃湴鍧�
+ **/
+ private String addrCloseError = "65535";
}
diff --git a/igds-web/src/main/java/com/ld/igds/web/LoginController.java b/igds-web/src/main/java/com/ld/igds/web/LoginController.java
index d465ebb..2e030fd 100644
--- a/igds-web/src/main/java/com/ld/igds/web/LoginController.java
+++ b/igds-web/src/main/java/com/ld/igds/web/LoginController.java
@@ -8,7 +8,6 @@
import com.ld.igds.io.constant.OrderRespEnum;
import com.ld.igds.io.notify.NotifyWebInvoker;
import com.ld.igds.log.service.HLogLoginService;
-import com.ld.igds.models.LogLogin;
import com.ld.igds.sys.service.SysUserService;
import com.ld.igds.util.ContextUtil;
import com.ld.igds.util.FilesUtil;
diff --git a/igds-web/src/main/resources/application-pro5325.yml b/igds-web/src/main/resources/application-pro5325.yml
new file mode 100644
index 0000000..701c756
--- /dev/null
+++ b/igds-web/src/main/resources/application-pro5325.yml
@@ -0,0 +1,80 @@
+########################## 姹熻タ璧e窞椤圭洰 ##########################
+server:
+ port: 8888
+ context-path: /
+ connection-timeout: 5000
+ tomcat:
+ uri-encoding: UTF-8
+
+########################## datasourcec ##########################
+spring:
+ datasource:
+ db-base:
+ name: db-base
+ type: com.alibaba.druid.pool.DruidDataSource
+ url: jdbc:mysql://127.0.0.1:3306/igds_master?useUnicode=true&characterEncoding=utf-8
+ driver-class-name: com.mysql.jdbc.Driver
+ username: root
+ password: ukJp12Qf+elyBvGHkJ5MQMa95pfVm0oFBHefdEgDFKoFSjbgYa9PYfv5vlem5nvoXjQsP9tIIo53DvSbsl160Q==
+ public-key:
+ config-decrypt: true
+ initial-size: 5
+ min-idle: 5
+ max-active: 50
+ max-wait: 60000
+ time-between-eviction-runs-millis: 60000
+ min-evictable-idle-time-millis: 300000
+ validation-query: select 1 from dual
+ test-whileIdle: true
+ test-on-borrow: false
+ test-on-return: false
+ pool-prepared-statements: true
+ max-pool-prepared-statement-per-connection-size: 20
+ filters: stat
+ connection-properties: druid.stat.mergeSql=true;druid.stat.slowSqlMillis=5000
+ use-global-data-source-stat: true
+ removeAbandoned: true
+ removeAbandonedTimeout: 90
+ logAbandoned: true
+ poolPreparedStatements: true
+ maxPoolPreparedStatementPerConnectionSize: 20
+ db-sqlite:
+ name: db-sqlite
+ url: jdbc:sqlite:D:/app/igds/db/iot_cfg.db
+ driver-class-name: org.sqlite.JDBC
+ type: com.alibaba.druid.pool.DruidDataSource
+ username:
+ password:
+
+ # Redis鐩稿叧閰嶇疆
+ redis:
+ database: 0
+ host: 127.0.0.1
+ port: 6379
+ password: Abc123..
+ # 杩炴帴姹犳渶澶ц繛鎺ユ暟锛堜娇鐢ㄨ礋鍊艰〃绀烘病鏈夐檺鍒讹級
+ pool:
+ max-active: 200
+ max-wait: -1
+ max-idle: 10
+ min-idle: 0
+ timeout: 6000
+
+license:
+ subject: ld_license
+ publicAlias: publicCert
+ storePass: PUBLICFZZYXXJSGFYXGS888888
+ licensePath: D:/IGDS/license/license.lic
+ publicKeysStorePath: D:/IGDS/license/publicCerts.keystore
+
+########################## IGDS ##########################
+## 绯荤粺鎺ュ彛璺敱閰嶇疆 娉ㄦ剰鏁板瓧濡傛灉浠�0寮�澶寸殑璇濓紝鍚庡彴浼氬嚭鐜拌浆涔夛紝璇锋坊鍔�""
+igds:
+ default:
+ companyId: 5328
+ sys-name: 鏅烘収绮簱绠$悊绯荤粺
+ logo: logo-default.png
+ logo-title: logo-title-default.png
+ support: 椋庢鑷磋繙淇℃伅鎶�鏈偂浠芥湁闄愬叕鍙�
+ grian-add-point: N
+ file-path: D:/IGDS/FILE/
\ No newline at end of file
diff --git a/igds-web/src/main/resources/verb-conf.properties b/igds-web/src/main/resources/verb-conf.properties
index 2bc21bb..87648fa 100644
--- a/igds-web/src/main/resources/verb-conf.properties
+++ b/igds-web/src/main/resources/verb-conf.properties
@@ -173,4 +173,9 @@
verb.mapImg.5324_10.a=pfc_a.png
verb.mapImg.5324_10.b=pfc_b.png
verb.mapImg.5324_11.a=pfc_a.png
-verb.mapImg.5324_11.b=pfc_b.png
\ No newline at end of file
+verb.mapImg.5324_11.b=pfc_b.png
+
+
+## 5325_001
+verb.mapImg.5325_001.a=default_pfc_a.png
+verb.mapImg.5325_001.b=default_pfc_b.png
\ No newline at end of file
--
Gitblit v1.9.3