From ace6ea6287d6ec0ec6e1e95dc9ed344d15c2f746 Mon Sep 17 00:00:00 2001
From: DELL <1525436766@qq.com>
Date: 星期二, 02 七月 2024 14:16:34 +0800
Subject: [PATCH] V10.204 edit lijun at 2024-07-02 	1.新增全功能61850点位中的告警遥调设置命令 	2.新增全功能61850点位中的告警遥信数据读取以及更新至数据库

---
 iec61852_forQGN/src/com/battdata_rt/BattData_RT_SQL.java |   75 +++++++++++++++++++++++++++++++++++++
 1 files changed, 75 insertions(+), 0 deletions(-)

diff --git a/iec61852_forQGN/src/com/battdata_rt/BattData_RT_SQL.java b/iec61852_forQGN/src/com/battdata_rt/BattData_RT_SQL.java
index fa272e0..74d07f3 100644
--- a/iec61852_forQGN/src/com/battdata_rt/BattData_RT_SQL.java
+++ b/iec61852_forQGN/src/com/battdata_rt/BattData_RT_SQL.java
@@ -1054,4 +1054,79 @@
 		}
 	}
 	/************************************************************************************************/
+	/************************************************************************************************/
+	public static void updateBattAlarm_RT_RamDB_Table(MysqlConnPool conn_pool, BattData_RT bd_rt)
+	{
+		Sql_Mysql sql = new Sql_Mysql(conn_pool);
+		try 
+		{
+			String sql_str = "UPDATE " + Sql_Mysql.BattRtAlarm_Table
+					+ " SET "
+					+ " record_time='" + Com.getDateTimeFormat(new Date(), Com.DTF_YMDhms) + "'";
+		
+			boolean tmp_dt = false;
+			String sql_str_vol = " ";
+			for(int n=0; n<bd_rt.MonCount; n++) {
+				tmp_dt = bd_rt.al_MonVol.get(n).monvol_alm;
+				sql_str_vol += " WHEN " + (n+1) + " THEN " +  tmp_dt;
+			}
+			if(sql_str_vol.trim().length() > 1) {
+				sql_str_vol = ", monvol_alm = CASE mon_num " + sql_str_vol + " ELSE monvol_alm END ";
+			}
+			
+			String sql_str_tmp = " ";
+			for(int n=0; n<bd_rt.MonCount; n++) {
+				tmp_dt = bd_rt.al_MonVol.get(n).montmp_alm;
+				sql_str_tmp += " WHEN " + (n+1) + " THEN " + tmp_dt;
+			}
+			if(sql_str_tmp.trim().length() > 1) {
+				sql_str_tmp = ", montmp_alm = CASE mon_num " + sql_str_tmp + " ELSE montmp_alm END ";
+			}
+			
+			String sql_str_res = " ";
+			for(int n=0; n<bd_rt.MonCount; n++) {
+				tmp_dt = bd_rt.al_MonVol.get(n).monres_alm;
+				sql_str_res += " WHEN " + (n+1) + " THEN " +  tmp_dt;
+			}
+			if(sql_str_res.trim().length() > 1) {
+				sql_str_res = ", monres_alm = CASE mon_num " + sql_str_res + " ELSE monres_alm END ";
+			}
+			
+			String sql_str_cap = " ";
+			for(int n=0; n<bd_rt.MonCount; n++) {
+				tmp_dt = bd_rt.al_MonVol.get(n).monrestcap_alm;
+				sql_str_cap += " WHEN " + (n+1) + " THEN " + tmp_dt;
+			}
+			if(sql_str_cap.trim().length() > 1) {
+				sql_str_cap = ", monrestcap_alm = CASE mon_num " + sql_str_cap + " ELSE monrestcap_alm END ";
+			}
+			String sql_str_2 = sql_str_vol + sql_str_tmp + sql_str_res + sql_str_cap ;
+			if(sql_str_2.trim().length() > 1) {
+				sql_str_2 += " WHERE BattGroupId=" + bd_rt.BattGroupId;
+				/*
+						  + " AND mon_num IN (";
+				for(int n=0; n<brt.MonCount; n++) {
+					if(n > 0) {
+						sql_str_2 += ",";
+					}
+					sql_str_2 += (n+1);
+				}
+				sql_str_2 += ")";
+				*/
+			} else {
+				sql_str_2 = " WHERE BattGroupId=" + bd_rt.BattGroupId;
+			}
+			
+			sql_str += sql_str_2;
+			//System.out.println(bd_rt.MonCount);
+			//System.out.println(sql_str);
+			sql.sqlMysqlExecute(sql_str);
+		} catch (SQLException e) {
+			// TODO Auto-generated catch block
+			sql.logger.error("updateBattAlarm_RT_RamDB_Table():" + e.toString(), e);
+		} finally {
+			sql.close_con();
+		}
+	}
+	/************************************************************************************************/
 }

--
Gitblit v1.9.1