src/main/java/com/whyc/controller/BattalarmDataController.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/whyc/dto/AlarmDaoFactory.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/whyc/dto/paramter/AlarmPar.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/whyc/dto/result/AlarmNumberRes.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/whyc/dto/result/AlarmRes.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/whyc/dto/result/AlarmStaticRes.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/whyc/mapper/BattalarmDataMapper.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/whyc/pojo/BattalarmData.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/whyc/service/BattalarmDataService.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/resources/mapper/BattalarmDataMapper.xml | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
src/main/java/com/whyc/controller/BattalarmDataController.java
@@ -3,6 +3,10 @@ import com.whyc.dto.Batt_Maint_Dealarm; import com.whyc.dto.Page; import com.whyc.dto.Response; import com.whyc.dto.paramter.AlarmPar; import com.whyc.dto.result.AlarmNumberRes; import com.whyc.dto.result.AlarmRes; import com.whyc.dto.result.AlarmStaticRes; import com.whyc.pojo.BattalarmData; import com.whyc.service.BattalarmDataService; import io.swagger.annotations.Api; @@ -31,16 +35,35 @@ public Response<List<BattalarmData>> getAllByPage(@RequestBody Page page){ return service.getAllByPage(page); } //测试 public Response<List<Batt_Maint_Dealarm>> test(@RequestBody BattalarmData battalarmData){ return service.test(battalarmData); } @PostMapping("/serchByCondition") @ApiOperation(value = "电池告警实时查询") public Response<List<Batt_Maint_Dealarm>> serchByCondition(@RequestBody Batt_Maint_Dealarm bmd){ return service.serchByCondition(bmd); @ApiOperation(value = "电池告警实时记录查询") public Response<List<AlarmRes>> serchByCondition(@RequestBody AlarmPar par){ return service.serchByCondition(par); } @PostMapping("/serchByInfo") @ApiOperation(value = "电池告警历史记录查询") public Response<List<Batt_Maint_Dealarm>> serchByInfo(@RequestBody BattalarmData battalarmData){ return service.serchByInfo(battalarmData); public Response<List<AlarmRes>> serchByInfo(@RequestBody AlarmPar par){ return service.serchByInfo(par); } @PostMapping("/serchAlm") @ApiOperation(value = "查询实时告警数") public Response<AlarmNumberRes> serchAlm(@RequestBody AlarmPar par){ return service.serchAlm(par); } @PostMapping("/cancelalarm") @ApiOperation(value = "取消告警") public Response cancelalarm(@RequestBody BattalarmData adata){ return service.cancelalarm(adata); } @PostMapping("/cancelalarmPro") @ApiOperation(value = "批量取消告警") public Response cancelalarmPro(@RequestBody List<BattalarmData> list){ return service.cancelalarmPro(list); } } src/main/java/com/whyc/dto/AlarmDaoFactory.java
New file @@ -0,0 +1,443 @@ package com.whyc.dto; public class AlarmDaoFactory { public static final int Alarm_All =0; //--全部 public static final int Alarm_vol_Online =119001; //--在线电压 public static final int Alarm_vol_Group =119002; //--组端电压 public static final int Alarm_curr_Charge =119003; //--充电电流 public static final int Alarm_curr_Discharge =119004;//--放电电流 public static final int Alarm_vol_Monomer =119005; //--单体电压 public static final int Alarm_tmp_Monomer =119006; //--单体温度 public static final int Alarm_res_Monomer =119007; //--单体内阻 public static final int Alarm_res_Conn =119008; //--连接条阻抗 public final static int ALM_TYPE_DisChargeMonVol_ID = 119009; //--放电过程中落后单体告警 public static final int Alarm_CapAlarm =119010; //--容量告警告警 public static final int Alarm_CapChange =119011; //--容量更换告警 public final static int ALM_TYPE_MONLYVOL_ID = 119012; //漏液电压告警 public final static int ALM_SIGNAL_ID_Null = 0; public final static int ALM_SIGNAL_ID_OnlineVolHigh = 1; public final static int ALM_SIGNAL_ID_OnlineVolLow = 2; public final static int ALM_SIGNAL_ID_GroupVolHigh = 3; public final static int ALM_SIGNAL_ID_GroupVolLow = 4; public final static int ALM_SIGNAL_ID_ChargeCurrHigh = 5; public final static int ALM_SIGNAL_ID_ChargeCurrLow = 6; public final static int ALM_SIGNAL_ID_DisChargeCurrHigh = 7; public final static int ALM_SIGNAL_ID_DisChargeCurrLow = 8; public final static int ALM_SIGNAL_ID_MonVolHigh = 9; public final static int ALM_SIGNAL_ID_MonVolLow = 10; public final static int ALM_SIGNAL_ID_MonTmpHigh = 11; public final static int ALM_SIGNAL_ID_MonTmpLow = 12; public final static int ALM_SIGNAL_ID_MonResHigh = 13; public final static int ALM_SIGNAL_ID_MonResLow = 14; public final static int ALM_SIGNAL_ID_ConnResHigh = 15; public final static int ALM_SIGNAL_ID_ConnResLow = 16; public final static int ALM_SIGNAL_ID_DischargeMonVolHigh = 17; public final static int ALM_SIGNAL_ID_DischargeMonVolLow = 18; public static final int Alarm_IGNAL_ID_CapAlarmLow =19; public static final int Alarm_IGNAL_ID_CapAlarmHigh =20; public static final int Alarm_IGNAL_ID_CapChangeLow =21; public static final int Alarm_IGNAL_ID_CapChangeHigh =22; /**电源告警 */ public static final int acIn1_over_volA =110001; public static final int acIn1_under_volA =110002; public static final int acIn1_less_A =110003; public static final int acIn1_over_volB =110004; public static final int acIn1_under_volB =110005; public static final int acIn1_less_B =110006; public static final int acIn1_over_volC =110007; public static final int acIn1_under_volC =110008; public static final int acIn1_less_C =110009; public static final int acIn1_powerdown =110010; public static final int acIn1_thunder_err =110011; public static final int dcOut_over_vol =110012; public static final int dcOut_under_vol =110013; public static final int loader_fuse =110014; public static final int battgroup1_fuse =110015; public static final int battgroup2_fuse =110016; public static final int acdcMod1_err =110017; public static final int acdcMod2_err =110018; public static final int acdcMod3_err =110019; public static final int acdcMod4_err =110020; public static final int acdcMod5_err =110021; public static final int acdcMod6_err =110022; public static final int acdcMod7_err =110023; public static final int acdcMod8_err =110024; public static final int acdcMod9_err =110025; public static final int acdcMod10_err =110026; public static final int acdcMod11_err =110027; public static final int acdcMod12_err =110028; public static final int acdcMod13_err =110029; public static final int acdcMod14_err =110030; public static final int acdcMod15_err =110031; public static final int acdcMod16_err =110032; public static final int acIn_total_alarm =110033; public static final int dcOut_total_alarm =110034; public static final int acb1_over_currA =110035; public static final int acb1_over_currB =110036; public static final int acb1_over_currC =110037; public static final int acIn_monitorerr =110038; public static final int dcOut_over_curr =110039; public static final int total_alarm =110040; public static final int battgroup1_volLow =110041; public static final int battgroup2_volLow =110042; public static final int battgroup1_down =110043; public static final int battgroup2_down =110044; public static final int battgroup1_overChgCurr =110045; public static final int battgroup2_overChgCurr =110046; public static final int acdcMod1_overVol =110047; public static final int acdcMod2_overVol =110048; public static final int acdcMod3_overVol =110049; public static final int acdcMod4_overVol =110050; public static final int acdcMod5_overVol =110051; public static final int acdcMod6_overVol =110052; public static final int acdcMod7_overVol =110053; public static final int acdcMod8_overVol =110054; public static final int acdcMod9_overVol =110055; public static final int acdcMod10_overVol =110056; public static final int acdcMod11_overVol =110057; public static final int acdcMod12_overVol =110058; public static final int acdcMod13_overVol =110059; public static final int acdcMod14_overVol =110060; public static final int acdcMod15_overVol =110061; public static final int acdcMod16_overVol =110062; public static final int acdcMod1_underVol =110063; public static final int acdcMod2_underVol =110064; public static final int acdcMod3_underVol =110065; public static final int acdcMod4_underVol =110066; public static final int acdcMod5_underVol =110067; public static final int acdcMod6_underVol =110068; public static final int acdcMod7_underVol =110069; public static final int acdcMod8_underVol =110070; public static final int acdcMod9_underVol =110071; public static final int acdcMod10_underVol =110072; public static final int acdcMod11_underVol =110073; public static final int acdcMod12_underVol =110074; public static final int acdcMod13_underVol =110075; public static final int acdcMod14_underVol =110076; public static final int acdcMod15_underVol =110077; public static final int acdcMod16_underVol =110078; public static final int acdcMod1_overCurr =110079; public static final int acdcMod2_overCurr =110080; public static final int acdcMod3_overCurr =110081; public static final int acdcMod4_overCurr =110082; public static final int acdcMod5_overCurr =110083; public static final int acdcMod6_overCurr =110084; public static final int acdcMod7_overCurr =110085; public static final int acdcMod8_overCurr =110086; public static final int acdcMod9_overCurr =110087; public static final int acdcMod10_overCurr =110088; public static final int acdcMod11_overCurr =110089; public static final int acdcMod12_overCurr =110090; public static final int acdcMod13_overCurr =110091; public static final int acdcMod14_overCurr =110092; public static final int acdcMod15_overCurr =110093; public static final int acdcMod16_overCurr =110094; public static final int acdcMod1_acErr =110095; public static final int acdcMod2_acErr =110096; public static final int acdcMod3_acErr =110097; public static final int acdcMod4_acErr =110098; public static final int acdcMod5_acErr =110099; public static final int acdcMod6_acErr =110100; public static final int acdcMod7_acErr =110101; public static final int acdcMod8_acErr =110102; public static final int acdcMod9_acErr =110103; public static final int acdcMod10_acErr =110104; public static final int acdcMod11_acErr =110105; public static final int acdcMod12_acErr =110106; public static final int acdcMod13_acErr =110107; public static final int acdcMod14_acErr =110108; public static final int acdcMod15_acErr =110109; public static final int acdcMod16_acErr =110110; public static final int acIn1_trip =110111; public static final int acIn2_trip =110112; public static final int acIn1_fuse =110113; public static final int acIn2_fuse =110114; public static final int acIn1_unbanlance =110115; public static final int acIn2_unbanlance =110116; public static final int acIn1_freqerr =110117; public static final int acIn2_freqerr =110118; public static final int comm_err =110119; public static final int powerdev_commErr = 110120; public static final int userAcIn1_PowerDown = 110121; public static final int userAcIn2_PowerDown = 110122; public static final int userAcIn1_CommErr = 110123; public static final int userAcIn2_CommErr = 110124; public static final int temp_CommErr1 = 110125; public static final int temp_CommErr2 = 110126; public static final int temp_CommErr3 = 110127; public static final int humi_CommErr1 = 110128; public static final int humi_CommErr2 = 110129; public static final int humi_CommErr3 = 110130; public static final int smoke_Alarm1 = 110131; public static final int smoke_Alarm2 = 110132; public static final int smoke_Alarm3 = 110133; public static final int smoke_CommErr1 = 110134; public static final int smoke_CommErr2 = 110135; public static final int smoke_CommErr3 = 110136; public static String getAlarmName(int type) { String Alarm_name = "未知"; switch(type) //告警名称 { case 1 : Alarm_name = "在线电压高";break; case 2 : Alarm_name = "在线电压低"; break; case 3 : Alarm_name = "组端电压高";break; case 4 : Alarm_name = "组端电压低"; break; case 5 : Alarm_name = "充电电流大";break; case 6 : Alarm_name = "充电电流低"; break; case 7 : Alarm_name = "放电电流大";break; case 8 : Alarm_name = "放电电流低"; break; case 9 : Alarm_name = "单体电压高";break; case 10 : Alarm_name = "单体电压低"; break; case 11 : Alarm_name = "单体温度高";break; case 12 : Alarm_name = "单体温度低";break; case 13 : Alarm_name = "单体内阻高";break; case 14 : Alarm_name = "单体内阻低"; break; case 15 : Alarm_name = "连接条阻抗高";break; case 16 : Alarm_name = "连接条阻抗低"; break; case 17 : Alarm_name = "放电单体电压高";break; case 18 : Alarm_name = "放电单体电压低";break; case 19 : Alarm_name = "容量告警容量低";break; case 20 : Alarm_name = "容量告警容量高";break; case 21 : Alarm_name = "容量更换容量低";break; case 22 : Alarm_name = "容量更换容量高";break; case 23 : Alarm_name = "电池正极漏液";break; case 24 : Alarm_name = "电池负极漏液 ";break; } return Alarm_name; } public static String getAlarmType(int type){ String Alarm_Type = "未知"; switch (type) { case 1: Alarm_Type="一级告警";break; case 2: Alarm_Type="二级告警";break; case 3: Alarm_Type="三级告警";break; case 4: Alarm_Type="四级告警";break; case 5: Alarm_Type="五级告警";break; case 6: Alarm_Type="六级告警";break; case 7: Alarm_Type="七级告警";break; case 8: Alarm_Type="八级告警";break; case 9: Alarm_Type="九级告警";break; case 10: Alarm_Type="十级告警";break; } return Alarm_Type; } public static String getdevName(int type) { String dev_name = "未知"; switch(type) //告警名称 { case 119020 : dev_name = "通讯故障";break; case 618501 : dev_name = "继电器告警";break; case 618502 : dev_name = "通讯告警";break; case 618503 : dev_name = "设备过温告警";break; case 618504 : dev_name = "二极管D1告警";break; case 119028 : dev_name = "设备高温告警";break; case 119032 : dev_name = "设备SD卡故障";break; case 119033 : dev_name = "采集线告警";break; } return dev_name; } /** * 设备alm_type和电池alm_signal_id,电源告警的alarmType获取对应的告警类型 * @param type * @return */ public static String getAllAlarmName(int type) { String Alarm_name = "未知"; switch(type) //告警名称 { //电池告警 case 1 : Alarm_name = "在线电压高";break; case 2 : Alarm_name = "在线电压低"; break; case 3 : Alarm_name = "组端电压高";break; case 4 : Alarm_name = "组端电压低"; break; case 5 : Alarm_name = "充电电流大";break; case 6 : Alarm_name = "充电电流低"; break; case 7 : Alarm_name = "放电电流大";break; case 8 : Alarm_name = "放电电流低"; break; case 9 : Alarm_name = "单体电压高";break; case 10 : Alarm_name = "单体电压低"; break; case 11 : Alarm_name = "单体温度高";break; case 12 : Alarm_name = "单体温度低";break; case 13 : Alarm_name = "单体内阻高";break; case 14 : Alarm_name = "单体内阻低"; break; case 15 : Alarm_name = "连接条阻抗高";break; case 16 : Alarm_name = "连接条阻抗低"; break; case 17 : Alarm_name = "放电单体电压高";break; case 18 : Alarm_name = "放电单体电压低";break; case 19 : Alarm_name = "容量告警容量低";break; case 20 : Alarm_name = "容量告警容量高";break; case 21 : Alarm_name = "容量更换容量低";break; case 22 : Alarm_name = "容量更换容量高";break; case 23 : Alarm_name = "漏液电压高";break; case 24 : Alarm_name = "漏液电压低 ";break; //设备告警 case 119020 : Alarm_name = "通讯故障";break; case 618501 : Alarm_name = "继电器告警";break; case 618502 : Alarm_name = "通讯告警";break; case 618503 : Alarm_name = "设备过温告警";break; case 618504 : Alarm_name = "二极管D1告警";break; case 119028 : Alarm_name = "设备高温告警";break; case 119032 : Alarm_name = "设备SD卡故障";break; case 119033 : Alarm_name = "采集线告警";break; //电源告警 case acIn1_over_volA: Alarm_name ="交流A相过压";break; case acIn1_under_volA: Alarm_name ="交流A相欠压";break; case acIn1_less_A: Alarm_name ="交流A相缺相";break; case acIn1_over_volB: Alarm_name ="交流B相过压";break; case acIn1_under_volB: Alarm_name ="交流B相欠压";break; case acIn1_less_B: Alarm_name ="交流B相缺相";break; case acIn1_over_volC: Alarm_name ="交流C相过压";break; case acIn1_under_volC: Alarm_name ="交流C相欠压";break; case acIn1_less_C: Alarm_name ="交流C相缺相";break; case acIn1_powerdown: Alarm_name ="交流停电";break; case acIn1_thunder_err: Alarm_name ="防雷器故障";break; case dcOut_over_vol: Alarm_name ="直流电压过高";break; case dcOut_under_vol: Alarm_name ="直流电压过低";break; case loader_fuse: Alarm_name ="负载熔断";break; case battgroup1_fuse: Alarm_name ="电池组1熔断";break; case battgroup2_fuse: Alarm_name ="电池组2熔断";break; case acdcMod1_err: Alarm_name ="整流器1总故障";break; case acdcMod2_err: Alarm_name ="整流器2总故障";break; case acdcMod3_err: Alarm_name ="整流器3总故障";break; case acdcMod4_err: Alarm_name ="整流器4总故障";break; case acdcMod5_err: Alarm_name ="整流器5总故障";break; case acdcMod6_err: Alarm_name ="整流器6总故障";break; case acdcMod7_err: Alarm_name ="整流器7总故障";break; case acdcMod8_err: Alarm_name ="整流器8总故障";break; case acdcMod9_err: Alarm_name ="整流器9总故障";break; case acdcMod10_err: Alarm_name ="整流器10总故障";break; case acdcMod11_err: Alarm_name ="整流器11总故障";break; case acdcMod12_err: Alarm_name ="整流器12总故障";break; case acdcMod13_err: Alarm_name ="整流器13总故障";break; case acdcMod14_err: Alarm_name ="整流器14总故障";break; case acdcMod15_err: Alarm_name ="整流器15总故障";break; case acdcMod16_err: Alarm_name ="整流器16总故障";break; case acIn_total_alarm: Alarm_name ="交流总故障";break; case dcOut_total_alarm: Alarm_name ="直流总故障";break; case acb1_over_currA: Alarm_name ="交流A相过流";break; case acb1_over_currB: Alarm_name ="交流B相过流";break; case acb1_over_currC: Alarm_name ="交流C相过流";break; case acIn_monitorerr: Alarm_name ="监控器故障";break; case dcOut_over_curr: Alarm_name ="直流过流";break; case total_alarm: Alarm_name ="开关柜总报警";break; case battgroup1_volLow: Alarm_name ="电池组1电压低";break; case battgroup2_volLow: Alarm_name ="电池组2电压低";break; case battgroup1_down: Alarm_name ="电池组1下电";break; case battgroup2_down: Alarm_name ="电池组2下电";break; case battgroup1_overChgCurr: Alarm_name ="电池组1充电过流";break; case battgroup2_overChgCurr: Alarm_name ="电池组2充电过流";break; case acdcMod1_overVol: Alarm_name ="整流器1过压";break; case acdcMod2_overVol: Alarm_name ="整流器2过压";break; case acdcMod3_overVol: Alarm_name ="整流器3过压";break; case acdcMod4_overVol: Alarm_name ="整流器4过压";break; case acdcMod5_overVol: Alarm_name ="整流器5过压";break; case acdcMod6_overVol: Alarm_name ="整流器6过压";break; case acdcMod7_overVol: Alarm_name ="整流器7过压";break; case acdcMod8_overVol: Alarm_name ="整流器8过压";break; case acdcMod9_overVol: Alarm_name ="整流器9过压";break; case acdcMod10_overVol: Alarm_name ="整流器10过压";break; case acdcMod11_overVol: Alarm_name ="整流器11过压";break; case acdcMod12_overVol: Alarm_name ="整流器12过压";break; case acdcMod13_overVol: Alarm_name ="整流器13过压";break; case acdcMod14_overVol: Alarm_name ="整流器14过压";break; case acdcMod15_overVol: Alarm_name ="整流器15过压";break; case acdcMod16_overVol: Alarm_name ="整流器16过压";break; case acdcMod1_underVol: Alarm_name ="整流器1欠压";break; case acdcMod2_underVol: Alarm_name ="整流器2欠压";break; case acdcMod3_underVol: Alarm_name ="整流器3欠压";break; case acdcMod4_underVol: Alarm_name ="整流器4欠压";break; case acdcMod5_underVol: Alarm_name ="整流器5欠压";break; case acdcMod6_underVol: Alarm_name ="整流器6欠压";break; case acdcMod7_underVol: Alarm_name ="整流器7欠压";break; case acdcMod8_underVol: Alarm_name ="整流器8欠压";break; case acdcMod9_underVol: Alarm_name ="整流器9欠压";break; case acdcMod10_underVol: Alarm_name ="整流器10欠压";break; case acdcMod11_underVol: Alarm_name ="整流器11欠压";break; case acdcMod12_underVol: Alarm_name ="整流器12欠压";break; case acdcMod13_underVol: Alarm_name ="整流器13欠压";break; case acdcMod14_underVol: Alarm_name ="整流器14欠压";break; case acdcMod15_underVol: Alarm_name ="整流器15欠压";break; case acdcMod16_underVol: Alarm_name ="整流器16欠压";break; case acdcMod1_overCurr: Alarm_name ="整流器1过流";break; case acdcMod2_overCurr: Alarm_name ="整流器2过流";break; case acdcMod3_overCurr: Alarm_name ="整流器3过流";break; case acdcMod4_overCurr: Alarm_name ="整流器4过流";break; case acdcMod5_overCurr: Alarm_name ="整流器5过流";break; case acdcMod6_overCurr: Alarm_name ="整流器6过流";break; case acdcMod7_overCurr: Alarm_name ="整流器7过流";break; case acdcMod8_overCurr: Alarm_name ="整流器8过流";break; case acdcMod9_overCurr: Alarm_name ="整流器9过流";break; case acdcMod10_overCurr: Alarm_name ="整流器10过流";break; case acdcMod11_overCurr: Alarm_name ="整流器11过流";break; case acdcMod12_overCurr: Alarm_name ="整流器12过流";break; case acdcMod13_overCurr: Alarm_name ="整流器13过流";break; case acdcMod14_overCurr: Alarm_name ="整流器14过流";break; case acdcMod15_overCurr: Alarm_name ="整流器15过流";break; case acdcMod16_overCurr: Alarm_name ="整流器16过流";break; case acdcMod1_acErr: Alarm_name ="整流器1交流异常";break; case acdcMod2_acErr: Alarm_name ="整流器2交流异常";break; case acdcMod3_acErr: Alarm_name ="整流器3交流异常";break; case acdcMod4_acErr: Alarm_name ="整流器4交流异常";break; case acdcMod5_acErr: Alarm_name ="整流器5交流异常";break; case acdcMod6_acErr: Alarm_name ="整流器6交流异常";break; case acdcMod7_acErr: Alarm_name ="整流器7交流异常";break; case acdcMod8_acErr: Alarm_name ="整流器8交流异常";break; case acdcMod9_acErr: Alarm_name ="整流器9交流异常";break; case acdcMod10_acErr: Alarm_name ="整流器10交流异常";break; case acdcMod11_acErr: Alarm_name ="整流器11交流异常";break; case acdcMod12_acErr: Alarm_name ="整流器12交流异常";break; case acdcMod13_acErr: Alarm_name ="整流器13交流异常";break; case acdcMod14_acErr: Alarm_name ="整流器14交流异常";break; case acdcMod15_acErr: Alarm_name ="整流器15交流异常";break; case acdcMod16_acErr: Alarm_name ="整流器16交流异常";break; case acIn1_trip: Alarm_name ="交流输入1跳闸";break; case acIn2_trip: Alarm_name ="交流输入2跳闸";break; case acIn1_fuse: Alarm_name ="交流输入1熔丝告警";break; case acIn2_fuse: Alarm_name ="交流输入2熔丝告警";break; case acIn1_unbanlance: Alarm_name ="交流输入1三相不平衡";break; case acIn2_unbanlance: Alarm_name ="交流输入2三相不平衡";break; case acIn1_freqerr: Alarm_name ="交流输入1频率异常";break; case acIn2_freqerr: Alarm_name ="交流输入2频率异常";break; case comm_err: Alarm_name ="协转通信故障";break; case powerdev_commErr : Alarm_name = "电源通信故障";break; case userAcIn1_PowerDown : Alarm_name = "交流输入1停电";break; case userAcIn2_PowerDown : Alarm_name = "交流输入2停电";break; case userAcIn1_CommErr : Alarm_name = "交流1采集通信故障";break; case userAcIn2_CommErr : Alarm_name = "交流2采集通信故障";break; case temp_CommErr1 : Alarm_name = "温感1通信故障";break; case temp_CommErr2 : Alarm_name = "温感2通信故障";break; case temp_CommErr3 : Alarm_name = "温感3通信故障";break; case humi_CommErr1 : Alarm_name = "湿感1通信故障";break; case humi_CommErr2 : Alarm_name = "湿感2通信故障";break; case humi_CommErr3 : Alarm_name = "湿感3通信故障";break; case smoke_Alarm1 : Alarm_name = "烟感1报警";break; case smoke_Alarm2 : Alarm_name = "烟感2报警";break; case smoke_Alarm3 : Alarm_name = "烟感3报警";break; case smoke_CommErr1 : Alarm_name = "烟感1通信故障";break; case smoke_CommErr2 : Alarm_name = "烟感2通信故障";break; case smoke_CommErr3 : Alarm_name = "烟感3通信故障";break; default: Alarm_name = "未知告警";break; } return Alarm_name; } } src/main/java/com/whyc/dto/paramter/AlarmPar.java
New file @@ -0,0 +1,43 @@ package com.whyc.dto.paramter; import com.fasterxml.jackson.annotation.JsonFormat; import com.whyc.dto.Page; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; import lombok.ToString; import java.io.Serializable; import java.util.Date; @Data @AllArgsConstructor @NoArgsConstructor @ToString public class AlarmPar implements Serializable { private int almIdOne;//almid参数1 private int almIdTwo;//almid参数2 private int almIdThree;//almid参数3 private int almIdFour;//almid参数4 private int almIdFive;//almid参数5 private int almIdSix;//almid参数6 private int almSignalIdOne;//almSignalId参数1 private int almSignalIdTwo;//almSignalId参数2 private int almLevelOne;//almLevel参数1 private int almLevelTwo;//almLevel参数2 private int almLevelThree;//almLevel参数3 private int almLevelFour;//almLevel参数4 @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") private Date almStartTime;//开始时间 @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") private Date almStartTime1;//开始时间1 private String stationname;//机房名称(全称) private String stationname1;//省 private int battGroupId;//电池组id private int almIsConfirmed;//是否确认 private int uId;//用户id private int almClearedType;//实时还是历史 0实时 private Page page;//分页 } src/main/java/com/whyc/dto/result/AlarmNumberRes.java
New file @@ -0,0 +1,26 @@ package com.whyc.dto.result; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; import lombok.ToString; import java.io.Serializable; @Data @AllArgsConstructor @NoArgsConstructor @ToString public class AlarmNumberRes implements Serializable { private int numberReal;//实时告警数 private int numberCapAlm;//容量告警告警数 private int numberGroupVol;//组端电压告警数 private int numberCharge;//充电电流告警数 private int numberDischarge;//放电电流告警数 private int numberMonVol;//单体电压告警数 private int numberTmp;//单体温度告警数 private int numberRes;//单体内阻告警数 private int numberSer;//连接条阻抗告警数 private int numberCapChange;//容量更换告警数 private int numberAll;//告警总数 } src/main/java/com/whyc/dto/result/AlarmRes.java
New file @@ -0,0 +1,20 @@ package com.whyc.dto.result; import com.whyc.pojo.BattalarmData; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; import lombok.ToString; import java.io.Serializable; @Data @AllArgsConstructor @NoArgsConstructor @ToString public class AlarmRes implements Serializable { private int BattGroupId;//电池组id private String StationName;//机房名称 private String BattGroupName;//电池组名称 private BattalarmData adata;//告警信息 } src/main/java/com/whyc/dto/result/AlarmStaticRes.java
New file @@ -0,0 +1,17 @@ package com.whyc.dto.result; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; import lombok.ToString; import java.io.Serializable; @Data @AllArgsConstructor @NoArgsConstructor @ToString public class AlarmStaticRes implements Serializable { private int number;//告警数量 private int almId;//告警类型id } src/main/java/com/whyc/mapper/BattalarmDataMapper.java
@@ -1,14 +1,29 @@ package com.whyc.mapper; import com.whyc.dto.Batt_Maint_Dealarm; import com.whyc.dto.paramter.AlarmPar; import com.whyc.dto.result.AlarmRes; import com.whyc.dto.result.AlarmStaticRes; import com.whyc.pojo.BattalarmData; import java.util.List; public interface BattalarmDataMapper extends CustomMapper<BattalarmData>{ //测试 List<Batt_Maint_Dealarm> test(BattalarmData battalarmData); //历史告警查询 List<Batt_Maint_Dealarm> serchByInfo(BattalarmData balarm); List<AlarmRes> serchByInfo(AlarmPar par); //实时告警查询 List<Batt_Maint_Dealarm> serchByCondition(Batt_Maint_Dealarm bmd); List<AlarmRes> serchByCondition(AlarmPar par); //查询实时告警数 List<AlarmStaticRes> serchAlm(AlarmPar par); //根据num取消告警 int cancelalarm(BattalarmData battalarmData); //根据num取消告警(多条记录) int cancelalarmPro(List<BattalarmData> list); } src/main/java/com/whyc/pojo/BattalarmData.java
@@ -67,7 +67,7 @@ @TableField("alm_is_confirmed") @ApiModelProperty(value = "是否被确定") private Boolean almIsConfirmed; private int almIsConfirmed; @TableField("alm_confirmed_time") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") @@ -83,7 +83,7 @@ @TableField("usr_Id") private Integer usrId; private Boolean msgSended; private int msgSended; private Integer workFlag; src/main/java/com/whyc/service/BattalarmDataService.java
@@ -1,15 +1,22 @@ package com.whyc.service; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageInfo; import com.whyc.dto.AlarmDaoFactory; import com.whyc.dto.Batt_Maint_Dealarm; import com.whyc.dto.Response; import com.whyc.dto.paramter.AlarmPar; import com.whyc.dto.result.AlarmRes; import com.whyc.dto.result.AlarmStaticRes; import com.whyc.dto.result.AlarmNumberRes; import com.whyc.mapper.BattalarmDataMapper; import com.whyc.pojo.BattalarmData; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import javax.annotation.Resource; import java.util.List; @@ -36,21 +43,119 @@ IPage iPage=mapper.selectPage(page,wrapper); return new Response<List<BattalarmData>>().set(1,iPage.getRecords(),String.valueOf(iPage.getTotal())); } //电池告警实时查询 public Response<List<Batt_Maint_Dealarm>> serchByCondition(Batt_Maint_Dealarm bmd) { //分页信息 PageHelper.startPage(bmd.getPage().getPageCurr(), bmd.getPage().getPageSize()); List<Batt_Maint_Dealarm> list=mapper.serchByCondition(bmd); PageInfo<Batt_Maint_Dealarm> pinfo=new PageInfo<Batt_Maint_Dealarm>(list); return new Response<List<Batt_Maint_Dealarm>>().set(1,list,String.valueOf(pinfo.getTotal())); } //根据电池组id查询所有的告警 public Response<List<Batt_Maint_Dealarm>> serchByInfo(BattalarmData balarm) { //测试:根据电池组id查询所有的告警 public Response<List<Batt_Maint_Dealarm>> test(BattalarmData balarm) { //分页信息 PageHelper.startPage(1,20); List<Batt_Maint_Dealarm> list=mapper.serchByInfo(balarm); List<Batt_Maint_Dealarm> list=mapper.test(balarm); PageInfo<Batt_Maint_Dealarm> pinfo=new PageInfo<Batt_Maint_Dealarm>(list); return new Response<List<Batt_Maint_Dealarm>>().set(1,list,String.valueOf(pinfo.getPages())); } //电池告警实时查询 public Response<List<AlarmRes>> serchByCondition(AlarmPar par) { //分页信息 PageHelper.startPage(par.getPage().getPageCurr(), par.getPage().getPageSize()); List<AlarmRes> list=mapper.serchByCondition(par); PageInfo<AlarmRes> pinfo=new PageInfo<AlarmRes>(list); return new Response<List<AlarmRes>>().set(1,list,String.valueOf(pinfo.getTotal())); } //根据电池组id查询所有的告警 public Response<List<AlarmRes>> serchByInfo(AlarmPar par) { //分页信息 PageHelper.startPage(par.getPage().getPageCurr(), par.getPage().getPageSize()); List<AlarmRes> list=mapper.serchByInfo(par); PageInfo<AlarmRes> pinfo=new PageInfo<AlarmRes>(list); return new Response<List<AlarmRes>>().set(1,list,String.valueOf(pinfo.getPages())); } //查询实时告警数 public Response<AlarmNumberRes> serchAlm(AlarmPar par) { /*BattalarmData adata=new BattalarmData(); adata.setNum(0l);//实时告警总数 adata.setBattGroupId(0);//容量告警告警数 adata.setMonNum(0);//组端电压告警数 adata.setAlmId(0);//充电电流告警数 adata.setAlmSignalId(0);//放电电流告警数 adata.setAlmLevel(0);//单体电压告警数 adata.setAlmIsConfirmed(0);//单体温度告警数 adata.setAlmClearedType(0);//单体内阻告警数 adata.setUsrId(0);//连接条阻抗告警数 adata.setAlmValue(0f);//容量更换告警*/ AlarmNumberRes ares=new AlarmNumberRes(); //int numZ=0;//告警总数 List<AlarmStaticRes> list=mapper.serchAlm(par);//各类告警数 if(list!=null&&list.size()>0){ for(int i=0;i<list.size();i++){ if(list.get(i).getAlmId()== AlarmDaoFactory.Alarm_CapAlarm){ /*adata.setBattGroupId(list.get(i).getNumber());//容量告警告警数 numZ+=list.get(i).getNumber();*/ ares.setNumberCapAlm(list.get(i).getNumber());//容量告警告警数 } if(list.get(i).getAlmId()==AlarmDaoFactory.Alarm_vol_Group){ /*adata.setMonNum(list.get(i).getNumber());//组端电压告警数 numZ+=list.get(i).getNumber();*/ ares.setNumberGroupVol(list.get(i).getNumber());//组端电压告警数 } if(list.get(i).getAlmId()==AlarmDaoFactory.Alarm_curr_Charge){ /*adata.setAlmId(list.get(i).getNumber());//充电电流告警数 numZ+=list.get(i).getNumber();*/ ares.setNumberCharge(list.get(i).getNumber());//充电电流告警数 } if(list.get(i).getAlmId()==AlarmDaoFactory.Alarm_curr_Discharge){ /*adata.setAlmSignalId(list.get(i).getNumber());//放电电流告警数 numZ+=list.get(i).getNumber();*/ } if(list.get(i).getAlmId()==AlarmDaoFactory.Alarm_vol_Monomer){ /*adata.setAlmLevel(list.get(i).getNumber());//单体电压告警数 numZ+=list.get(i).getNumber();*/ } if(list.get(i).getAlmId()==AlarmDaoFactory.Alarm_tmp_Monomer){ /* adata.setAlmIsConfirmed(list.get(i).getNumber());//单体温度告警数 numZ+=list.get(i).getNumber();*/ } if(list.get(i).getAlmId()==AlarmDaoFactory.Alarm_res_Monomer){ /* adata.setAlmClearedType(list.get(i).getNumber());//单体内阻告警数 numZ+=list.get(i).getNumber();*/ } if(list.get(i).getAlmId()==AlarmDaoFactory.Alarm_res_Conn){ /* adata.setUsrId(list.get(i).getNumber());//连接条阻抗告警数 numZ+=list.get(i).getNumber();*/ } if(list.get(i).getAlmId()==AlarmDaoFactory.Alarm_CapChange){ /* adata.setAlmValue((float)list.get(i).getNumber());//容量更换告警数 numZ+=list.get(i).getNumber();*/ } } } return new Response<AlarmNumberRes>().set(1,ares); } //根据num取消告警 public Response cancelalarm(BattalarmData adata) { UpdateWrapper wrapper = new UpdateWrapper<>(); //修改的属性 wrapper.set("record_id",adata.getRecordId()); wrapper.set("alm_end_time",adata.getAlmEndTime()); wrapper.set("alm_cleared_type",adata.getAlmClearedType()); // 通过num修改 wrapper.eq("num",adata.getNum()); int flag=mapper.update(null,wrapper); return new Response().set(flag); } //根据num取消告警(多条记录) @Transactional public Response cancelalarmPro(List<BattalarmData> list) { int flag=0; for (BattalarmData adata:list) { //修改的属性 UpdateWrapper wrapper = new UpdateWrapper<>(); wrapper.set("record_id",adata.getRecordId()); wrapper.set("alm_end_time",adata.getAlmEndTime()); wrapper.set("alm_cleared_type",adata.getAlmClearedType()); // 通过num修改 wrapper.eq("num",adata.getNum()); flag=mapper.update(null,wrapper); } return new Response().set(flag); } } src/main/resources/mapper/BattalarmDataMapper.xml
@@ -1,12 +1,11 @@ <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="com.whyc.mapper.BattalarmDataMapper" > <resultMap id="bmd" type="com.whyc.dto.Batt_Maint_Dealarm"> <association property="binf" javaType="com.whyc.pojo.Battinf"> <result property="StationName" column="stationname"></result> <result property="BattGroupName" column="battgroupname"></result> </association> <association property="adata" javaType="com.whyc.pojo.BattalarmData"> <resultMap id="alarmRes" type="AlarmRes"> <result property="BattGroupId" column="BattGroupId"></result> <result property="StationName" column="stationname"></result> <result property="BattGroupName" column="battgroupname"></result> <association property="adata" javaType="BattalarmData"> <id property="num" column="num"></id> <result property="BattGroupId" column="BattGroupId"></result> <result property="almSignalId" column="alm_signal_id"></result> @@ -21,7 +20,12 @@ </resultMap> <select id="serchByInfo" resultMap="bmd"> <resultMap id="alarmStaticRes" type="AlarmStaticRes"> <result property="number" column="number"></result> <result property="almId" column="alm_id"></result> </resultMap> <select id="test" resultMap="alarmRes"> select distinct(db_alarm.tb_battalarm_data.BattGroupId),db_alarm.tb_battalarm_data.num,alm_signal_id,db_alarm.tb_battalarm_data.monnum,alm_value,alm_level,alm_is_confirmed,alm_confirmed_time,alm_start_time,alm_end_time, stationname,battgroupname from db_alarm.tb_battalarm_data,db_battinf.tb_battinf <where> @@ -37,39 +41,90 @@ </select> <!--select distinct(db_alarm.tb_battalarm_data.BattGroupId),db_alarm.tb_battalarm_data.num,alm_signal_id,db_alarm.tb_battalarm_data.monnum,alm_value,alm_level,alm_is_confirmed,alm_confirmed_time,alm_start_time,alm_end_time, stationname,battgroupname from db_alarm.tb_battalarm_data,db_battinf.tb_battinf where alm_id in(?,?,?,?,?,?) and alm_signal_id%2 in(?,?) and alm_level in(?,?,?,?) and alm_start_time>=? and alm_start_time<=? and db_battinf.tb_battinf.stationname1 like ? and db_battinf.tb_battinf.stationname like ? and alm_cleared_type in(?,0,1,2) and db_battinf.tb_battinf.battgroupid!=? and db_alarm.tb_battalarm_data.battgroupid=db_battinf.tb_battinf.battgroupid and db_alarm.tb_battalarm_data.BattGroupId in(select distinct db_battinf.tb_battinf.battgroupid from db_battinf.tb_battinf,db_user.tb_user_battgroup_baojigroup_battgroup,db_user.tb_user_battgroup_baojigroup_usr,db_user.tb_user_inf where db_user.tb_user_battgroup_baojigroup_battgroup.BattGroupId=db_battinf.tb_battinf.BattGroupId and db_user.tb_user_battgroup_baojigroup_usr.baoji_group_id=db_user.tb_user_battgroup_baojigroup_battgroup.baoji_group_id and db_user.tb_user_inf.uid=db_user.tb_user_battgroup_baojigroup_usr.uid and db_user.tb_user_inf.uid=? ) order by db_alarm.tb_battalarm_data.alm_start_time desc,db_alarm.tb_battalarm_data.monnum asc limit ?,? --> <select id="serchByCondition" resultMap="bmd"> <select id="serchByCondition" resultMap="alarmRes"> select distinct(db_alarm.tb_battalarm_data.BattGroupId),db_alarm.tb_battalarm_data.num,alm_signal_id,db_alarm.tb_battalarm_data.monnum,alm_value,alm_level,alm_is_confirmed,alm_confirmed_time,alm_start_time,alm_end_time, stationname,battgroupname from db_alarm.tb_battalarm_data,db_battinf.tb_battinf <where> db_alarm.tb_battalarm_data.battgroupid=db_battinf.tb_battinf.battgroupid and alm_id in(#{mainf.faultTypeId},#{mainf.faultLevel},#{mainf.recordUid},#{mainf.maintTypeId},#{mainf.maintDone},#{mainf.maintClose}) and alm_signal_id%2 in(#{adata.almId},#{adata.almSignalId}) and alm_level in(#{mainf.num},#{mainf.BattGroupId},#{mainf.masterAudit},#{mainf.appointUid}) and alm_start_time>=#{adata.almStartTime} and alm_start_time <=#{adata.almStartTime1} and db_battinf.tb_battinf.stationname1 like '%${binf.StationName1}%' <if test="binf.battgroupid==0"> and db_battinf.tb_battinf.battgroupid!=#{binf.BattGroupId} and alm_id in(#{almIdOne},#{almIdTwo},#{almIdThree},#{almIdFour},#{almIdFive},#{almIdSix}) and alm_signal_id%2 in(#{almSignalIdOne},#{almSignalIdTwo}) and alm_level in(#{almLevelOne},#{almLevelTwo},#{almLevelThree},#{almLevelFour}) and alm_cleared_type=0 and alm_start_time>=#{almStartTime} and alm_start_time <=#{almStartTime1} and db_battinf.tb_battinf.stationname1 like '%${stationname1}%' <if test="battGroupId==0"> and db_battinf.tb_battinf.battgroupid!=#{battGroupId} </if> <if test="binf.battgroupid!=0"> and db_battinf.tb_battinf.battgroupid=#{binf.BattGroupId} <if test="battGroupId!=0"> and db_battinf.tb_battinf.battgroupid=#{battGroupId} </if> <if test="almIsConfirmed==-1"> and db_alarm.tb_battalarm_data.alm_is_confirmed!=#{almIsConfirmed} </if> <if test="almIsConfirmed!=-1"> and db_alarm.tb_battalarm_data.alm_is_confirmed=#{almIsConfirmed} </if> and db_alarm.tb_battalarm_data.BattGroupId in(select distinct db_battinf.tb_battinf.battgroupid from db_battinf.tb_battinf,db_user.tb_user_battgroup_baojigroup_battgroup,db_user.tb_user_battgroup_baojigroup_usr,db_user.tb_user_inf where db_user.tb_user_battgroup_baojigroup_battgroup.BattGroupId=db_battinf.tb_battinf.BattGroupId and db_user.tb_user_battgroup_baojigroup_usr.baoji_group_id=db_user.tb_user_battgroup_baojigroup_battgroup.baoji_group_id and db_user.tb_user_inf.uid=db_user.tb_user_battgroup_baojigroup_usr.uid and db_user.tb_user_inf.uid=#{uinf.uId} ) and db_user.tb_user_inf.uid=db_user.tb_user_battgroup_baojigroup_usr.uid and db_user.tb_user_inf.uid=#{uId} ) </where> order by db_alarm.tb_battalarm_data.alm_start_time desc,db_alarm.tb_battalarm_data.monnum asc </select> <select id="serchByInfo" resultMap="alarmRes"> select distinct(db_alarm.tb_battalarm_data.BattGroupId),db_alarm.tb_battalarm_data.num,alm_signal_id,db_alarm.tb_battalarm_data.monnum,alm_value,alm_level,alm_is_confirmed,alm_confirmed_time,alm_start_time,alm_end_time, stationname,battgroupname from db_alarm.tb_battalarm_data,db_battinf.tb_battinf <where> db_alarm.tb_battalarm_data.battgroupid=db_battinf.tb_battinf.battgroupid and alm_id in(#{almIdOne},#{almIdTwo},#{almIdThree},#{almIdFour},#{almIdFive},#{almIdSix}) and alm_signal_id%2 in(#{almSignalIdOne},#{almSignalIdTwo}) and alm_level in(#{almLevelOne},#{almLevelTwo},#{almLevelThree},#{almLevelFour}) and alm_start_time>=#{almStartTime} and alm_start_time <=#{almStartTime1} and db_battinf.tb_battinf.stationname1 like '%${stationname1}%' <if test="battGroupId==0"> and db_battinf.tb_battinf.battgroupid!=#{battGroupId} </if> <if test="battGroupId!=0"> and db_battinf.tb_battinf.battgroupid=#{battGroupId} </if> <if test="almClearedType==0"> and alm_cleared_type=#{almClearedType} </if> <if test="almClearedType==1"> and alm_cleared_type in(#{almClearedType},1,2) </if> <if test="almClearedType==100"> and alm_cleared_type in(#{almClearedType},0,1,2) </if> <if test="almClearedType==200"> and alm_cleared_type=#{almClearedType} </if> and db_alarm.tb_battalarm_data.BattGroupId in(select distinct db_battinf.tb_battinf.battgroupid from db_battinf.tb_battinf,db_user.tb_user_battgroup_baojigroup_battgroup,db_user.tb_user_battgroup_baojigroup_usr,db_user.tb_user_inf where db_user.tb_user_battgroup_baojigroup_battgroup.BattGroupId=db_battinf.tb_battinf.BattGroupId and db_user.tb_user_battgroup_baojigroup_usr.baoji_group_id=db_user.tb_user_battgroup_baojigroup_battgroup.baoji_group_id and db_user.tb_user_inf.uid=db_user.tb_user_battgroup_baojigroup_usr.uid and db_user.tb_user_inf.uid=#{uId} ) </where> order by db_alarm.tb_battalarm_data.alm_start_time desc,db_alarm.tb_battalarm_data.monnum asc </select> <select id="serchAlm" resultMap="alarmStaticRes" > select count(num) as number,alm_id from db_alarm.tb_battalarm_data where alm_cleared_type=0 and tb_battalarm_data.BattGroupId in (select distinct db_battinf.tb_battinf.battgroupid from db_battinf.tb_battinf,db_user.tb_user_battgroup_baojigroup_battgroup,db_user.tb_user_battgroup_baojigroup_usr,db_user.tb_user_inf where db_user.tb_user_battgroup_baojigroup_battgroup.BattGroupId=db_battinf.tb_battinf.BattGroupId and db_user.tb_user_battgroup_baojigroup_usr.baoji_group_id=db_user.tb_user_battgroup_baojigroup_battgroup.baoji_group_id and db_user.tb_user_inf.uid=db_user.tb_user_battgroup_baojigroup_usr.uid and db_user.tb_user_inf.uid=#{uId} and db_battinf.tb_battinf.stationname like '%${stationname}%' ) GROUP BY(alm_id) </select> <update id="cancelalarm" parameterType="BattalarmData"> update db_alarm.tb_battalarm_data set record_id=#{recordId},alm_end_time=#{almEndTime},alm_cleared_type=#{almClearedType} where num=#{num} </update> </mapper>