package com.dec.fbs9100; import java.sql.ResultSet; import java.sql.SQLException; import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Date; import java.util.List; import com.base.Com; import com.battdata_rt.BattData_RT; public class FBS9100_Task_Thread_SQL { /** * ������������ tb_fbs9100_state ��������������������id������������ip������������������������ * @param con_pool * @param al_param */ public static void createFBS9100StateTableOnRam(MysqlConnPool con_pool, ArrayList al_param) { String str1 = "DROP TABLE IF EXISTS " + Sql_Mysql.FBS9100State_Table; String str2 = "CREATE TABLE IF NOT EXISTS " + Sql_Mysql.FBS9100State_Table + " ( `num` BIGINT NOT NULL AUTO_INCREMENT, " + "`dev_ip` varchar(20) NOT NULL DEFAULT '127.0.0.0', " + "`dev_version` varchar(20) NOT NULL DEFAULT '0', " + "`dev_id` BIGINT NOT NULL DEFAULT 0, " + "`op_cmd` INT NOT NULL DEFAULT 0, " + "`record_datetime` varchar(20) NOT NULL DEFAULT '2015-12-02 12:10:00', " + "`dev_datetime` varchar(20) NOT NULL DEFAULT '2015-12-02 12:10:00', " + "`dev_testtype` INT NOT NULL DEFAULT 0, " + "`dev_testgroupnum` INT NOT NULL DEFAULT 0, " + "`dev_workstate` INT NOT NULL DEFAULT 0, " + "`dev_alarmstate` INT NOT NULL DEFAULT 0, " + "`dev_onlinevollow` BOOLEAN NOT NULL DEFAULT false, " + "`dev_eachgroup_battsum` INT NOT NULL DEFAULT 0, " + "`dev_captest_onlinevol` float NOT NULL DEFAULT 0, " + "`dev_captest_groupvol` float NOT NULL DEFAULT 0, " + "`dev_captest_curr` float NOT NULL DEFAULT 0, " + "`dev_captest_cap` float NOT NULL DEFAULT 0, " + "`dev_captest_timelong` INT NOT NULL DEFAULT 0, " + "`dev_restest_moncount` INT NOT NULL DEFAULT 0, " + "`dev_restest_monindex` INT NOT NULL DEFAULT 0, " + "`dev_commcount` INT NOT NULL DEFAULT 0, " + "`dev_errcommcount` INT NOT NULL DEFAULT 0, " + "`dev_rxnullerrcount` INT NOT NULL DEFAULT 0, " + "`dev_conresist` float NOT NULL DEFAULT 0, " + "`dev_concurr` float NOT NULL DEFAULT 0, " + "`dev_condvoldp` float NOT NULL DEFAULT 0, " + "`dev_condcurr` float NOT NULL DEFAULT 0, " + "`dev_61850alarms` varchar(20) NOT NULL DEFAULT '', " + " UNIQUE INDEX index_dev_id_uniq (`dev_id`), " + " PRIMARY KEY (`num`) ) " + " ENGINE=InnoDB DEFAULT CHARSET=utf8"; String str3 = ""; if(al_param.size() > 0) { str3 = "INSERT INTO " + Sql_Mysql.FBS9100State_Table + " (dev_ip, dev_id) VALUES"; } for(int n=0; n 0) { str3 += ", "; } str3 += " ('" + al_param.get(n).dev_ipaddr + "'," + al_param.get(n).dev_id + ")"; } Sql_Mysql sql = new Sql_Mysql(con_pool); try { sql.sqlMysqlExecute(str1); sql.sqlMysqlExecute(str2); if(str3.length() > 0) { sql.sqlMysqlExecute(str3); } } catch (SQLException e) { // TODO Auto-generated catch block sql.logger.error("FBS9100_Task_Thread_SQL.createFBS9100StateTableOnRam():" + e.toString(), e); } finally { sql.close_con(); } } /** * ������������ tb_fbs9100s_dcdc_data ��������������������id������������ip������������������������ * @param con_pool * @param al_param */ public static void createFBS9100S_DCDC_DataTableOnRam(MysqlConnPool con_pool, ArrayList al_param) { String str1 = "DROP TABLE IF EXISTS " + Sql_Mysql.FBS9100S_DcDcState_Table; String str2 = "CREATE TABLE IF NOT EXISTS " + Sql_Mysql.FBS9100S_DcDcState_Table + " ( `num` BIGINT NOT NULL AUTO_INCREMENT, " + "`dev_id` BIGINT NOT NULL DEFAULT 0, " + "`dcdc_num` BIGINT NOT NULL DEFAULT 0, " + "`dcdc_Vsys` float NOT NULL DEFAULT 0, " + "`dcdc_Vout` float NOT NULL DEFAULT 0, " + "`dcdc_Vbat` float NOT NULL DEFAULT 0, " + "`dcdc_Iout` float NOT NULL DEFAULT 0, " + "`dcdc_Ibuck` float NOT NULL DEFAULT 0, " + "`dcdc_Tmp_Dis` float NOT NULL DEFAULT 0, " + "`dcdc_Tmp_Chr` float NOT NULL DEFAULT 0, " + "`dcdc_SMR_Alarm1` INT NOT NULL DEFAULT 0, " + "`dcdc_SMR_Alarm2` INT NOT NULL DEFAULT 0, " + "`dcdc_version` INT NOT NULL DEFAULT 0, " + "`dcdc_ModeSetComm` INT NOT NULL DEFAULT 0, " + "`dcdc_RunSetComm` INT NOT NULL DEFAULT 0, " + "`dcdc_BuckISet` float NOT NULL DEFAULT 0, " + "`dcdc_DisVolSet` float NOT NULL DEFAULT 0, " + "`dcdc_DisCurrSet` float NOT NULL DEFAULT 0, " + "`dcdc_CommTxCnt` INT NOT NULL DEFAULT 0, " + "`dcdc_CommRxCnt` INT NOT NULL DEFAULT 0, " + " UNIQUE INDEX index_dcdc_num_uniq (`dcdc_num`), " + " PRIMARY KEY (`num`) ) " + " ENGINE=MEMORY DEFAULT CHARSET=utf8"; String str3 = ""; if(al_param.size() > 0) { str3 = "INSERT INTO " + Sql_Mysql.FBS9100S_DcDcState_Table + " (dev_id) VALUES"; } for(int n=0; n 0) { str3 += ", "; } str3 += " (" + al_param.get(n).dev_id + ")"; } Sql_Mysql sql = new Sql_Mysql(con_pool); try { sql.sqlMysqlExecute(str1); sql.sqlMysqlExecute(str2); if(str3.length() > 0) { sql.sqlMysqlExecute(str3); } } catch (SQLException e) { // TODO Auto-generated catch block sql.logger.error("FBS9100_Task_Thread_SQL.createFBS9100S_DCDC_DataTableOnRam():" + e.toString(), e); } finally { sql.close_con(); } } /** * ������������id������������ip������������������������������������������� * @param con_pool * @param al_param */ /* public static void insertorupdateFBS9100StateTableOnRam(MysqlConnPool con_pool, FBS9100_StatAndParam param) { String str1 = ""; String str2 = ""; String str3 = ""; if(param != null) { str1 = "SELECT num,dev_id,dev_errcommcount,dev_commcount from " +Sql_Mysql.FBS9100State_Table+ " where dev_id = " + param.dev_id; str2 = "INSERT INTO " + Sql_Mysql.FBS9100State_Table + " (dev_ip, dev_id) VALUES"; str2 += " ('" + param.dev_ipaddr + "'," + param.dev_id + ")"; str3 = "UPDATE " +Sql_Mysql.FBS9100State_Table+ " SET dev_ip = '"+param.dev_ipaddr+"' where dev_id = " + param.dev_id; } Sql_Mysql sql = new Sql_Mysql(con_pool.getConn()); try { if(param != null){ ResultSet rs = sql.sqlMysqlQuery(str1); if(rs.next()){ param.m_FBS_VCData.m_SysState.ErrCommCount = rs.getInt("dev_errcommcount"); param.m_FBS_VCData.m_SysState.CommCount = rs.getInt("dev_commcount"); sql.sqlMysqlExecute(str3); }else{ sql.sqlMysqlExecute(str2); } } } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } finally { sql.close_con(); } } */ /** * ������������ tb_fbs9100_setparam ��������������������������id������������ip������������������������ * @param con_pool * @param al_param */ public static void createFBS9100SetTestParamTableOnRam(MysqlConnPool con_pool, ArrayList al_param) { String str1 = "DROP TABLE IF EXISTS " + Sql_Mysql.FBS9100SetParam_Table; String str2 = "CREATE TABLE IF NOT EXISTS " + Sql_Mysql.FBS9100SetParam_Table + " ( `num` BIGINT NOT NULL AUTO_INCREMENT, " + "`dev_ip` varchar(20) NOT NULL DEFAULT '127.0.0.0', " + "`dev_id` BIGINT NOT NULL DEFAULT 0, " + "`op_cmd` INT NOT NULL DEFAULT 0, " + "`TestCmd` INT NOT NULL DEFAULT 0, " + "`HourRate` INT NOT NULL DEFAULT 0, " + "`DisCurr` FLOAT NOT NULL DEFAULT 0, " + "`DisCap` FLOAT NOT NULL DEFAULT 0, " + "`DisTime` INT NOT NULL DEFAULT 0, " + "`GroupVol_LOW` FLOAT NOT NULL DEFAULT 0, " + "`MonomerVol_LOW` FLOAT NOT NULL DEFAULT 0, " + "`MonomerLowCount` INT NOT NULL DEFAULT 0, " + "`BattGroupNum` INT NOT NULL DEFAULT 0, " + "`OnlineVolLowAction` INT NOT NULL DEFAULT 0, " + "`DCVolHighLimit` FLOAT NOT NULL DEFAULT 0, " + "`ChargeCurrSet` FLOAT NOT NULL DEFAULT 0, " + " UNIQUE INDEX index_dev_id_uniq (`dev_id`), " + " PRIMARY KEY (`num`) ) " + " ENGINE=MEMORY DEFAULT CHARSET=utf8"; String str3 = ""; if(al_param.size() > 0) { str3 = "INSERT INTO " + Sql_Mysql.FBS9100SetParam_Table + " (dev_ip, dev_id) VALUES"; } for(int n=0; n 0) { str3 += ", "; } str3 += " ('" + al_param.get(n).dev_ipaddr + "'," + al_param.get(n).dev_id + ")"; } Sql_Mysql sql = new Sql_Mysql(con_pool); try { sql.sqlMysqlExecute(str1); sql.sqlMysqlExecute(str2); if(str3.length() > 0) { sql.sqlMysqlExecute(str3); } } catch (SQLException e) { sql.logger.error("FBS9100_Task_Thread_SQL.createFBS9100SetTestParamTableOnRam():" + e.toString(), e); } finally { sql.close_con(); } } /** * ������������id������������ip������������������������������������������� * @param con_pool * @param al_param */ /* public static void insertorupdateFBS9100SetTestParamTableOnRam(MysqlConnPool con_pool, FBS9100_StatAndParam param) { String str1 = ""; String str2 = ""; String str3 = ""; if(param != null) { str1 = "SELECT num,dev_id from " +Sql_Mysql.FBS9100SetParam_Table+ " where dev_id = " + param.dev_id; str2 = "INSERT INTO " + Sql_Mysql.FBS9100SetParam_Table + " (dev_ip, dev_id) VALUES"; str2 += " ('" + param.dev_ipaddr + "'," + param.dev_id + ")"; str3 = "UPDATE " +Sql_Mysql.FBS9100SetParam_Table+ " SET dev_ip = '"+param.dev_ipaddr+"' where dev_id = " + param.dev_id; } Sql_Mysql sql = new Sql_Mysql(con_pool.getConn()); try { if(param != null){ ResultSet rs = sql.sqlMysqlQuery(str1); if(rs.next()){ sql.sqlMysqlExecute(str3); }else{ sql.sqlMysqlExecute(str2); } } } catch (SQLException e) { e.printStackTrace(); } finally { sql.close_con(); } } */ /*******************************website*************************************/ public static void updateAppStartTime(MysqlConnPool con_pool,double version){ Sql_Mysql sql = new Sql_Mysql(con_pool); Date day=new Date(); SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); String str1 = " UPDATE `web_site`.`tb_process_survey` SET ProcessTime="+"'" +df.format(day)+"'"+", Process_starttime="+"'"+df.format(day)+"'" + ", ProcessVersion='NW_V" + version + "' WHERE " + "ProcessName='BMS_FBS61850_BATT' AND " + "ServerName='BMS_FBS61850_BATT'"; try { sql.sqlMysqlUseDB("web_site"); sql.sqlMysqlUpdate(str1); } catch (SQLException e) { // TODO Auto-generated catch block sql.logger.error("FBS9100_Task_Thread_SQL.updateAppStartTime():" + e.toString(), e); } finally { sql.close_con(); } } public static void runinsertime(MysqlConnPool con_pool){ //record runtime Sql_Mysql sql = new Sql_Mysql(con_pool); String str2 = " UPDATE web_site.tb_process_survey SET ProcessTime=" + "'" + Com.getDateTimeFormat(new Date(), Com.DTF_YMDhms)+"'" + " WHERE ProcessName='BMS_FBS61850_BATT' AND " + "ServerName='BMS_FBS61850_BATT'"; try { sql.sqlMysqlUseDB("web_site"); sql.sqlMysqlUpdate(str2); } catch (SQLException e) { //ConsoleClient.connection(args); sql.logger.error("FBS9100_Task_Thread_SQL.runinsertime():" + e.toString(), e); }finally{ sql.close_con(); } } /** * ������������ Sql_Mysql.RamDB_CMCC_POWER_Data ��������������������id������������������������ * @param con_pool * @param al_param */ public static void createFBS9100CmccPowerDataOnRam(MysqlConnPool con_pool, ArrayList al_param) { String str1 = "DROP TABLE IF EXISTS " + Sql_Mysql.RamDB_CMCC_POWER_Data; String str2 = "CREATE TABLE IF NOT EXISTS " + Sql_Mysql.RamDB_CMCC_POWER_Data + " ( `num` BIGINT NOT NULL AUTO_INCREMENT, " + "`dev_id` BIGINT NOT NULL DEFAULT 0, " + "`vol1` float NOT NULL DEFAULT 0, " + "`vol2` float NOT NULL DEFAULT 0, " + "`vol3` float NOT NULL DEFAULT 0, " + "`vol4` float NOT NULL DEFAULT 0, " + "`vol5` float NOT NULL DEFAULT 0, " + "`curr1` float NOT NULL DEFAULT 0, " + "`curr2` float NOT NULL DEFAULT 0, " + "`curr3` float NOT NULL DEFAULT 0, " + "`curr4` float NOT NULL DEFAULT 0, " + "`curr5` float NOT NULL DEFAULT 0, " + " UNIQUE INDEX index_dev_id_uniq (`dev_id`), " + " PRIMARY KEY (`num`) ) " + " ENGINE=InnoDB DEFAULT CHARSET=utf8"; String str3 = ""; if(al_param.size() > 0) { str3 = "INSERT INTO " + Sql_Mysql.RamDB_CMCC_POWER_Data + " (dev_id) VALUES"; } for(int n=0; n 0) { str3 += ", "; } str3 += " (" + al_param.get(n).dev_id + ")"; } Sql_Mysql sql = new Sql_Mysql(con_pool); try { sql.sqlMysqlExecute(str1); sql.sqlMysqlExecute(str2); if(str3.length() > 0) { sql.sqlMysqlExecute(str3); } } catch (SQLException e) { // TODO Auto-generated catch block sql.logger.error("FBS9100_Task_Thread_SQL.createFBS9100CmccPowerDataOnRam():" + e.toString(), e); } finally { sql.close_con(); } } /** * ������������id������������ip������������������������������������������� * @param con_pool * @param al_param */ /* public static void insertorupdateFBS9100CmccPowerDataTableOnRam(MysqlConnPool con_pool, FBS9100_StatAndParam param) { String str1 = ""; String str2 = ""; if(param != null) { str1 = "SELECT num,dev_id from " +Sql_Mysql.RamDB_CMCC_POWER_Data+ " where dev_id = " + param.dev_id; str2 = "INSERT INTO " + Sql_Mysql.RamDB_CMCC_POWER_Data + " (dev_id) VALUES"; str2 += " (" + param.dev_id + ")"; } Sql_Mysql sql = new Sql_Mysql(con_pool.getConn()); try { if(param != null) { ResultSet rs = sql.sqlMysqlQuery(str1); if(false == rs.next()) { sql.sqlMysqlExecute(str2); } } } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } finally { sql.close_con(); } } */ /***********************************************************************************/ /***********************************************************************************/ /** * ������������������id������������ tb_fbs9100_state ������ * @param con_pool * @param v_data * @param dev_id */ /* public static void updateFbs9100CmccPowerDataByDev_Id(MysqlConnPool con_pool, FBS9100_CMCC_Power cmcc_data, int dev_id) { String sql_str_base = Sql_Mysql.RamDB_CMCC_POWER_Data + " SET " + "dev_id=" + dev_id + ", " + "vol1=" + cmcc_data.Vol[0] + ", " + "vol2=" + cmcc_data.Vol[1] + ", " + "vol3=" + cmcc_data.Vol[2] + ", " + "vol4=" + cmcc_data.Vol[3] + ", " + "vol5=" + cmcc_data.Vol[4] + ", " + "curr1=" + cmcc_data.Curr[0] + ", " + "curr2=" + cmcc_data.Curr[1] + ", " + "curr3=" + cmcc_data.Curr[2] + ", " + "curr4=" + cmcc_data.Curr[3] + ", " + "curr5=" + cmcc_data.Curr[4]; //+ " WHERE dev_id=" + dev_id; //String sql_str_update = "UPDATE " + sql_str_base; String sql_str_replace = "REPLACE INTO " + sql_str_base; Sql_Mysql sql = new Sql_Mysql(con_pool.getConn()); try { //System.out.println(sql_str); sql.sqlMysqlExecute(sql_str_replace); } catch (SQLException e) { // TODO Auto-generated catch block //e.printStackTrace(); } finally { sql.close_con(); } } */ /***********************************************************************************/ /** * 更新数据库表 tb_fbs9100_state 更新61850设备工作状态 * @param con_pool * @param v_data * @param dev_id */ public static void updateFbs9100StateByDev_Id(MysqlConnPool con_pool, FBS9100_StatAndParam m_pm) { FBS9100_VCData v_data = m_pm.m_FBS_VCData; int TestGroup_index = v_data.m_SysState.TestGroupNum; if(TestGroup_index > 0) { TestGroup_index -= 1; } if((TestGroup_index>=FBS9100_ComBase.BattGroupCountMax) || (TestGroup_index<0)){ TestGroup_index = 0; } String sql_str_base = Sql_Mysql.FBS9100State_Table + " SET " + "dev_id=" + m_pm.dev_id + ", " + "dev_ip='" + m_pm.dev_ipaddr + "', " + "dev_version='" + m_pm.m_DevVersion + "', " + "record_datetime=" + "'" + Com.getDateTimeFormat(v_data.m_SysState.Record_DateTime, Com.DTF_YMDhms) + "'," + "dev_datetime='" + v_data.m_SysState.DTime.year + "-" + v_data.m_SysState.DTime.month + "-" + v_data.m_SysState.DTime.day + " " + v_data.m_SysState.DTime.hour + ":" + v_data.m_SysState.DTime.minute + ":" + v_data.m_SysState.DTime.second + "', " + "dev_testtype=" + v_data.m_SysState.TestType+ ", " + "dev_testgroupnum=" + v_data.m_SysState.TestGroupNum + ", " + "dev_workstate=" + v_data.m_SysState.WorkState + ", " + "dev_alarmstate=" + v_data.m_SysState.AlarmState + ", " + "dev_temp=" + v_data.m_SysState.temp + ", " + "dev_onlinevollow=" + v_data.m_SysState.OnlineVolLow + ", " + "dev_eachgroup_battsum=" +v_data.m_SysState.eachgroup_battsum + ", " + "dev_captest_onlinevol=" + v_data.onlinevol[TestGroup_index] + ", " + "dev_captest_groupvol=" + v_data.groupvol[TestGroup_index] + ", " + "dev_captest_curr=" + v_data.battcurr[TestGroup_index] + ", " + "dev_captest_cap=" + v_data.battcap[TestGroup_index] + ", " + "dev_captest_timelong=" + v_data.testTime.getSecondCount() + ", " + "dev_restest_monindex=" + v_data.m_SysState.restest_monindex + ", " + "dev_restest_moncount=" + v_data.m_SysState.restest_moncount + ", " + "dev_restest_count=" + v_data.m_SysState.resttest_count + ", " + "dev_commcount=" + v_data.m_SysState.CommCount + ", " + "dev_errcommcount=" + v_data.m_SysState.ErrCommCount + ", " + "dev_rxnullerrcount=" + v_data.m_SysState.RxNullErrCount + ", " + "dev_last_captest_stop_type=" + v_data.m_SysState.CapTestStopType + ", " + "dev_conresist=" + v_data.m_SysState.conresist + ", " + "dev_concurr=" + v_data.m_SysState.concurr + ", " + "dev_condvoldp=" + v_data.m_SysState.condvoldp + ", " + "dev_condcurr=" + v_data.m_SysState.condcurr + ", " + "dev_61850alarms= '" +v_data.m_SysState.dev_61850alam+"' "; String sql_str_update = "UPDATE " + sql_str_base + " WHERE dev_id=" + m_pm.dev_id; String sql_str_replace = "REPLACE INTO " + sql_str_base; if(v_data.m_SysState.CapTestStopType>=0 && v_data.m_SysState.CapTestStopType<=256) { Sql_Mysql sql = new Sql_Mysql(con_pool); ResultSet res = null; try { res = sql.sqlMysqlQuery("SELECT num FROM " + Sql_Mysql.FBS9100State_Table + " WHERE dev_id = " + m_pm.dev_id); if(res.next()) { //System.out.println(sql_str_update); sql.sqlMysqlExecute(sql_str_update); } else { sql.sqlMysqlExecute(sql_str_replace); } } catch (SQLException e) { sql.logger.error("FBS9100_Task_Thread_SQL.updateFbs9100StateByDev_Id():" + e.toString(), e); } finally { if(null != res) { try { res.close(); } catch (SQLException e) { sql.logger.error("FBS9100_Task_Thread_SQL.updateFbs9100StateByDev_Id():" + e.toString(), e); } } sql.close_con(); } } } /***********************************************************************************/ /* * 更新指定设备除硫模块的工作状态 */ public static void inseartOrUpdateFBS9100SFODState(MysqlConnPool con_pool, FBS9100_StatAndParam m_pm,FBS9100s_Fod_State fodstate){ int dev_id = m_pm.dev_id; String sql_str_base = Sql_Mysql.FBS9100sFodState_Table + " SET " + "dev_id=" + dev_id + ", " + "BattGroupId=" + m_pm.BattGroupId + ", " + "record_time='" + Com.getDateTimeFormat(new Date(), Com.DTF_YMDhms) + "', " + "RestTime_one=" + fodstate.RestTime_one + ", " + "WorkState_one=" + fodstate.WorkState_one + ", " + "VGroupVol_one=" + fodstate.VGroupVol_one + ", " + "VpeakVol_one=" + fodstate.VpeakVol_one + "," + "RestTime_two=" + fodstate.RestTime_two + ", " + "WorkState_two=" + fodstate.WorkState_two + ", " + "VGroupVol_two=" + fodstate.VGroupVol_two + ", " + "VpeakVol_two=" + fodstate.VpeakVol_two + "," + "RestTime_three=" + fodstate.RestTime_three + ", " + "WorkState_three=" + fodstate.WorkState_three + ", " + "VGroupVol_three=" + fodstate.VGroupVol_three + ", " + "VpeakVol_three=" + fodstate.VpeakVol_three + "," + "RestTime_four=" + fodstate.RestTime_four + ", " + "WorkState_four=" + fodstate.WorkState_four + ", " + "VGroupVol_four=" + fodstate.VGroupVol_four + ", " + "VpeakVol_four=" + fodstate.VpeakVol_four; String sql_str_update = "UPDATE " + sql_str_base + " WHERE dev_id=" + m_pm.dev_id; String sql_str_replace = "REPLACE INTO " + sql_str_base; Sql_Mysql sql = new Sql_Mysql(con_pool); ResultSet res = null; try { res = sql.sqlMysqlQuery("SELECT num FROM " + Sql_Mysql.FBS9100sFodState_Table + " WHERE dev_id = " + m_pm.dev_id); if(res.next()) { sql.sqlMysqlExecute(sql_str_update); } else { sql.sqlMysqlExecute(sql_str_replace); } } catch (SQLException e) { sql.logger.error("FBS9100_Task_Thread_SQL.inseartOrUpdateFBS9100SFODState():" + e.toString(), e); } finally { if(null != res) { try { res.close(); } catch (SQLException e) { // e.printStackTrace(); sql.logger.error("FBS9100_Task_Thread_SQL.inseartOrUpdateFBS9100SFODState():" + e.toString(), e); } } sql.close_con(); } } /***********************************************************************************/ /** * ������������������id������������ tb_fbs9100s_dcdc_data ������ * @param con_pool * @param v_data * @param dev_id */ /* public static void updateFbs9100S_DCDC_Data_ByDev_Id(MysqlConnPool con_pool, FBS9100S_NT_DCDC_Data[] dcdc_data, int dev_id) { for(int n=0; n al_param) { String sql_str = "SELECT * FROM " + Sql_Mysql.FBS9100SetParam_Table; Sql_Mysql sql = new Sql_Mysql(con_pool); ResultSet res = null; try { res = sql.sqlMysqlQuery(sql_str); while(res.next()) { FBS9100_StatAndParam param = null; int devid = res.getInt("dev_id"); for(int n=0; n al_param) { for(int n=0; n al_param) { for(int n=0; n bd_al) { Sql_Mysql sql = new Sql_Mysql(conn_pool); try { String sql_str = "UPDATE " + Sql_Mysql.BattRtState_Table + " SET " + " rec_datetime='" + Com.getDateTimeFormat(new Date(), Com.DTF_YMDhms) + "',"; sql_str += " batt_count = CASE BattGroupId "; for(int n=0; n 0) { sql_str += ","; } sql_str += brt.BattGroupId; } sql_str += ")"; //System.out.println(sql_str); sql.sqlMysqlExecute(sql_str); } catch (SQLException e) { // TODO Auto-generated catch block sql.logger.error("FBS9100_Task_Thread_SQL.updateBattState_RT_RamDB_Table():" + e.toString(), e); } finally { sql.close_con(); } } /************************************************************************************************/ /***********************************************************************************/ public static void insertFBSDevStatChangeInfToTable(MysqlConnPool conn_pool, int fbsdev_id, int last_stat, int now_stat, int stat_change_reason) { Sql_Mysql sql = new Sql_Mysql(conn_pool); try { String sql_str = "INSERT INTO " + Sql_Mysql.FBSDevStateChangeInf_Table + " (dev_id,rec_time,last_stat,now_stat,state_change_reason) " + " VALUES (" + + fbsdev_id + "," + "'" + Com.getDateTimeFormat(new Date(), Com.DTF_YMDhms) + "'," + last_stat + "," + now_stat + "," + stat_change_reason + ")"; //System.out.println(sql_str); sql.sqlMysqlExecute(sql_str); } catch (SQLException e) { // TODO Auto-generated catch block sql.logger.error("FBS9100_Task_Thread_SQL.insertFBSDevStatChangeInfToTable():" + e.toString(), e); } finally { sql.close_con(); } } /************************************************************************************************/ /** * 插入或更新均衡供电模块参数状态信息 * @param conn_pool * @param param */ public static void insertOrUpdateJhStateTable(MysqlConnPool conn_pool,FBS9100_StatAndParam param) { String sql_str_base = Sql_Mysql.FBS9100_61850_jhstate_Table + "SET dev_id = "+param.dev_id+"," + "dev_version = '"+param.fbs9100_jhpowerState.getDev_version()+"'," + "input_vol_total = "+param.fbs9100_jhpowerState.getInput_vol_total()+"," + "output_vol_total="+param.fbs9100_jhpowerState.getOutput_vol_total()+"," + "input_curr_total="+param.fbs9100_jhpowerState.getInput_curr_total()+"," + "output_curr_total="+param.fbs9100_jhpowerState.getOutput_curr_total()+"," + "output_vol_one="+param.fbs9100_jhpowerState.getOutput_vol_one()+"," + "output_vol_two="+param.fbs9100_jhpowerState.getOutput_vol_two()+"," + "output_vol_three="+param.fbs9100_jhpowerState.getOutput_vol_three()+"," + "output_vol_four="+param.fbs9100_jhpowerState.getOutput_vol_four()+"," + "output_vol_five="+param.fbs9100_jhpowerState.getOutput_vol_five()+"," + "output_vol_six="+param.fbs9100_jhpowerState.getOutput_vol_six()+"," + "output_vol_seven="+param.fbs9100_jhpowerState.getOutput_vol_seven()+"," + "output_vol_eight="+param.fbs9100_jhpowerState.getOutput_vol_eight()+"," + "output_vol_nine="+param.fbs9100_jhpowerState.getOutput_vol_nine()+"," + "output_vol_ten="+param.fbs9100_jhpowerState.getOutput_vol_ten()+"," + "dev_temp="+param.fbs9100_jhpowerState.getDev_temp(); String sql_str_update = "UPDATE " + sql_str_base + " WHERE dev_id=" + param.dev_id; String sql_str_replace = "REPLACE INTO " + sql_str_base; Sql_Mysql sql = new Sql_Mysql(conn_pool); ResultSet res = null; try { res = sql.sqlMysqlQuery("SELECT num FROM " + Sql_Mysql.FBS9100_61850_jhstate_Table + " WHERE dev_id = " + param.dev_id); if(res.next()) { sql.sqlMysqlExecute(sql_str_update); } else { sql.sqlMysqlExecute(sql_str_replace); } } catch (SQLException e) { sql.logger.error("FBS9100_Task_Thread_SQL.insertOrUpdateJhStateTable():" + e.toString(), e); } finally { if(null != res) { try { res.close(); } catch (SQLException e) { sql.logger.error("FBS9100_Task_Thread_SQL.insertOrUpdateJhStateTable():" + e.toString(), e); } } sql.close_con(); } } /** * 修改设备得离线养护参数 * @param m_ConnPool * @param m_StatAndParam */ public static void updateFbs9100SetParamOffLineYHParamBydev_id(MysqlConnPool con_pool, FBS9100_StatAndParam param) { // TODO Auto-generated method stub if(param.op_cmd == FBS9100_ComBase.CMD_GetOffLineYHParam_ACK) { String sql_str_base = Sql_Mysql.FBS9100SetParam_Table + " SET " + " dev_id=" + param.dev_id + ", " + " op_cmd=" + FBS9100_ComBase.CMD_GetOffLineYHParam_ACK + ", " + " MonomerTmp_High =" + param.m_FBS_DiscParamFromDev.MonomerTmp_High + ", " + " OnLineVol_Low =" + param.m_FBS_DiscParamFromDev.OnLineVol_Low + ", " + " OffLineYH_Cycle=" + param.m_FBS_DiscParamFromDev.OffLineYH_Cycle + "," + " OffLineYHstarttime = '" + Com.getDateTimeFormat(param.m_FBS_DiscParamFromDev.OffLineYHstarttime, Com.DTF_YMDhms) + "'," + " OffLineYHTimes=" + param.m_FBS_DiscParamFromDev.OffLineYHTimes + "," + " OffLineYHOnceCycle=" + param.m_FBS_DiscParamFromDev.OffLineYHOnceCycle + " where dev_id = " + param.dev_id; String sql_str_update = "UPDATE " + sql_str_base; Sql_Mysql sql = new Sql_Mysql(con_pool); try { //System.out.println(sql_str_replace); sql.sqlMysqlExecute(sql_str_update); } catch (SQLException e) { sql.logger.error("FBS9100_Task_Thread_SQL.updateFbs9100SetParamOffLineYHParamBydev_id():" + e.toString(), e); } finally { sql.close_con(); } param.m_FBS_DiscParam.op_cmd = FBS9100_ComBase.CMD_GetOffLineYHParam_ACK; param.op_cmd = FBS9100_ComBase.CMD_NULL; } } /****************************************************************************************/ /** * 查询设备的系统参数 * @param con_pool * @param param */ public static void queryFBS9100SysParamBydev_id(MysqlConnPool con_pool, FBS9100_StatAndParam param) { String sql_str = "SELECT * FROM " + Sql_Mysql.FBS9100SysParam_Table + " where dev_id = " + param.dev_id; Sql_Mysql sql = new Sql_Mysql(con_pool); ResultSet res = null; try { res = sql.sqlMysqlQuery(sql_str); if(res.next()) { if(null != param) { param.m_FBS_SysParam.op_cmd = res.getInt("op_cmd"); param.m_FBS_SysParam.dev_ip = res.getString("dev_ip"); param.m_FBS_SysParam.dev_id = res.getInt("dev_id"); param.m_FBS_SysParam.IPADDR = res.getString("IPADDR"); param.m_FBS_SysParam.SubIPADDR = res.getString("SubIPADDR"); param.m_FBS_SysParam.NetGateADDR = res.getString("NetGateADDR"); param.m_FBS_SysParam.GroupVolRange = res.getInt("GroupVolRange"); param.m_FBS_SysParam.GroupVolSorce = res.getInt("GroupVolSorce"); param.m_FBS_SysParam.CurrentRange = res.getInt("CurrentRange"); param.m_FBS_SysParam.CurrentTyte = res.getInt("CurrentTyte"); param.m_FBS_SysParam.MonomerOrder = res.getInt("MonomerOrder"); param.m_FBS_SysParam.BackLightTime = res.getInt("BackLightTime"); param.m_FBS_SysParam.MACADDR = res.getString("MACADDR"); param.m_FBS_SysParam.LoaderCount = res.getInt("LoaderCount"); param.m_FBS_SysParam.DtCardCount = res.getInt("DtCardCount"); param.m_FBS_SysParam.PowerBreakChargeCurr = res.getFloat("PowerBreakChargeCurr"); param.m_FBS_SysParam.MajorBattGroupNum = res.getInt("MajorBattGroupNum"); param.m_FBS_SysParam.POF_BG_Boost_Cnt = res.getInt("POF_BG_Boost_Cnt"); param.m_FBS_SysParam.POF_BG_Boost_VolStop = res.getFloat("POF_BG_Boost_VolStop"); param.m_FBS_SysParam.POF_BG_Boost_VolStart = res.getFloat("POF_BG_Boost_VolStart"); } } } 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(); } } /** * 修改设备的系统参数 * @param m_ConnPool * @param m_StatAndParam */ public static void updateFbs9100SysParamParamBydev_id(MysqlConnPool con_pool, FBS9100_StatAndParam param) { if(param.op_cmd == FBS9100_ComBase.CMD_GetSYSSetParamAck) { FBS9100_SysParam sysparam = param.m_FBS_SysParam; String sql_str_base = Sql_Mysql.FBS9100SysParam_Table + " SET " + " dev_id=" + param.dev_id + ", " + " op_cmd=" + FBS9100_ComBase.CMD_GetSYSSetParamAck + ", " + " GroupVolSorce =" + sysparam.GroupVolSorce + ", " //在线电压低阀值 + " CurrentTyte =" + sysparam.CurrentTyte + ", " //浮充电流阀值 + " PowerBreakChargeCurr =" + sysparam.PowerBreakChargeCurr + ", " //电流异常阀值 + " POF_BG_Boost_VolStop =" + sysparam.POF_BG_Boost_VolStop + ", " //电压过高阀值 + " POF_BG_Boost_VolStart =" + sysparam.POF_BG_Boost_VolStart + ", " //电压过低阀值 + " MonomerOrder =" + sysparam.MonomerOrder + ", " //主从机模式 + " LoaderCount =" + sysparam.LoaderCount + ", " //主从机使能 + " DtCardCount =" + sysparam.DtCardCount + " "; //干接点使能 //+ " where dev_id = " + param.dev_id; //String sql_str_update = "UPDATE " + sql_str_base; String sql_str_replace = " REPLACE INTO " + sql_str_base; Sql_Mysql sql = new Sql_Mysql(con_pool); try { //System.out.println(sql_str_replace); sql.sqlMysqlExecute(sql_str_replace); } catch (SQLException e) { sql.logger.error("FBS9100_Task_Thread_SQL.queryFBS9100SysParamBydev_id():" + e.toString(), e); } finally { sql.close_con(); } param.m_FBS_SysParam.op_cmd = FBS9100_ComBase.CMD_GetSYSSetParamAck; param.op_cmd = FBS9100_ComBase.CMD_NULL; } } /** * 修改当前返回状态 * @param con_pool * @param param */ public static void updateFbs9100SysParamCmdBydev_id(MysqlConnPool con_pool, FBS9100_StatAndParam param) { if(param.op_cmd == FBS9100_ComBase.CMD_ClearSysAlarm_ACK || param.op_cmd == FBS9100_ComBase.CMD_SetSYSSetParamAck || param.op_cmd == FBS9100_ComBase.CMD_GetJuHengParamAck || param.op_cmd == FBS9100_ComBase.CMD_FAIL || param.op_cmd == FBS9100_ComBase.CMD_SetJuHengParamAck ) { String sql_str_base = Sql_Mysql.FBS9100SysParam_Table + " SET " + "dev_id=" + param.dev_id + ", " + "op_cmd=" + param.op_cmd + " "; String sql_str_update = "UPDATE " + sql_str_base + " Where dev_id = " + param.dev_id;; //String sql_str_replace = "REPLACE INTO " + sql_str_base; //System.out.println(sql_str_replace); Sql_Mysql sql = new Sql_Mysql(con_pool); try { sql.sqlMysqlExecute(sql_str_update); //sql.sqlMysqlExecute(sql_str_replace); } catch (SQLException e) { // TODO Auto-generated catch block sql.logger.error("FBS9100_Task_Thread_SQL.updateFbs9100SysParamCmdBydev_id():" + e.toString(), e); } finally { sql.close_con(); } param.m_FBS_DiscParam.op_cmd = param.op_cmd; param.op_cmd = FBS9100_ComBase.CMD_NULL; } } /** * 创建历史事件记录表 */ public static void createTbBtsStateChange_infTable(MysqlConnPool pool) { String sql_str = "CREATE TABLE IF NOT EXISTS " + Sql_Mysql.Tb_BtsStateChange_inf + " (" + " `num` bigint(20) NOT NULL AUTO_INCREMENT," + " `dev_id` int(11) NOT NULL DEFAULT '1'," + " `record_time` datetime NOT NULL DEFAULT '2000-01-01 00:00:00'," + " `last_state` int(11) NOT NULL DEFAULT '0'," + " `now_state` int(11) NOT NULL DEFAULT '0'," + " `event_type` int(11) NOT NULL DEFAULT '0'," + " `note` varchar(255) NOT NULL DEFAULT ''," + " PRIMARY KEY (`num`)," + "KEY `dev_id` (`dev_id`) USING BTREE" + ") ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8;"; Sql_Mysql sql = new Sql_Mysql(pool); try { sql.sqlMysqlExecute(sql_str); } catch (SQLException e) { sql.logger.error("FBS9100_Task_Thread_SQL.createTbBtsStateChange_infTable():" + e.toString(), e); } finally { sql.close_con(); } } /** * 创建指定的电池组历史数据记录表 * @param pool * @param BattGroupId */ public static void CreateTb_BattRealDataTable(MysqlConnPool pool,int BattGroupId) { String sql_str = "CREATE TABLE IF NOT EXISTS " + Sql_Mysql.Tb_Batt_RealData+BattGroupId + " (" + " `num` bigint(20) NOT NULL AUTO_INCREMENT," + " `BattGroupId` int(11) NOT NULL DEFAULT '1'," + " `recrod_time` datetime NOT NULL DEFAULT '2000-01-01 00:00:00'," + " `group_vol` float NOT NULL DEFAULT '0'," + " `online_vol` float NOT NULL DEFAULT '0'," + " `group_curr` float NOT NULL DEFAULT '0'," + " `group_tmp` float NOT NULL DEFAULT '0'," + " `batt_state` int(11) NOT NULL DEFAULT '0'," + " `batt_test_type` int(11) NOT NULL DEFAULT '0'," + " `batt_test_starttime` datetime NOT NULL DEFAULT '2000-01-01 00:00:00'," + " `batt_test_tlong` int(11) NOT NULL DEFAULT '0'," + " `batt_test_cap` float NOT NULL DEFAULT '0'," + " `mon_num` int(11) NOT NULL DEFAULT '1'," + " `mon_vol` float NOT NULL DEFAULT '0'," + " `mon_tmp` float NOT NULL DEFAULT '0'," + " `mon_res` float NOT NULL DEFAULT '0'," + " `mon_ser` float NOT NULL DEFAULT '0'," + " `mon_conn_res` float NOT NULL DEFAULT '0'," + " `mon_cap` float NOT NULL DEFAULT '0'," + " `mon_JH_curr` float NOT NULL DEFAULT '0'," + " `note` varchar(255) NOT NULL DEFAULT ''," + " PRIMARY KEY (`num`)," + "KEY `index_battgroupid` (`BattGroupId`) USING BTREE" + ") ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8;"; Sql_Mysql sql = new Sql_Mysql(pool); try { sql.sqlMysqlExecute(sql_str); } catch (SQLException e) { sql.logger.error("FBS9100_Task_Thread_SQL.CreateTb_BattRealDataTable():" + e.toString(), e); } finally { sql.close_con(); } } /** * 记录历史事件和告警 * @param m_ConnPool * @param events */ public static void insertBTSEventRecordTable(MysqlConnPool m_ConnPool, List events) { String sql_str = "INSERT INTO " + Sql_Mysql.Tb_BtsStateChange_inf + "(dev_id,record_time,last_state,now_state,event_type) VALUES"; if(events != null && events.size() > 0) { for(int i = 0 ; i < events.size() ; i++) { BTS61850_EventRecord event = events.get(i); if(i > 0) { sql_str += ","; } sql_str += "(" + event.dev_id + "," +"'" + Com.getDateTimeFormat(new Date(), Com.DTF_YMDhms) + "'," + event.last_state +"," + event.now_state +"," + event.event_type + "" + ")"; } Sql_Mysql sql = new Sql_Mysql(m_ConnPool); try { sql.sqlMysqlExecute(sql_str); } catch (SQLException e) { sql.logger.error("FBS9100_Task_Thread_SQL.insertBTSEventRecordTable():" + e.toString(), e); } finally { sql.close_con(); } } } /** * 读取当前设备的离线养护计划 * @param m_ConnPool * @param param */ public static void queryBTS61850OffLineyhPlanOnRam(MysqlConnPool m_ConnPool, FBS9100_StatAndParam param) { String sql_str = " SELECT * FROM " + Sql_Mysql.FBS9100_offlineyhplan + " WHERE dev_id = " + param.dev_id ; Sql_Mysql sql = new Sql_Mysql(m_ConnPool); BTS61850_OffLineYHPlan plan = param.bts61850_OffLineYHPlan; ResultSet res = null; try { res = sql.sqlMysqlQuery(sql_str); if(res.next()) { plan.OffLineYH_Cycle = res.getInt("OffLineYH_Cycle"); plan.OffLineYHOnceCycle = res.getInt("OffLineYHOnceCycle"); plan.OffLineYHTimes = res.getInt("OffLineYHTimes"); plan.OffLineYHstarttime = res.getTimestamp("OffLineYHstarttime"); } else { String sql_str_insert = " INSERT INTO " + Sql_Mysql.FBS9100_offlineyhplan + "(dev_id,OffLineYH_Cycle,OffLineYHstarttime,OffLineYHTimes,OffLineYHOnceCycle) " + " VALUES (" + param.dev_id + ", " + plan.OffLineYH_Cycle + ", '" + Com.getDateTimeFormat(new Date(), Com.DTF_YMDhms) + "',"+ plan.OffLineYHTimes +", " + plan.OffLineYHOnceCycle +")"; sql.sqlMysqlExecute(sql_str_insert); } } catch (SQLException e) { sql.logger.error("FBS9100_Task_Thread_SQL.queryBTS61850OffLineyhPlanOnRam():" + e.toString(), e); } finally { if(null != res) { try { res.close(); } catch (SQLException e) { sql.logger.error("FBS9100_Task_Thread_SQL.queryBTS61850OffLineyhPlanOnRam():" + e.toString(), e); } } sql.close_con(); } } /** * 更新养护除硫参数 * @param m_ConnPool * @param param */ public static void updateBTS61850OffLineyhPlanOnRam(MysqlConnPool m_ConnPool, FBS9100_StatAndParam param) { Sql_Mysql sql = new Sql_Mysql(m_ConnPool); BTS61850_OffLineYHPlan plan = param.bts61850_OffLineYHPlan; String sql_str_insert = " UPDATE " + Sql_Mysql.FBS9100_offlineyhplan + " SET OffLineYH_Cycle = " + plan.OffLineYH_Cycle + ",OffLineYHstarttime='" + Com.getDateTimeFormat(plan.OffLineYHstarttime, Com.DTF_YMDhms) + "',OffLineYHTimes="+ plan.OffLineYHTimes +",OffLineYHOnceCycle= " + plan.OffLineYHOnceCycle + " WHERE dev_id = " + param.dev_id; try { sql.sqlMysqlExecute(sql_str_insert); } catch (SQLException e) { sql.logger.error("FBS9100_Task_Thread_SQL.updateBTS61850OffLineyhPlanOnRam():" + e.toString(), e); } finally { sql.close_con(); } } public static void insert_BTS_BattGroupState_Table(MysqlConnPool con_pool, int dev_id, int bg_id, int bg_index, int mon_cnt, float f_vol, float f_curr, String reg_code) { String sql_str_insert = "INSERT INTO " + Sql_Mysql.AppDevBattGroup_Table + " ( " + "dev_id," + "battgroup_id," + "battgroup_index," + "battgroup_mon_cnt," + "battgroup_float_vol," + "battgroup_float_curr," + "battgroup_register_code" + " ) " + " VALUES " + " ( " + dev_id + ", " + bg_id + ", " + bg_index + ", " + mon_cnt + ", " + f_vol + ", " + f_curr + ", " + "'" + reg_code + "'" + " ) "; Sql_Mysql sql = new Sql_Mysql(con_pool); try { sql.sqlMysqlExecute(sql_str_insert); } catch (SQLException e) { // TODO Auto-generated catch block sql.logger.error("FBS9100_Task_Thread_SQL.insert_BTS_BattGroupState_Table():" + e.toString(), e); } finally { sql.close_con(); } } public static void update_BTS_BattGroupState_Table(MysqlConnPool con_pool, int dev_id, int bg_id, int bg_index, int mon_cnt, float f_vol, float f_curr, String reg_code) { String sql_str_insert = "UPDATE " + Sql_Mysql.AppDevBattGroup_Table + " SET " + "battgroup_index=" + bg_index + "," + "battgroup_mon_cnt=" + mon_cnt + "," + "battgroup_float_vol=" + f_vol + "," + "battgroup_float_curr=" + f_curr + "," + "battgroup_register_code='" + reg_code + "'" + " WHERE " + " dev_id=" + dev_id + " AND battgroup_id=" + bg_id; Sql_Mysql sql = new Sql_Mysql(con_pool); try { //System.out.println(sql_str_insert); sql.sqlMysqlExecute(sql_str_insert); } catch (SQLException e) { // TODO Auto-generated catch block sql.logger.error("FBS9100_Task_Thread_SQL.update_BTS_BattGroupState_Table():" + e.toString(), e); } finally { sql.close_con(); } } /********************************************************************************* public static void createAppLog4jTable(MysqlConnPool con_pool, String db_tb) { String str1 = "CREATE TABLE " + db_tb + " ( " + "`num` bigint(20) NOT NULL AUTO_INCREMENT, " + "`level` varchar(100) DEFAULT NULL, " + "`category` varchar(200) DEFAULT NULL, " + "`thread` varchar(200) DEFAULT NULL, " + "`time` varchar(50) DEFAULT NULL, " + "`location` varchar(200) DEFAULT NULL, " + "`note` varchar(2048) DEFAULT NULL, " + "PRIMARY KEY (`num`), " + "KEY `level_index` (`level`) USING BTREE, " + "KEY `time_index` (`time`) USING BTREE " + ") ENGINE=InnoDB AUTO_INCREMENT=100 DEFAULT CHARSET=utf8; "; Sql_Mysql sql = new Sql_Mysql(con_pool); try { sql.sqlMysqlExecute(str1); } catch (SQLException e) { // TODO Auto-generated catch block sql.logger.error("FBS9100_Task_Thread_SQL.createAppLog4jTable():" + e.toString(), e); } finally { sql.close_con(); } } public static void createAppLog4j2_Table(MysqlConnPool con_pool, String db_tb) { String str1 = "DROP TABLE IF EXISTS " + db_tb; String str2 = "CREATE TABLE " + db_tb + " ( " + " `num` bigint(20) NOT NULL AUTO_INCREMENT, " + " `log_date` datetime NOT NULL COMMENT '日期', " + " `log_file` varchar(255) DEFAULT NULL COMMENT '文件名', " + " `log_line` varchar(255) DEFAULT NULL COMMENT '行号', " + " `log_thread`varchar(255) DEFAULT NULL COMMENT '线程', " + " `log_level` varchar(255) DEFAULT NULL COMMENT 'Log级别 info warndebug error等', " + " `log_message` varchar(2048) DEFAULT NULL COMMENT 'Log信息', " + " PRIMARY KEY (`log_id`), " + " KEY `INDEX_LOG_DATE` (`log_date`) USING BTREE " + " ) ENGINE=InnoDB DEFAULT CHARSET=utf8;"; Sql_Mysql sql = new Sql_Mysql(con_pool); try { sql.sqlMysqlExecute(str1); sql.sqlMysqlExecute(str2); } catch (SQLException e) { // TODO Auto-generated catch block sql.logger.error("FBS9100_Task_Thread_SQL.createAppLog4j2_Table():" + e.toString(), e); } finally { sql.close_con(); } } public static void deleteAppLog4jTableOldData(MysqlConnPool con_pool, String db_tb) { String str1 = "SELECT num FROM " + db_tb + " ORDER BY num DESC LIMIT 50000,1"; String str2 = "DELETE FROM " + db_tb + " WHERE num<"; Sql_Mysql sql = new Sql_Mysql(con_pool); try { sql.sqlMysqlExecute(str1); ResultSet res = sql.sqlMysqlQuery(str1); if(res.next()) { long num = res.getLong("num"); sql.sqlMysqlExecute(str2 + num); } Thread.sleep(500); } catch (SQLException | InterruptedException e) { // TODO Auto-generated catch block sql.logger.error("FBS9100_Task_Thread_SQL.deleteAppLog4jTableOldData():" + e.toString(), e); } finally { sql.close_con(); } } ***************************************************************************************/ public static void main(String[] args) { MysqlConnPool pool = new MysqlConnPool("127.0.0.1", 3360, 10); //BTS61850_EventRecord event = new BTS61850_EventRecord(618500001, 1, 0, BTS61850_EventRecord.Event_CONNCET_Error_type); //List events = new ArrayList(); //events.add(event); //insertBTSEventRecordTable(pool, events); //CreateTb_BattRealDataTable(pool, 1000001); FBS9100_StatAndParam param = new FBS9100_StatAndParam("127.0.0.1", 618500001); queryBTS61850OffLineyhPlanOnRam(pool, param); } /** * 查询设备的告警参数 * @param con_pool * @param param */ public static void queryDev6185AlmParamBydev_id(MysqlConnPool con_pool, FBS9100_StatAndParam param) { String sql_str = "SELECT * FROM " + Sql_Mysql.Dev_6185_AlmParam + " where dev_id = " + param.dev_id; Sql_Mysql sql = new Sql_Mysql(con_pool); ResultSet res = null; try { res = sql.sqlMysqlQuery(sql_str); if(res.next()) { if(null != param) { param.m_FBS_AlmParam.op_cmd = res.getInt("op_cmd"); param.m_FBS_AlmParam.groupvol_high_val = res.getFloat("groupvol_high_val");; //'组端电压高阈值', param.m_FBS_AlmParam.groupvol_low_val = res.getFloat("groupvol_low_val"); //'组端电压低阈值', param.m_FBS_AlmParam.monvol_high_val = res.getFloat("monvol_high_val"); //'单体电压高阈值', param.m_FBS_AlmParam.monvol_low_val = res.getFloat("monvol_low_val"); //'单体电压低阈值', param.m_FBS_AlmParam.montmp_high_val = res.getFloat("montmp_high_val"); //'单体温度高阈值', param.m_FBS_AlmParam.montmp_low_val = res.getFloat("montmp_low_val"); //'单体温度低阈值', param.m_FBS_AlmParam.monres_high_val = res.getFloat("monres_high_val"); //'单体内阻高阈值', param.m_FBS_AlmParam.monres_low_val = res.getFloat("monres_low_val"); //'单体内阻低阈值', param.m_FBS_AlmParam.moncap_high_val = res.getFloat("moncap_high_val"); //'单体容量高阈值', param.m_FBS_AlmParam.moncap_low_val = res.getFloat("moncap_low_val"); //'单体容量低阈值', } } } catch (SQLException e) { sql.logger.error("FBS9100_Task_Thread_SQL.queryDev6185AlmParamBydev_id():" + e.toString(), e); } finally { if(null != res) { try { res.close(); } catch (SQLException e) { sql.logger.error("FBS9100_Task_Thread_SQL.queryDev6185AlmParamBydev_id():" + e.toString(), e); } } sql.close_con(); } } public static void UpdateDev61850AlmParam(MysqlConnPool con_pool,FBS9100_AlarmParam almparam,FBS9100_StatAndParam param){ String sql_str_base = Sql_Mysql.Dev_6185_AlmParam + " SET " + "dev_id=" + param.dev_id + ", " + "groupvol_high_val=" + almparam.groupvol_high_val + ", " + "groupvol_low_val=" + almparam.groupvol_low_val + ", " + "monvol_high_val=" + almparam.monvol_high_val + ", " + "monvol_low_val=" + almparam.monvol_low_val + ", " + "montmp_high_val=" + almparam.montmp_high_val + ", " + "montmp_low_val=" + almparam.montmp_low_val + ", " + "monres_high_val=" + almparam.monres_high_val + ", " + "monres_low_val=" + almparam.monres_low_val + ", " + "moncap_high_val=" + almparam.moncap_high_val + ", " + "moncap_low_val=" + almparam.moncap_low_val ; String sql_str_update = "UPDATE " + sql_str_base + " WHERE dev_id=" + param.dev_id; Sql_Mysql sql = new Sql_Mysql(con_pool); try { sql.sqlMysqlExecute(sql_str_update); } catch (SQLException e) { sql.logger.error("FBS9100_Task_Thread_SQL.inseartOrUpdateFBS9100SFODParam():" + e.toString(), e); } finally { sql.close_con(); } } public static void updateDev61850AlmParamCmdBydev_id(MysqlConnPool con_pool, FBS9100_StatAndParam param) { if((param.op_cmd == FBS9100_ComBase.CMD_ReadAlarmParam_ACK) || (param.op_cmd == FBS9100_ComBase.CMD_FAIL) || (param.op_cmd == FBS9100_ComBase.CMD_WriteAlarmParam_ACK)) { String sql_str_base = Sql_Mysql.Dev_6185_AlmParam + " SET " + " dev_id=" + param.dev_id + ", " + " op_cmd=" + param.op_cmd + " " + " where dev_id = "+param.dev_id; String sql_str_update = "UPDATE " + sql_str_base; Sql_Mysql sql = new Sql_Mysql(con_pool); try { sql.sqlMysqlExecute(sql_str_update); } catch (SQLException e) { sql.logger.error("FBS9100_Task_Thread_SQL.updateDev61850AlmParamCmdBydev_id():" + e.toString(), e); } finally { sql.close_con(); } param.m_FBS_AlmParam.op_cmd = param.op_cmd; param.op_cmd = FBS9100_ComBase.CMD_NULL; } } /****************************************************************************************************/ public static void inseartDev_6185_AlmParam(MysqlConnPool con_pool,int dev_id){ String sql_str_ins = " insert into " + Sql_Mysql.Dev_6185_AlmParam+ "(dev_id) values(" + dev_id +");"; Sql_Mysql sql = new Sql_Mysql(con_pool); ResultSet res = null; try { res = sql.sqlMysqlQuery("SELECT num FROM " + Sql_Mysql.Dev_6185_AlmParam + " WHERE dev_id = " + dev_id); if(!res.next()) { sql.sqlMysqlExecute(sql_str_ins); } } catch (SQLException e) { sql.logger.error("FBS9100_Task_Thread_SQL.inseartDev_6185_AlmParam():" + e.toString(), e); } finally { if(null != res) { try { res.close(); } catch (SQLException e) { sql.logger.error("FBS9100_Task_Thread_SQL.inseartOrUpdateFBS9100SFODParam():" + e.toString(), e); } } sql.close_con(); } } }