From 75f29de7f6ec9c9d8e537fe9c5214075e70edef3 Mon Sep 17 00:00:00 2001 From: DELL <1525436766@qq.com> Date: 星期六, 12 十月 2024 10:17:34 +0800 Subject: [PATCH] 添加通信异常逻辑 --- iec61850_forFoShanAES_Model/src/com/battdata_rt/BattData_RT_Array.java | 5 ++ iec61850_forFoShanAES_Model/bin/com/version_inf/version_inf.txt | 2 iec61850_forFoShanAES_Model/bin/com/dec/fbs9100/BTS_61850_SocketClient.class | 0 iec61850_forFoShanAES_Model/bin/com/battdata_rt/BattData_RT_Array.class | 0 iec61850_forFoShanAES_Model/src/com/dec/fbs9100/FBS9100_Task_Thread_SQL.java | 29 ++++++++++++-- iec61850_forFoShanAES_Model/src/com/dec/fbs9100/BTS_61850_SocketClient.java | 44 +++++++++++---------- iec61850_forFoShanAES_Model/bin/com/dec/fbs9100/FBS9100_Task_Thread_SQL.class | 0 iec61850_forFoShanAES_Model/src/com/version_inf/version_inf.txt | 2 8 files changed, 54 insertions(+), 28 deletions(-) diff --git a/iec61850_forFoShanAES_Model/bin/com/battdata_rt/BattData_RT_Array.class b/iec61850_forFoShanAES_Model/bin/com/battdata_rt/BattData_RT_Array.class index 7b9f344..5e88ff2 100644 --- a/iec61850_forFoShanAES_Model/bin/com/battdata_rt/BattData_RT_Array.class +++ b/iec61850_forFoShanAES_Model/bin/com/battdata_rt/BattData_RT_Array.class Binary files differ diff --git a/iec61850_forFoShanAES_Model/bin/com/dec/fbs9100/BTS_61850_SocketClient.class b/iec61850_forFoShanAES_Model/bin/com/dec/fbs9100/BTS_61850_SocketClient.class index 4ac889e..7bbd395 100644 --- a/iec61850_forFoShanAES_Model/bin/com/dec/fbs9100/BTS_61850_SocketClient.class +++ b/iec61850_forFoShanAES_Model/bin/com/dec/fbs9100/BTS_61850_SocketClient.class Binary files differ diff --git a/iec61850_forFoShanAES_Model/bin/com/dec/fbs9100/FBS9100_Task_Thread_SQL.class b/iec61850_forFoShanAES_Model/bin/com/dec/fbs9100/FBS9100_Task_Thread_SQL.class index 4b15516..c4b7276 100644 --- a/iec61850_forFoShanAES_Model/bin/com/dec/fbs9100/FBS9100_Task_Thread_SQL.class +++ b/iec61850_forFoShanAES_Model/bin/com/dec/fbs9100/FBS9100_Task_Thread_SQL.class Binary files differ diff --git a/iec61850_forFoShanAES_Model/bin/com/version_inf/version_inf.txt b/iec61850_forFoShanAES_Model/bin/com/version_inf/version_inf.txt index 2ea507a..83d2b4e 100644 --- a/iec61850_forFoShanAES_Model/bin/com/version_inf/version_inf.txt +++ b/iec61850_forFoShanAES_Model/bin/com/version_inf/version_inf.txt @@ -5,7 +5,7 @@ 娉ㄦ剰褰撳墠鐗堟湰鍦ㄨ缃崡鐟炵殑61850鍗忚浆绛惧悕鏃剁敤鐨� BTSE2/ -V2.1043 edit by lijun @ 2024-07-24 +V2.104 edit by lijun @ 2024-07-24 1.鍏煎璇诲彇绱櫠閿傜數BTS鏍稿鏁版嵁 V2.103 edit by lijun @ 2024-04-08 diff --git a/iec61850_forFoShanAES_Model/src/com/battdata_rt/BattData_RT_Array.java b/iec61850_forFoShanAES_Model/src/com/battdata_rt/BattData_RT_Array.java index 0d316b9..d503ee8 100644 --- a/iec61850_forFoShanAES_Model/src/com/battdata_rt/BattData_RT_Array.java +++ b/iec61850_forFoShanAES_Model/src/com/battdata_rt/BattData_RT_Array.java @@ -102,6 +102,7 @@ } boolean batt_group_exist = false; String reg_code = res.getString("BattGroupName6").trim(); + String FBSDeviceName = res.getString("FBSDeviceName").trim(); float float_vol_lev = res.getFloat("FloatVolLevel"); float float_curr_lev = res.getFloat("BattFloatCurrent"); int GroupIndexInFBSDevice = res.getInt("GroupIndexInFBSDevice"); @@ -120,6 +121,10 @@ brt.setDevRegCode(reg_code); param_changed = true; } + if(false == FBSDeviceName.equals(brt.FBSDeviceName)) { + brt.FBSDeviceName = FBSDeviceName; + param_changed = true; + } if((float_vol_lev!=brt.getBattFloatVolLev()) || (float_curr_lev!=brt.getBattFloatCurrLev())) { brt.setBattFloatVolCurrLevel(float_vol_lev, float_curr_lev); param_changed = true; diff --git a/iec61850_forFoShanAES_Model/src/com/dec/fbs9100/BTS_61850_SocketClient.java b/iec61850_forFoShanAES_Model/src/com/dec/fbs9100/BTS_61850_SocketClient.java index 4753802..3660864 100644 --- a/iec61850_forFoShanAES_Model/src/com/dec/fbs9100/BTS_61850_SocketClient.java +++ b/iec61850_forFoShanAES_Model/src/com/dec/fbs9100/BTS_61850_SocketClient.java @@ -217,25 +217,29 @@ System.out.println("successfully read model"); */ - /************************* read m_DevVersion first *************************/ - m_StatAndParam.m_DevVersion = readVersionStringNodeData(FBSDeviceName + "/ncdGGIO1.DevVersion.d", Fc.DC); - /***************************************************************************/ - logger.debug("IP:" + FBSDeviceIp + " - BTS_IEC61850_VersionInf: " + m_StatAndParam.m_DevVersion); - - m_FBS_VCData.m_SysState.resetErrCommCount(); - FBS9100_Task_Thread_SQL.inseartOrUpdateFBS9100SFODParam(m_ConnPool, m_StatAndParam.clParam, m_StatAndParam); + try { + /************************* read m_DevVersion first *************************/ + m_StatAndParam.m_DevVersion = readVersionStringNodeData(FBSDeviceName + "/ncdGGIO1.DevVersion.d", Fc.DC); + /***************************************************************************/ + logger.debug("IP:" + FBSDeviceIp + " - BTS_IEC61850_VersionInf: " + m_StatAndParam.m_DevVersion); + + m_FBS_VCData.m_SysState.resetErrCommCount(); + FBS9100_Task_Thread_SQL.inseartOrUpdateFBS9100SFODParam(m_ConnPool, m_StatAndParam.clParam, m_StatAndParam); - FBS9100_Task_Thread_SQL.queryBTS61850OffLineyhPlanOnRam(m_ConnPool, m_StatAndParam); - - m_StatAndParam.keyID = readStringNodeData(FBSDeviceName+"/btgGGIO1.ukeyID.d",Fc.DC); - m_StatAndParam.serialNumber = readStringNodeData(FBSDeviceName+"/btgGGIO1.Bts_ID.d",Fc.DC); //鍞竴搴忓垪鍙� - BTS61850_Task_Thread_SQL.UpdateBattInfTable(m_ConnPool, m_StatAndParam); //鏇存柊褰撳墠鍙傛暟 - - - //璇诲彇涓讳粠鏈哄姛鑳戒娇鑳� - m_FBS_VCData.m_SysState.MasterSlave_en = (int) (readFloatNodeData(FBSDeviceName + "/btgGGIO1.AnIn29.mag.f",Fc.MX)); - //璇诲彇骞叉帴鐐瑰姛鑳戒娇鑳� - m_FBS_VCData.m_SysState.DryContact_en = (int) (readFloatNodeData(FBSDeviceName + "/btgGGIO1.AnIn30.mag.f",Fc.MX)); + FBS9100_Task_Thread_SQL.queryBTS61850OffLineyhPlanOnRam(m_ConnPool, m_StatAndParam); + + m_StatAndParam.keyID = readStringNodeData(FBSDeviceName+"/btgGGIO1.ukeyID.d",Fc.DC); + m_StatAndParam.serialNumber = readStringNodeData(FBSDeviceName+"/btgGGIO1.Bts_ID.d",Fc.DC); //鍞竴搴忓垪鍙� + BTS61850_Task_Thread_SQL.UpdateBattInfTable(m_ConnPool, m_StatAndParam); //鏇存柊褰撳墠鍙傛暟 + + + //璇诲彇涓讳粠鏈哄姛鑳戒娇鑳� + m_FBS_VCData.m_SysState.MasterSlave_en = (int) (readFloatNodeData(FBSDeviceName + "/btgGGIO1.AnIn29.mag.f",Fc.MX)); + //璇诲彇骞叉帴鐐瑰姛鑳戒娇鑳� + m_FBS_VCData.m_SysState.DryContact_en = (int) (readFloatNodeData(FBSDeviceName + "/btgGGIO1.AnIn30.mag.f",Fc.MX)); + } catch (Exception e2) { + logger.error(e2.toString(), e2); + } while (true == Get_AppAliveState()) { try { @@ -462,13 +466,11 @@ break; } // ---------------------------------------------------------------------------------// - } catch (InterruptedException e) { + } catch (Exception e) { logger.error(e.toString(), e); - try { sleep(1000); } catch (InterruptedException e1) { - // TODO Auto-generated catch block logger.error(e1.toString(), e1); } } diff --git a/iec61850_forFoShanAES_Model/src/com/dec/fbs9100/FBS9100_Task_Thread_SQL.java b/iec61850_forFoShanAES_Model/src/com/dec/fbs9100/FBS9100_Task_Thread_SQL.java index 6554bc7..4273946 100644 --- a/iec61850_forFoShanAES_Model/src/com/dec/fbs9100/FBS9100_Task_Thread_SQL.java +++ b/iec61850_forFoShanAES_Model/src/com/dec/fbs9100/FBS9100_Task_Thread_SQL.java @@ -655,8 +655,9 @@ { String sql_str = "SELECT * FROM " + Sql_Mysql.FBS9100SetParam_Table; Sql_Mysql sql = new Sql_Mysql(con_pool); - ResultSet res = sql.sqlMysqlQuery(sql_str); + ResultSet res = null; try { + res = sql.sqlMysqlQuery(sql_str); while(res.next()) { FBS9100_StatAndParam param = null; @@ -712,8 +713,9 @@ { String sql_str = "SELECT * FROM " + Sql_Mysql.FBS9100SetParam_Table + " where dev_id = " + param.dev_id; Sql_Mysql sql = new Sql_Mysql(con_pool); - ResultSet res = sql.sqlMysqlQuery(sql_str); + ResultSet res = null; try { + res = sql.sqlMysqlQuery(sql_str); if(res.next()) { if(null != param) { @@ -820,8 +822,9 @@ //System.out.println(param.dev_id); String sql_str = "SELECT * FROM " + Sql_Mysql.FBS9100SetDLParam_Table + " where dev_id = " + param.dev_id; Sql_Mysql sql = new Sql_Mysql(con_pool); - ResultSet res = sql.sqlMysqlQuery(sql_str); + ResultSet res = null; try { + res = sql.sqlMysqlQuery(sql_str); if(res.next()) { if(null != param) { @@ -1299,8 +1302,9 @@ 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 = sql.sqlMysqlQuery(sql_str); + ResultSet res = null; try { + res = sql.sqlMysqlQuery(sql_str); if(res.next()) { if(null != param) { @@ -1329,6 +1333,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(); } } @@ -1515,9 +1526,10 @@ 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); - ResultSet res = sql.sqlMysqlQuery(sql_str); 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"); @@ -1532,6 +1544,13 @@ } catch (SQLException e) { sql.logger.error("FBS9100_Task_Thread_SQL.queryBTS61850OffLineyhPlanOnRam():" + e.toString(), e); } finally { + if(null != res) { + try { + res.close(); + } catch (SQLException e) { + e.printStackTrace(); + } + } sql.close_con(); } } diff --git a/iec61850_forFoShanAES_Model/src/com/version_inf/version_inf.txt b/iec61850_forFoShanAES_Model/src/com/version_inf/version_inf.txt index 2ea507a..83d2b4e 100644 --- a/iec61850_forFoShanAES_Model/src/com/version_inf/version_inf.txt +++ b/iec61850_forFoShanAES_Model/src/com/version_inf/version_inf.txt @@ -5,7 +5,7 @@ 娉ㄦ剰褰撳墠鐗堟湰鍦ㄨ缃崡鐟炵殑61850鍗忚浆绛惧悕鏃剁敤鐨� BTSE2/ -V2.1043 edit by lijun @ 2024-07-24 +V2.104 edit by lijun @ 2024-07-24 1.鍏煎璇诲彇绱櫠閿傜數BTS鏍稿鏁版嵁 V2.103 edit by lijun @ 2024-04-08 -- Gitblit v1.9.1