From eb0b6aa7c7208c65049eb7e40ab87ce8ccd11a8b Mon Sep 17 00:00:00 2001
From: DELL <1525436766@qq.com>
Date: 星期二, 14 一月 2025 15:06:48 +0800
Subject: [PATCH] 2.新增自定义通信端口,可通过电池信息配置中的通信端口连接指定的端口号

---
 iec61852_forQGN/src/com/battdata_rt/BattData_RT_Array.java |   14 ++++++++++++--
 1 files changed, 12 insertions(+), 2 deletions(-)

diff --git a/iec61852_forQGN/src/com/battdata_rt/BattData_RT_Array.java b/iec61852_forQGN/src/com/battdata_rt/BattData_RT_Array.java
index a170457..a5db68b 100644
--- a/iec61852_forQGN/src/com/battdata_rt/BattData_RT_Array.java
+++ b/iec61852_forQGN/src/com/battdata_rt/BattData_RT_Array.java
@@ -83,7 +83,7 @@
 			sql.sqlMysqlUseDB(Sql_Mysql.DB_BATT_INF);
 			
 			String sql_str = "SELECT DISTINCT "
-							+ " FBSDeviceId,FBSDeviceIp,BattGroupName6,GroupIndexInFBSDevice,FBSDeviceName,"
+							+ " FBSDeviceId,FBSDeviceIp,BattGroupName6,GroupIndexInFBSDevice,FBSDeviceName,comm_port,"
 							+ " BattGroupId,BattGroupNum,MonCount,BattFloatCurrent,FloatVolLevel,MonCapStd,MonVolStd"
 							+ " FROM " + Sql_Mysql.BattInf_Table
 							+ " WHERE FLOOR(FBSDeviceId/10000)=61852"
@@ -106,6 +106,11 @@
 				float float_vol_lev = res.getFloat("FloatVolLevel");
 				float float_curr_lev = res.getFloat("BattFloatCurrent");
 				int GroupIndexInFBSDevice = res.getInt("GroupIndexInFBSDevice");
+				int commPort = res.getInt("comm_port");								//閫氫俊绔彛
+				if(commPort == 0) {
+					commPort = 102;
+				}
+				
 				if(GroupIndexInFBSDevice > 3) {
 					GroupIndexInFBSDevice = 3;
 				}
@@ -136,6 +141,11 @@
 						
 						if(GroupIndexInFBSDevice != brt.GroupIndexInFBSDevice) {
 							brt.GroupIndexInFBSDevice = GroupIndexInFBSDevice;
+							param_changed = true;
+						}
+						
+						if(commPort != brt.getCommPort()) {
+							brt.setCommPort(commPort);
 							param_changed = true;
 						}
 						
@@ -178,7 +188,7 @@
 					if(rtdata.MonCount < 0) {
 						rtdata.MonCount = 0;
 					}
-					
+					rtdata.setCommPort(commPort);				//璁剧疆閫氫俊绔彛
 					rtdata.MonStdCap = res.getFloat("MonCapStd");
 					rtdata.MonStdVol = res.getFloat("MonVolStd");
 					rtdata.setBattFloatVolCurrLevel(res.getFloat("FloatVolLevel"), res.getFloat("BattFloatCurrent"));

--
Gitblit v1.9.1