BattMonitor_FBS9100S_ForXinJiang/bin/com/battmonitor/base/AppParam$MonitorParam.classBinary files differ
BattMonitor_FBS9100S_ForXinJiang/bin/com/battmonitor/base/AppParam.classBinary files differ
BattMonitor_FBS9100S_ForXinJiang/bin/com/battmonitor/sql/Sql_Mysql.classBinary files differ
BattMonitor_FBS9100S_ForXinJiang/bin/com/dev/btse/comm/BattRealDataPro_Thread.classBinary files differ
BattMonitor_FBS9100S_ForXinJiang/bin/com/dev/btse/comm/FBS9100_Task_Thread_SQL.classBinary files differ
BattMonitor_FBS9100S_ForXinJiang/bin/com/version_inf/version_inf.txt
@@ -1,7 +1,13 @@ V10.656 edit at date 2024-07-18 lijun 1.历史实时数据保存参数根据'db_param.tb_app_param'表中的参数进行识别 历史实时数据存储间隔(秒)->realdata_SaveDataTimeInterval 60 real-time history data save data interval by seconds 历史实时数据存储间隔(天)->realdata_SaveDataTimeMax 90 real-time history data save data max time for batttest data count to insert to mysql server V10.655 edit at date 2024-04-07 lijun 1.新增设备类型9150-山东定制版BTS,新增旁路以及对应状态传递 2.历史实时数据最久保存1年的历史实时数据 V10.654 edit at date 2023-09-07 lijun 1.修复记录历史数据时缺少db_batt_testdata.tb_battresdata_inf表,导致历史数据中的db_batt_testdata.tb_battresdata_inf数据无法插入导致历史数据记录故障 BattMonitor_FBS9100S_ForXinJiang/bin/main/main_MonitorServer_FBS9100S.classBinary files differ
BattMonitor_FBS9100S_ForXinJiang/config.xml
@@ -63,7 +63,7 @@ <devfbs9100_check_mode>IP</devfbs9100_check_mode> <devfbs9100_encry_en>true</devfbs9100_encry_en> <realdatarecord_fn_cofig> <realdatarecord_fn_en>false</realdatarecord_fn_en> <realdatarecord_fn_en>true</realdatarecord_fn_en> <realdatarecord_mintimelong>60</realdatarecord_mintimelong> <realdatarecord_maxsavetime>1098</realdatarecord_maxsavetime> </realdatarecord_fn_cofig> BattMonitor_FBS9100S_ForXinJiang/src/com/battmonitor/base/AppParam.java
@@ -102,6 +102,11 @@ m_MonitorParam.poweroff_BattTestGroupCountMax = param.m_MonitorParam.poweroff_BattTestGroupCountMax; m_MonitorParam.poweroff_MonVolChangeLevel = param.m_MonitorParam.poweroff_MonVolChangeLevel; m_MonitorParam.poweroff_TestDataRecordCountMax = param.m_MonitorParam.poweroff_TestDataRecordCountMax; m_MonitorParam.BattJunHengFN = param.m_MonitorParam.BattJunHengFN; m_MonitorParam.realdata_SaveDataTimeInterval = param.m_MonitorParam.realdata_SaveDataTimeInterval; m_MonitorParam.realdata_SaveDataTimeMax = param.m_MonitorParam.realdata_SaveDataTimeMax; } class MonitorParam { @@ -124,6 +129,9 @@ public int poweroff_BattTestGroupCountMax = 10; public boolean BattJunHengFN = false; public int realdata_SaveDataTimeInterval = 60; //历史实时数据存储数据间隔 public int realdata_SaveDataTimeMax = 90; //历史实时数据最大保存周期 } @@ -236,6 +244,14 @@ return m_MonitorParam.BattJunHengFN; } public int getRealdata_SaveDataTimeInterval() { return m_MonitorParam.realdata_SaveDataTimeInterval; } public int getRealdata_SaveDataTimeMax() { return m_MonitorParam.realdata_SaveDataTimeMax; } /** * 从数据库中获取参数的值,并且创建tb_app_param表 */ @@ -243,88 +259,106 @@ { Sql_Mysql sql = new Sql_Mysql(m_Conn_Pool.getConn()); String sql_str; ResultSet res; ResultSet res = null; sql_str = "INSERT INTO " + Sql_Mysql.App_Param_Table + " (param_name, " + "param_value, " + "param_caption)" + " VALUES "; try { sql.sqlMysqlUseDB(Sql_Mysql.DB_PARAM); if(false == MysqlDataTable_Exist) { MysqlDataTable_Exist = sql.sqlMysqlCheckIfTableExist(AppParamTableName); res = sql.sqlMysqlQuery("SELECT * FROM " + Sql_Mysql.App_Param_Table + " WHERE param_name = 'discharge_SaveDataTimeInterval'"); if(!res.next()) { sql.sqlMysqlExecute(sql_str + "('discharge_SaveDataTimeInterval', '" + this.m_MonitorParam.discharge_SaveDataTimeInterval + "','discharge_TimeInterval for every data insert into db_batt_testdata by seconds')"); } if(false == MysqlDataTable_Exist) { System.out.println(AppParamTableName + " is not exist, create it now..."); ArrayList<String> al_sqlstr = new ArrayList<String>(); sql_str = "CREATE TABLE `" + AppParamTableName + "` " + "( `num` INT NOT NULL AUTO_INCREMENT, " + "`param_name` VARCHAR(50) NULL, " + "`param_value` VARCHAR(50) NULL, " + "`param_caption` VARCHAR(200) NULL, " + "PRIMARY KEY (`num`));"; al_sqlstr.add(sql_str); sql_str = "INSERT INTO " + AppParamTableName + " (param_name, " + "param_value, " + "param_caption)" + " VALUES " //-------------------------------------------------------------------------------// + "('discharge_SaveDataTimeInterval', '10', " + "'discharge_TimeInterval for every data insert into db_batt_testdata by seconds'), " res = sql.sqlMysqlQuery("SELECT * FROM " + Sql_Mysql.App_Param_Table + " WHERE param_name = 'discharge_MonVolChangeLevel'"); if(!res.next()) { sql.sqlMysqlExecute(sql_str + "('discharge_MonVolChangeLevel', '" + this.m_MonitorParam.discharge_MonVolChangeLevel+ "', "+ "'discharge_MonVolChangeLevel for batt test data to save');"); } res = sql.sqlMysqlQuery("SELECT * FROM " + Sql_Mysql.App_Param_Table + " WHERE param_name = 'discharge_TestTimeLongMinimum'"); if(!res.next()) { sql.sqlMysqlExecute(sql_str + "('discharge_TestTimeLongMinimum', '" + this.m_MonitorParam.discharge_TestTimeLongMinimum + "', " + "'discharge_TestTimeLongMinimum for batttest data to store');"); } + "('discharge_MonVolChangeLevel', '0.05', " + "'discharge_MonVolChangeLevel for batt test data to save'), " + "('discharge_TestTimeLongMinimum', '1800', " + "'discharge_TestTimeLongMinimum for batttest data to store'), " + "('discharge_TestDataRecordCountMax', '10000', " + "'discharge_TestDataRecordCountMax for batttest data count to insert to mysql server'), " + "('discharge_BattTestGroupCountMax', '10', " + "'discharge_BattTestGroupCountMax for batttest thread count to work at the same time'), " //-------------------------------------------------------------------------------// + "('charge_SaveDataTimeInterval', '10', " + "'charge_TimeInterval for every data insert into db_batt_testdata by seconds'), " + "('charge_MonVolChangeLevel', '0.05', " + "'charge_MonVolChangeLevel for batt test data to save'), " + "('charge_TestTimeLongMinimum', '1800', " + "'charge_TestTimeLongMinimum for batttest data to store'), " + "('charge_TestDataRecordCountMax', '10000', " + "'charge_TestDataRecordCountMax for batttest data count to insert to mysql server'), " + "('charge_BattTestGroupCountMax', '10', " + "'charge_BattTestGroupCountMax for batttest thread count to work at the same time'), " //-------------------------------------------------------------------------------// + "('poweroff_SaveDataTimeInterval', '10', " + "'poweroff_TimeInterval for every data insert into db_batt_testdata by seconds'), " + "('poweroff_MonVolChangeLevel', '0.05', " + "'poweroff_MonVolChangeLevel for batt test data to save'), " + "('poweroff_TestTimeLongMinimum', '1800', " + "'poweroff_TestTimeLongMinimum for batttest data to store'), " + "('poweroff_TestDataRecordCountMax', '10000', " + "'poweroff_TestDataRecordCountMax for batttest data count to insert to mysql server'), " + "('poweroff_BattTestGroupCountMax', '10', " + "'poweroff_BattTestGroupCountMax for batttest thread count to work at the same time'), " //-------------------------------------------------------------------------------// + "('BattJunHengFN', 'false', " + "'BattJunHengFN for batt monomer to be balance')"; al_sqlstr.add(sql_str); for(int n=0; n<al_sqlstr.size(); n++) sql.sqlMysqlExecute(al_sqlstr.get(n)); res = sql.sqlMysqlQuery("SELECT * FROM " + Sql_Mysql.App_Param_Table + " WHERE param_name = 'discharge_TestDataRecordCountMax'"); if(!res.next()) { sql.sqlMysqlExecute(sql_str + "('discharge_TestDataRecordCountMax', '" + this.m_MonitorParam.discharge_TestDataRecordCountMax + "', " + "'discharge_TestDataRecordCountMax for batttest data count to insert to mysql server');"); } res = sql.sqlMysqlQuery("SELECT * FROM " + Sql_Mysql.App_Param_Table + " WHERE param_name = 'discharge_BattTestGroupCountMax'"); if(!res.next()) { sql.sqlMysqlExecute(sql_str + "('discharge_BattTestGroupCountMax', '" + this.m_MonitorParam.discharge_BattTestGroupCountMax + "', " + "'discharge_BattTestGroupCountMax for batttest thread count to work at the same time');"); } //-------------------------------------------------------------------------------// res = sql.sqlMysqlQuery("SELECT * FROM " + Sql_Mysql.App_Param_Table + " WHERE param_name = 'charge_SaveDataTimeInterval'"); if(!res.next()) { sql.sqlMysqlExecute(sql_str + "('charge_SaveDataTimeInterval', '" + this.m_MonitorParam.charge_SaveDataTimeInterval + "', " + "'charge_TimeInterval for every data insert into db_batt_testdata by seconds');"); } sql_str = "SELECT * FROM " + AppParamTableName; res = sql.sqlMysqlQuery("SELECT * FROM " + Sql_Mysql.App_Param_Table + " WHERE param_name = 'charge_MonVolChangeLevel'"); if(!res.next()) { sql.sqlMysqlExecute(sql_str + "('charge_MonVolChangeLevel', '" + this.m_MonitorParam.charge_MonVolChangeLevel + "', " + "'charge_MonVolChangeLevel for batt test data to save');"); } res = sql.sqlMysqlQuery("SELECT * FROM " + Sql_Mysql.App_Param_Table + " WHERE param_name = 'charge_TestTimeLongMinimum'"); if(!res.next()) { sql.sqlMysqlExecute(sql_str + "('charge_TestTimeLongMinimum', '" + this.m_MonitorParam.charge_TestTimeLongMinimum + "', " + "'charge_TestTimeLongMinimum for batttest data to store');"); } res = sql.sqlMysqlQuery("SELECT * FROM " + Sql_Mysql.App_Param_Table + " WHERE param_name = 'charge_TestDataRecordCountMax'"); if(!res.next()) { sql.sqlMysqlExecute(sql_str + "('charge_TestDataRecordCountMax', '" + this.m_MonitorParam.charge_TestDataRecordCountMax + "', " + "'charge_TestDataRecordCountMax for batttest data count to insert to mysql server');"); } res = sql.sqlMysqlQuery("SELECT * FROM " + Sql_Mysql.App_Param_Table + " WHERE param_name = 'charge_BattTestGroupCountMax'"); if(!res.next()) { sql.sqlMysqlExecute(sql_str + "('charge_BattTestGroupCountMax', '" + this.m_MonitorParam.charge_BattTestGroupCountMax + "', " + "'charge_BattTestGroupCountMax for batttest thread count to work at the same time')"); } //-------------------------------------------------------------------------------// res = sql.sqlMysqlQuery("SELECT * FROM " + Sql_Mysql.App_Param_Table + " WHERE param_name = 'poweroff_SaveDataTimeInterval'"); if(!res.next()) { sql.sqlMysqlExecute(sql_str + "('poweroff_SaveDataTimeInterval', '" + this.m_MonitorParam.poweroff_SaveDataTimeInterval + "', " + "'poweroff_TimeInterval for every data insert into db_batt_testdata by seconds');"); } res = sql.sqlMysqlQuery("SELECT * FROM " + Sql_Mysql.App_Param_Table + " WHERE param_name = 'poweroff_MonVolChangeLevel'"); if(!res.next()) { sql.sqlMysqlExecute(sql_str + "('poweroff_MonVolChangeLevel', '" + this.m_MonitorParam.poweroff_MonVolChangeLevel + "', " + "'poweroff_MonVolChangeLevel for batt test data to save');"); } res = sql.sqlMysqlQuery("SELECT * FROM " + Sql_Mysql.App_Param_Table + " WHERE param_name = 'poweroff_TestTimeLongMinimum'"); if(!res.next()) { sql.sqlMysqlExecute(sql_str + "('poweroff_TestTimeLongMinimum', '" + this.m_MonitorParam.poweroff_TestTimeLongMinimum + "', " + "'poweroff_TestTimeLongMinimum for batttest data to store')"); } res = sql.sqlMysqlQuery("SELECT * FROM " + Sql_Mysql.App_Param_Table + " WHERE param_name = 'poweroff_TestDataRecordCountMax'"); if(!res.next()) { sql.sqlMysqlExecute(sql_str + "('poweroff_TestDataRecordCountMax', '" + this.m_MonitorParam.poweroff_TestDataRecordCountMax + "', " + "'poweroff_TestDataRecordCountMax for batttest data count to insert to mysql server')"); } res = sql.sqlMysqlQuery("SELECT * FROM " + Sql_Mysql.App_Param_Table + " WHERE param_name = 'poweroff_BattTestGroupCountMax'"); if(!res.next()) { sql.sqlMysqlExecute(sql_str + "('poweroff_BattTestGroupCountMax', '" + this.m_MonitorParam.poweroff_BattTestGroupCountMax + "', " + "'poweroff_BattTestGroupCountMax for batttest thread count to work at the same time')"); } //-------------------------------------------------------------------------------// res = sql.sqlMysqlQuery("SELECT * FROM " + Sql_Mysql.App_Param_Table + " WHERE param_name = 'BattJunHengFN'"); if(!res.next()) { sql.sqlMysqlExecute(sql_str + "('BattJunHengFN', '" + this.m_MonitorParam.BattJunHengFN + "', " + "'BattJunHengFN for batt monomer to be balance')"); } //-------------------------------------------------------------------------------// res = sql.sqlMysqlQuery("SELECT * FROM " + Sql_Mysql.App_Param_Table + " WHERE param_name = 'realdata_SaveDataTimeInterval'"); if(!res.next()) { sql.sqlMysqlExecute(sql_str + "('realdata_SaveDataTimeInterval', '" + this.m_MonitorParam.realdata_SaveDataTimeInterval + "', " + "'real-time history data save data interval by seconds')"); } //-------------------------------------------------------------------------------// res = sql.sqlMysqlQuery("SELECT * FROM " + Sql_Mysql.App_Param_Table + " WHERE param_name = 'realdata_SaveDataTimeMax'"); if(!res.next()) { sql.sqlMysqlExecute(sql_str + "('realdata_SaveDataTimeMax', '" + this.m_MonitorParam.realdata_SaveDataTimeMax + "', " + "'real-time history data save data max time for batttest data count to insert to mysql server')"); } sql_str = "SELECT * FROM " + Sql_Mysql.App_Param_Table; res = sql.sqlMysqlQuery(sql_str); String pm_name; while(res.next()) @@ -366,6 +400,13 @@ //---------------------------------------------------------------------------// else if(pm_name.equals("BattJunHengFN")) m_MonitorParam.BattJunHengFN = res.getBoolean("param_value"); //---------------------------------------------------------------------------// else if(pm_name.equals("realdata_SaveDataTimeInterval")) m_MonitorParam.realdata_SaveDataTimeInterval = res.getInt("param_value"); //---------------------------------------------------------------------------// else if(pm_name.equals("realdata_SaveDataTimeMax")) m_MonitorParam.realdata_SaveDataTimeMax = res.getInt("param_value"); //---------------------------------------------------------------------------// } } catch (SQLException e) { logger.error(e.toString(), e); @@ -417,6 +458,10 @@ if(m_MonitorParam.poweroff_BattTestGroupCountMax < 10) m_MonitorParam.poweroff_BattTestGroupCountMax = 10; if(m_MonitorParam.poweroff_BattTestGroupCountMax > 350) m_MonitorParam.poweroff_BattTestGroupCountMax = 350; if(m_MonitorParam.realdata_SaveDataTimeInterval < 10) m_MonitorParam.realdata_SaveDataTimeInterval = 10; if(m_MonitorParam.realdata_SaveDataTimeMax < 31) m_MonitorParam.realdata_SaveDataTimeMax = 31; //--------------------------------------------------------------------------------------------------------// } } BattMonitor_FBS9100S_ForXinJiang/src/com/battmonitor/sql/Sql_Mysql.java
@@ -143,6 +143,9 @@ public final static String Li9130_Bms_Alm_Table = DB_RamDB + ".`tb_li9130_bms_alm`"; //锂电BTS的BMS告警信息表 /***************************** db_param 数据库 **********************************/ public final static String App_Param_Table = DB_PARAM + ".`tb_app_param`"; /***************************** db_dev_testparam 数据库 **********************************/ public final static String Batt_TestParam_Table = DB_DEV_TESTPARAM + ".tb_batt_testparam_"; //放电参数记录表 BattMonitor_FBS9100S_ForXinJiang/src/com/dev/btse/comm/BattRealDataPro_Thread.java
@@ -7,6 +7,7 @@ import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; import com.battmonitor.base.AppParam; import com.battmonitor.base.Com; import com.battmonitor.data.BattData_RT; import com.battmonitor.data.BattData_RT_Array; @@ -27,10 +28,10 @@ public BattData_RT_Array data; public static int MinRecordTimeLong = 60; //每次记录的最短时间间隔 public static int MaxRecordTimeLong = 366; //最大记录历史数据时间 public static int MaxRecordTimeLong = 90 ; //最大记录历史数据时间 private Logger logger = null; public BattRealDataPro_Thread(MysqlConnPool con_pool, AppConfig cfg, BattData_RT_Array data) { public BattRealDataPro_Thread(MysqlConnPool con_pool, AppParam param, BattData_RT_Array data) { this.cfg = cfg; this.con_pool = con_pool; @@ -39,6 +40,9 @@ //MinRecordTimeLong = cfg.getRealDataRecord_MinTimeLong(); //MaxRecordTimeLong = cfg.getRealDataRecord_MaxSaveTime(); MinRecordTimeLong = param.getRealdata_SaveDataTimeInterval(); MaxRecordTimeLong = param.getRealdata_SaveDataTimeMax(); } BattMonitor_FBS9100S_ForXinJiang/src/com/dev/btse/comm/FBS9100_Task_Thread_SQL.java
@@ -333,9 +333,15 @@ //sql.sqlMysqlExecute(str3); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } finally { if(null != res) { try { res.close(); } catch (SQLException e) { e.printStackTrace(); } } sql.close_con(); } } @@ -995,16 +1001,23 @@ + " WHERE dev_id=" + m_pm.dev_id; int state_t = 0; Sql_Mysql sql = new Sql_Mysql(con_pool.getConn()); ResultSet res = null; try { //sql.logger.debug(sql_str); ResultSet res = sql.sqlMysqlQuery(sql_str_base); res = sql.sqlMysqlQuery(sql_str_base); if(res.next()) { state_t = res.getInt("station_stat"); } } catch (SQLException e) { // TODO Auto-generated catch block sql.logger.error("FBS9100_Task_Thread_SQL.getFbs9100StationState_ById():" + e.toString(), e); } finally { if(null != res) { try { res.close(); } catch (SQLException e) { sql.logger.error("FBS9100_Task_Thread_SQL.getFbs9100StationState_ById():" + e.toString(), e); } } sql.close_con(); } return state_t; @@ -1016,16 +1029,22 @@ + " WHERE dev_id=" + m_pm.dev_id; long flow_sum = 0; Sql_Mysql sql = new Sql_Mysql(con_pool.getConn()); ResultSet res = null; try { //sql.logger.debug(sql_str); ResultSet res = sql.sqlMysqlQuery(sql_str_base); res = sql.sqlMysqlQuery(sql_str_base); if(res.next()) { flow_sum = res.getLong("dev_data_flowsum"); } } catch (SQLException e) { // TODO Auto-generated catch block sql.logger.error("FBS9100_Task_Thread_SQL.getFbs9100DataCommFlowSum_ById():" + e.toString(), e); } finally { if(null != res) { try { res.close(); } catch (SQLException e) { } } sql.close_con(); } @@ -1312,9 +1331,15 @@ } } } catch (SQLException e) { // TODO Auto-generated catch block sql.logger.error("FBS9100_Task_Thread_SQL.queryBTS_DCDC_AlarmStat():" + e.toString(), e); } finally { if(null != res) { try { res.close(); } catch (SQLException e) { sql.logger.error("FBS9100_Task_Thread_SQL.queryBTS_DCDC_AlarmStat():" + e.toString(), e); } } sql.close_con(); } @@ -1411,9 +1436,15 @@ test_cnt = res.getInt("dev_restest_count"); } } catch (SQLException e) { // TODO Auto-generated catch block sql.logger.error("FBS9100_Task_Thread_SQL.queryFBS9100_ResTestCnt():" + e.toString(), e); } finally { if(null != res) { try { res.close(); } catch (SQLException e) { sql.logger.error("FBS9100_Task_Thread_SQL.queryFBS9100_ResTestCnt():" + e.toString(), e); } } sql.close_con(); } @@ -1488,6 +1519,13 @@ } catch (SQLException e) { sql.logger.error("FBS9100_Task_Thread_SQL.queryFbs9100SetParamCmdBydev_id():" + e.toString(), e); } finally { if(null != res) { try { res.close(); } catch (SQLException e) { sql.logger.error("FBS9100_Task_Thread_SQL.queryFbs9100SetParamCmdBydev_id():" + e.toString(), e); } } sql.close_con(); } } @@ -1527,6 +1565,13 @@ } catch (SQLException e) { sql.logger.error("FBS9100_Task_Thread_SQL.queryFbs9100SetParamBydev_id():" + e.toString(), e); } finally { if(null != res) { try { res.close(); } catch (SQLException e) { sql.logger.error("FBS9100_Task_Thread_SQL.queryFbs9100SetParamBydev_id():" + e.toString(), e); } } sql.close_con(); } } @@ -1711,6 +1756,13 @@ } catch (SQLException e) { sql.logger.error("FBS9100_Task_Thread_SQL.queryFbs9100SysParamCmdBydev_id():" + e.toString(), e); } finally { if(null != res) { try { res.close(); } catch (SQLException e) { sql.logger.error("FBS9100_Task_Thread_SQL.queryFbs9100SysParamCmdBydev_id():" + e.toString(), e); } } sql.close_con(); } } @@ -1779,6 +1831,13 @@ } catch (SQLException e) { sql.logger.error("FBS9100_Task_Thread_SQL.queryFbs9100SysParamBydev_id():" + e.toString(), e); } finally { if(null != res) { try { res.close(); } catch (SQLException e) { sql.logger.error("FBS9100_Task_Thread_SQL.queryFbs9100SysParamBydev_id():" + e.toString(), e); } } sql.close_con(); } } @@ -1846,6 +1905,13 @@ } catch (SQLException e) { sql.logger.error("FBS9100_Task_Thread_SQL.queryFbs9100BattParamCmdBydev_id():" + e.toString(), e); } finally { if(null != res) { try { res.close(); } catch (SQLException e) { sql.logger.error("FBS9100_Task_Thread_SQL.queryFbs9100BattParamCmdBydev_id():" + e.toString(), e); } } sql.close_con(); } } @@ -1914,6 +1980,13 @@ } catch (SQLException e) { sql.logger.error("FBS9100_Task_Thread_SQL.queryFbs9100BattParamBydev_id():" + e.toString(), e); } finally { if(null != res) { try { res.close(); } catch (SQLException e) { sql.logger.error("FBS9100_Task_Thread_SQL.queryFbs9100BattParamBydev_id():" + e.toString(), e); } } sql.close_con(); } } @@ -1984,6 +2057,13 @@ } catch (SQLException e) { sql.logger.error("FBS9100_Task_Thread_SQL.queryBTSGPRSCmdBydev_id():" + e.toString(), e); } finally { if(null != res) { try { res.close(); } catch (SQLException e) { sql.logger.error("FBS9100_Task_Thread_SQL.queryBTSGPRSCmdBydev_id():" + e.toString(), e); } } sql.close_con(); } @@ -2005,6 +2085,13 @@ } catch (SQLException e) { sql.logger.error("FBS9100_Task_Thread_SQL.queryBTSGPRS_ATCmd_Bydev_id():" + e.toString(), e); } finally { if(null != res) { try { res.close(); } catch (SQLException e) { sql.logger.error("FBS9100_Task_Thread_SQL.queryBTSGPRS_ATCmd_Bydev_id():" + e.toString(), e); } } sql.close_con(); } @@ -2382,6 +2469,13 @@ } catch (SQLException e) { sql.logger.error("FBS9100_Task_Thread_SQL.updateFBS9100S_NiBianStateTable():" + e.toString(), e); } finally { if(null != res) { try { res.close(); } catch (SQLException e) { sql.logger.error("FBS9100_Task_Thread_SQL.updateFBS9100S_NiBianStateTable():" + e.toString(), e); } } sql.close_con(); } } @@ -2493,16 +2587,22 @@ } sql_delete_strs += "db_batt_history." + res.getString("TABLE_NAME"); System.out.println("删除:"+res.getString("TABLE_NAME")+"\t at "+Com.getDateTimeFormat(new Date(), Com.DTF_YMDhms)); sql.logger.error("删除:"+res.getString("TABLE_NAME")+"\t at "+Com.getDateTimeFormat(new Date(), Com.DTF_YMDhms)); count++; } if(count >0) { sql.sqlMysqlTotalExecute(sql_delete_strs); } res.close(); } catch (SQLException e) { sql.logger.error("FBS9100_Task_Thread_SQL.deleteHistoryData():" + e.toString(), e); } finally { if(null != res) { try { res.close(); } catch (SQLException e) { sql.logger.error("FBS9100_Task_Thread_SQL.deleteHistoryData():" + e.toString(), e); } } sql.close_con(); } } @@ -2859,6 +2959,13 @@ } catch (SQLException e) { sql.logger.error("FBS9100_Task_Thread_SQL.queryFbs9100JhParamBydev_id():" + e.toString(), e); } finally { if(null != res) { try { res.close(); } catch (SQLException e) { sql.logger.error("FBS9100_Task_Thread_SQL.queryFbs9100JhParamBydev_id():" + e.toString(), e); } } sql.close_con(); } } @@ -2891,6 +2998,13 @@ } catch (SQLException e) { sql.logger.error("FBS9100_Task_Thread_SQL.queryFbs9100MutlParamBydev_id():" + e.toString(), e); } finally { if(null != res) { try { res.close(); } catch (SQLException e) { sql.logger.error("FBS9100_Task_Thread_SQL.queryFbs9100MutlParamBydev_id():" + e.toString(), e); } } sql.close_con(); } } BattMonitor_FBS9100S_ForXinJiang/src/com/version_inf/version_inf.txt
@@ -1,7 +1,13 @@ V10.656 edit at date 2024-07-18 lijun 1.历史实时数据保存参数根据'db_param.tb_app_param'表中的参数进行识别 历史实时数据存储间隔(秒)->realdata_SaveDataTimeInterval 60 real-time history data save data interval by seconds 历史实时数据存储间隔(天)->realdata_SaveDataTimeMax 90 real-time history data save data max time for batttest data count to insert to mysql server V10.655 edit at date 2024-04-07 lijun 1.新增设备类型9150-山东定制版BTS,新增旁路以及对应状态传递 2.历史实时数据最久保存1年的历史实时数据 V10.654 edit at date 2023-09-07 lijun 1.修复记录历史数据时缺少db_batt_testdata.tb_battresdata_inf表,导致历史数据中的db_batt_testdata.tb_battresdata_inf数据无法插入导致历史数据记录故障 BattMonitor_FBS9100S_ForXinJiang/src/main/main_MonitorServer_FBS9100S.java
@@ -31,7 +31,7 @@ /**************************************************************************/ /**************************************************************************/ public final static boolean app_debug = false; public final static double m_VersionNum = 10.655; public final static double m_VersionNum = 10.656; public final static String m_Version = "Welcome To Use BattMonitorFBS9100S V" + m_VersionNum + " RC_20201110"; /**************************************************************************/ @@ -245,7 +245,7 @@ if(true == m_AppConfig.isRealDataRecord_fn_En()) { BattRealDataPro_Thread batt_realdata = new BattRealDataPro_Thread(GB_MysqlConnPool, m_AppConfig, GB_DataArray); BattRealDataPro_Thread batt_realdata = new BattRealDataPro_Thread(GB_MysqlConnPool, GB_App_Param, GB_DataArray); batt_realdata.start(); }