From f7c8ccbaa43fdda57fd04cce5f409f1a99bde86b Mon Sep 17 00:00:00 2001 From: Administrator <1525436766@qq.com> Date: 星期五, 19 二月 2021 15:25:56 +0800 Subject: [PATCH] 添加控制操作日志记录功能 --- ElectricalSystem_MonitorServer_2KW/src/com/electrical/TwoKW/Electrical_2KW_SocketClient_Thread.java | 111 ++++++++++++++++++++++++++++++++++++------------------- 1 files changed, 72 insertions(+), 39 deletions(-) diff --git a/ElectricalSystem_MonitorServer_2KW/src/com/electrical/TwoKW/Electrical_2KW_SocketClient_Thread.java b/ElectricalSystem_MonitorServer_2KW/src/com/electrical/TwoKW/Electrical_2KW_SocketClient_Thread.java index 425643a..8ac8645 100644 --- a/ElectricalSystem_MonitorServer_2KW/src/com/electrical/TwoKW/Electrical_2KW_SocketClient_Thread.java +++ b/ElectricalSystem_MonitorServer_2KW/src/com/electrical/TwoKW/Electrical_2KW_SocketClient_Thread.java @@ -6,6 +6,8 @@ import com.modbus.data.MyModbusMaster; import com.modbus.data.MyModbusUtils; +import com.modbus.data.User_Log; +import com.modbus.data.User_Log_SQL; import com.serotonin.modbus4j.BatchRead; import com.serotonin.modbus4j.BatchResults; import com.serotonin.modbus4j.code.DataType; @@ -21,6 +23,8 @@ public MyModbusMaster master; public Electric_2MW_alarm eAlarm; public List<Electric_2MW_alarm> listAlarm; + public List<User_Log> logs; + public Electrical_2KW_SocketClient_Thread(Electric_inf_2kw winf,MysqlConnPool conn_pool) { this.conn_pool = conn_pool; @@ -31,6 +35,7 @@ econ = einf.control; eAlarm = einf.alarm; + logs = new ArrayList<>(); /* state = new Electric_State_2kw(einf.electric2KW_id); ert = new Electric_Rt_2kw(einf.electric2KW_id); @@ -65,30 +70,38 @@ Electrical_2KWTask_SQL.queryElectric_Control_2KW(conn_pool,econ); if(econ.update_en == true) { + logs.clear(); //System.out.println(econ.electric2KW_id+"##"); //转为恒压模式充电电压值 if(econ.consvolmode_chargecurr > 0) { - MyModbusUtils.writeHoldingRegister(330, econ.consvolmode_chargecurr, DataType.TWO_BYTE_INT_SIGNED, master); + boolean flag = MyModbusUtils.writeHoldingRegister(330, econ.consvolmode_chargecurr, DataType.TWO_BYTE_INT_SIGNED, master); + logs.add(new User_Log(User_Log.Alter, User_Log.electric2mwsystem,einf.electric2KW_name+"转为恒压模式充电电压值为:"+econ.consvolmode_chargecurr, flag)); } //第5阶段充电电流值 if(econ.chargecurr_five > 0) { - MyModbusUtils.writeHoldingRegister(319,econ.chargecurr_five, DataType.TWO_BYTE_INT_SIGNED, master); + boolean flag = MyModbusUtils.writeHoldingRegister(319,econ.chargecurr_five, DataType.TWO_BYTE_INT_SIGNED, master); + logs.add(new User_Log(User_Log.Alter, User_Log.electric2mwsystem,einf.electric2KW_name+"第5阶段充电电流值为:"+econ.chargecurr_five, flag)); } //第4阶段充电电流值 if(econ.chargecurr_four > 0) { - MyModbusUtils.writeHoldingRegister(318,econ.chargecurr_four, DataType.TWO_BYTE_INT_SIGNED, master); + boolean flag = MyModbusUtils.writeHoldingRegister(318,econ.chargecurr_four, DataType.TWO_BYTE_INT_SIGNED, master); + logs.add(new User_Log(User_Log.Alter, User_Log.electric2mwsystem,einf.electric2KW_name+"第4阶段充电电流值为:"+econ.chargecurr_four, flag)); } //第3阶段充电电流值 if(econ.chargecurr_three > 0) { - MyModbusUtils.writeHoldingRegister(317,econ.chargecurr_three, DataType.TWO_BYTE_INT_SIGNED, master); + boolean flag = MyModbusUtils.writeHoldingRegister(317,econ.chargecurr_three, DataType.TWO_BYTE_INT_SIGNED, master); + logs.add(new User_Log(User_Log.Alter, User_Log.electric2mwsystem,einf.electric2KW_name+"第3阶段充电电流值为:"+econ.chargecurr_three, flag)); } //第2阶段充电电流值 if(econ.chargecurr_two > 0) { - MyModbusUtils.writeHoldingRegister(316,econ.chargecurr_two, DataType.TWO_BYTE_INT_SIGNED, master); + boolean flag = MyModbusUtils.writeHoldingRegister(316,econ.chargecurr_two, DataType.TWO_BYTE_INT_SIGNED, master); + logs.add(new User_Log(User_Log.Alter, User_Log.electric2mwsystem,einf.electric2KW_name+"第2阶段充电电流值为:"+econ.chargecurr_two, flag)); } //第1阶段充电电流值 if(econ.chargecurr_one > 0) { - MyModbusUtils.writeHoldingRegister(315,econ.chargecurr_one, DataType.TWO_BYTE_INT_SIGNED, master); + boolean flag = MyModbusUtils.writeHoldingRegister(315,econ.chargecurr_one, DataType.TWO_BYTE_INT_SIGNED, master); + logs.add(new User_Log(User_Log.Alter, User_Log.electric2mwsystem,einf.electric2KW_name+"第1阶段充电电流值为:"+econ.chargecurr_one, flag)); + } //电流设定值 // if(econ.currset > 0) { @@ -100,108 +113,128 @@ // } //第5阶段充电终止电压 if(econ.stopchargevol_five > 0) { - MyModbusUtils.writeHoldingRegister(328,econ.stopchargevol_five, DataType.FOUR_BYTE_FLOAT, master); + boolean flag = MyModbusUtils.writeHoldingRegister(328,econ.stopchargevol_five, DataType.FOUR_BYTE_FLOAT, master); + logs.add(new User_Log(User_Log.Alter, User_Log.electric2mwsystem,einf.electric2KW_name+"第5阶段充电终止电压为:"+econ.stopchargevol_five, flag)); } //第4阶段充电终止电压 if(econ.stopchargevol_four > 0) { - MyModbusUtils.writeHoldingRegister(326,econ.stopchargevol_four, DataType.FOUR_BYTE_FLOAT, master); + boolean flag = MyModbusUtils.writeHoldingRegister(326,econ.stopchargevol_four, DataType.FOUR_BYTE_FLOAT, master); + logs.add(new User_Log(User_Log.Alter, User_Log.electric2mwsystem,einf.electric2KW_name+"第4阶段充电终止电压为:"+econ.stopchargevol_four, flag)); } //第3阶段充电终止电压 if(econ.stopchargevol_three > 0) { - MyModbusUtils.writeHoldingRegister(324,econ.stopchargevol_three, DataType.FOUR_BYTE_FLOAT, master); + boolean flag = MyModbusUtils.writeHoldingRegister(324,econ.stopchargevol_three, DataType.FOUR_BYTE_FLOAT, master); + logs.add(new User_Log(User_Log.Alter, User_Log.electric2mwsystem,einf.electric2KW_name+"第3阶段充电终止电压为:"+econ.stopchargevol_three, flag)); } //第2阶段充电终止电压 if(econ.stopchargevol_two > 0) { - MyModbusUtils.writeHoldingRegister(322,econ.stopchargevol_two, DataType.FOUR_BYTE_FLOAT, master); + boolean flag = MyModbusUtils.writeHoldingRegister(322,econ.stopchargevol_two, DataType.FOUR_BYTE_FLOAT, master); + logs.add(new User_Log(User_Log.Alter, User_Log.electric2mwsystem,einf.electric2KW_name+"第2阶段充电终止电压为:"+econ.stopchargevol_two, flag)); } //第1阶段充电终止电压 if(econ.stopchargevol_one > 0) { - MyModbusUtils.writeHoldingRegister(320,econ.stopchargevol_one, DataType.FOUR_BYTE_FLOAT, master); + boolean flag = MyModbusUtils.writeHoldingRegister(320,econ.stopchargevol_one, DataType.FOUR_BYTE_FLOAT, master); + logs.add(new User_Log(User_Log.Alter, User_Log.electric2mwsystem,einf.electric2KW_name+"第1阶段充电终止电压为:"+econ.stopchargevol_one, flag)); } //上位机脉冲封锁 if(econ.upper_pulse_block > 0) { - MyModbusUtils.writeCoil(80, true, master); + boolean flag = MyModbusUtils.writeCoil(80, true, master); Thread.sleep(2000); - MyModbusUtils.writeCoil(80, false, master); + flag = flag&&MyModbusUtils.writeCoil(80, false, master); + logs.add(new User_Log(User_Log.Alter, User_Log.electric2mwsystem,einf.electric2KW_name+"上位机脉冲封锁", flag)); } //远程启动 if(econ.remote_start > 0) { - MyModbusUtils.writeCoil(112, true, master); + boolean flag = MyModbusUtils.writeCoil(112, true, master); Thread.sleep(2000); - MyModbusUtils.writeCoil(112, false, master); + flag = flag&&MyModbusUtils.writeCoil(112, false, master); + logs.add(new User_Log(User_Log.Start_up, User_Log.electric2mwsystem,einf.electric2KW_name+"远程启动", flag)); } //故障复位 if(econ.fault_reset > 0) { - MyModbusUtils.writeCoil(113, true, master); + boolean flag = MyModbusUtils.writeCoil(113, true, master); Thread.sleep(2000); - MyModbusUtils.writeCoil(113, false, master); + flag = flag&&MyModbusUtils.writeCoil(113, false, master); + logs.add(new User_Log(User_Log.Alter, User_Log.electric2mwsystem,einf.electric2KW_name+"故障复位", flag)); } //恒流切换 if(econ.conscurrswitch > 0) { - MyModbusUtils.writeCoil(114, true, master); + boolean flag = MyModbusUtils.writeCoil(114, true, master); Thread.sleep(2000); - MyModbusUtils.writeCoil(114, false, master); + flag = flag&&MyModbusUtils.writeCoil(114, false, master); + logs.add(new User_Log(User_Log.Start_up, User_Log.electric2mwsystem,einf.electric2KW_name+"恒流切换", flag)); } //4并或2串2并恒压 if(econ.constantvol > 0) { - MyModbusUtils.writeCoil(115, true, master); + boolean flag = MyModbusUtils.writeCoil(115, true, master); Thread.sleep(2000); - MyModbusUtils.writeCoil(115, false, master); + flag = flag&&MyModbusUtils.writeCoil(115, false, master); + logs.add(new User_Log(User_Log.Alter, User_Log.electric2mwsystem,einf.electric2KW_name+"为:4并或2串2并恒压", flag)); } //电压给定确认 if(econ.volset_confirm > 0) { - MyModbusUtils.writeHoldingRegister(18,econ.volset, DataType.TWO_BYTE_INT_SIGNED, master); - MyModbusUtils.writeCoil(116, true, master); + boolean flag = MyModbusUtils.writeHoldingRegister(18,econ.volset, DataType.TWO_BYTE_INT_SIGNED, master); + flag = flag&&MyModbusUtils.writeCoil(116, true, master); Thread.sleep(2000); - MyModbusUtils.writeCoil(116, false, master); + flag = flag&&MyModbusUtils.writeCoil(116, false, master); + logs.add(new User_Log(User_Log.Alter, User_Log.electric2mwsystem,einf.electric2KW_name+"电压设定值为:"+econ.volset, flag)); } //电流给定确认 if(econ.currset_confirm > 0) { - MyModbusUtils.writeHoldingRegister(27,econ.currset, DataType.TWO_BYTE_INT_SIGNED, master); - MyModbusUtils.writeCoil(117, true, master); + boolean flag = MyModbusUtils.writeHoldingRegister(27,econ.currset, DataType.TWO_BYTE_INT_SIGNED, master); + flag = flag&&MyModbusUtils.writeCoil(117, true, master); Thread.sleep(2000); - MyModbusUtils.writeCoil(117, false, master); + flag = flag&&MyModbusUtils.writeCoil(117, false, master); + logs.add(new User_Log(User_Log.Alter, User_Log.electric2mwsystem,einf.electric2KW_name+"电流设定值为:"+econ.currset, flag)); } //远程停止 if(econ.remote_stop > 0) { - MyModbusUtils.writeCoil(118, true, master); + boolean flag = MyModbusUtils.writeCoil(118, true, master); Thread.sleep(2000); - MyModbusUtils.writeCoil(118, false, master); + flag = flag&&MyModbusUtils.writeCoil(118, false, master); + logs.add(new User_Log(User_Log.Alter, User_Log.electric2mwsystem,einf.electric2KW_name+"远程停止", flag)); } //启动触摸屏给定 if(econ.start_screen_set > 0) { - MyModbusUtils.writeCoil(120, true, master); + boolean flag = MyModbusUtils.writeCoil(120, true, master); Thread.sleep(2000); - MyModbusUtils.writeCoil(120, false, master); + flag = flag&&MyModbusUtils.writeCoil(120, false, master); + logs.add(new User_Log(User_Log.Alter, User_Log.electric2mwsystem,einf.electric2KW_name+"触摸屏给定", flag)); } //启动上位机给定 if(econ.start_upper_set > 0) { - MyModbusUtils.writeCoil(121, true, master); + boolean flag = MyModbusUtils.writeCoil(121, true, master); Thread.sleep(2000); - MyModbusUtils.writeCoil(121, false, master); + flag = flag&&MyModbusUtils.writeCoil(121, false, master); + logs.add(new User_Log(User_Log.Start_up, User_Log.electric2mwsystem,einf.electric2KW_name+"上位机给定", flag)); } //恒压切换 if(econ.consvolswitch > 0) { - MyModbusUtils.writeCoil(123, true, master); + boolean flag = MyModbusUtils.writeCoil(123, true, master); Thread.sleep(2000); - MyModbusUtils.writeCoil(123, false, master); + flag = flag&&MyModbusUtils.writeCoil(123, false, master); + logs.add(new User_Log(User_Log.Alter, User_Log.electric2mwsystem,einf.electric2KW_name+"恒压切换", flag)); } //4并或2串2并以外模式 if(econ.othermode > 0) { - MyModbusUtils.writeCoil(125, true, master); + boolean flag = MyModbusUtils.writeCoil(125, true, master); Thread.sleep(2000); - MyModbusUtils.writeCoil(125, false, master); + flag = flag&&MyModbusUtils.writeCoil(125, false, master); + logs.add(new User_Log(User_Log.Alter, User_Log.electric2mwsystem,einf.electric2KW_name+"4并或2串2并以外模式", flag)); } //四串恒压电压分配位 if(econ.consvol_distribution > 0) { - MyModbusUtils.writeCoil(128, true, master); + boolean flag = MyModbusUtils.writeCoil(128, true, master); Thread.sleep(2000); - MyModbusUtils.writeCoil(128, false, master); + flag = flag&&MyModbusUtils.writeCoil(128, false, master); + logs.add(new User_Log(User_Log.Alter, User_Log.electric2mwsystem,einf.electric2KW_name+"四串恒压电压分配", flag)); } econ.clear(); // //System.err.println(econ); Electrical_2KWTask_SQL.update_Electric_Control_2KW(conn_pool, econ); + + User_Log_SQL.recordUserLog(conn_pool, logs); //记录操作日志 } -- Gitblit v1.9.1