From 065b39de59eb4488592a59d53a1812fcc4b4d630 Mon Sep 17 00:00:00 2001 From: DELL <1525436766@qq.com> Date: 星期五, 19 四月 2024 10:21:52 +0800 Subject: [PATCH] 南瑞版本新增剩余容量数据读取 --- iec61850_forFoShanAES_Model/src/com/battdata_rt/BattData_RT_SQL.java | 90 ++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 89 insertions(+), 1 deletions(-) diff --git a/iec61850_forFoShanAES_Model/src/com/battdata_rt/BattData_RT_SQL.java b/iec61850_forFoShanAES_Model/src/com/battdata_rt/BattData_RT_SQL.java index fa272e0..1ead27d 100644 --- a/iec61850_forFoShanAES_Model/src/com/battdata_rt/BattData_RT_SQL.java +++ b/iec61850_forFoShanAES_Model/src/com/battdata_rt/BattData_RT_SQL.java @@ -246,6 +246,7 @@ if(sql_str_ser.trim().length() > 1) { sql_str_ser = ", mon_ser = CASE mon_num " + sql_str_ser + " ELSE mon_ser END "; } + String sql_str_JH = " "; for(int n=0; n<bd_rt.MonCount; n++) { tmp_dt = bd_rt.al_MonVol.get(n).mon_JH_curr; @@ -258,7 +259,20 @@ sql_str_JH = ", mon_JH_curr = CASE mon_num " + sql_str_JH + " ELSE mon_JH_curr END "; } - String sql_str_2 = sql_str_vol + sql_str_tmp + sql_str_res + sql_str_ser + sql_str_JH; + String sql_str_rest_cap = " "; + for(int n=0; n<bd_rt.MonCount; n++) { + tmp_dt = bd_rt.al_MonVol.get(n).mon_rest_cap; + //if(bd_rt.al_MonVol_RtOld.get(n).mon_rest_cap != tmp_dt) { + bd_rt.al_MonVol_RtOld.get(n).mon_rest_cap = tmp_dt; + sql_str_JH += " WHEN " + (n+1) + " THEN " + String.format("%1.1f", tmp_dt); + //} + } + if(sql_str_rest_cap.trim().length() > 1) { + sql_str_rest_cap = ", mon_rest_cap = CASE mon_num " + sql_str_JH + " ELSE mon_rest_cap END "; + } + + + String sql_str_2 = sql_str_vol + sql_str_tmp + sql_str_res + sql_str_ser + sql_str_JH + sql_str_rest_cap; if(sql_str_2.trim().length() > 1) { sql_str_2 += " WHERE BattGroupId=" + bd_rt.BattGroupId; /* @@ -1054,4 +1068,78 @@ } } /************************************************************************************************/ + 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