From f8479e6f138343b091b3ceeb7b232e75b3247946 Mon Sep 17 00:00:00 2001 From: whyclxw <810412026@qq.com> Date: 星期四, 27 六月 2024 16:41:31 +0800 Subject: [PATCH] 蓄电池组后评估测试版 --- src/main/java/com/whyc/pojo/BattTestInf.java | 3 src/main/java/com/whyc/mapper/BattTestInfMapper.java | 9 src/main/java/com/whyc/util/PageInfoUtils.java | 49 + src/main/resources/mapper/BattInfMapper.xml | 8 src/main/java/com/whyc/pojo/AlarmParam.java | 68 + src/main/java/com/whyc/dto/ReportBattDTO.java | 54 + src/main/java/com/whyc/mapper/BattAlarmMapper.java | 2 src/main/resources/mapper/BattTestInfMapper.xml | 41 + src/main/java/com/whyc/service/BattTestInfService.java | 255 +++++++ src/main/java/com/whyc/dto/AlarmDaoFactory.java | 1382 +++++++++++++++++++++++++++++++++++++++ src/main/java/com/whyc/dto/BattCapFactory.java | 162 ++++ src/main/java/com/whyc/mapper/BattInfMapper.java | 5 src/main/resources/mapper/BattAlarmMapper.xml | 9 src/main/java/com/whyc/controller/BattTestInfController.java | 17 src/main/java/com/whyc/mapper/AlarmParamMapper.java | 6 15 files changed, 2,065 insertions(+), 5 deletions(-) diff --git a/src/main/java/com/whyc/controller/BattTestInfController.java b/src/main/java/com/whyc/controller/BattTestInfController.java index 94b17ca..38b389b 100644 --- a/src/main/java/com/whyc/controller/BattTestInfController.java +++ b/src/main/java/com/whyc/controller/BattTestInfController.java @@ -1,15 +1,14 @@ package com.whyc.controller; +import com.whyc.dto.ReportBattDTO; import com.whyc.dto.Response; import com.whyc.service.BattTestInfDataService; import com.whyc.service.BattTestInfService; +import com.whyc.util.ActionUtil; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RequestParam; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.bind.annotation.*; @RestController @Api(tags = "鐢垫睜缁勫厖鏀剧數璁板綍") @@ -34,4 +33,14 @@ Response res=dataService.getTDataHis(binfId,testRecordCount); return res; } + + /** + * 钃勭數姹犵粍鍚庤瘎浼� + */ + @PostMapping("searchGroupAssess") + @ApiOperation(notes = "searchByCondition ", value = "钃勭數姹犵粍鍚庤瘎浼�") + public Response searchByCondition(@RequestParam int pageNum,@RequestParam int pageSize, @RequestBody ReportBattDTO tinf) { + //UserInf userInf = ActionUtil.getUser(); + return service.searchGroupAssess(pageNum,pageSize,tinf,1001); + } } \ No newline at end of file diff --git a/src/main/java/com/whyc/dto/AlarmDaoFactory.java b/src/main/java/com/whyc/dto/AlarmDaoFactory.java new file mode 100644 index 0000000..d6d8070 --- /dev/null +++ b/src/main/java/com/whyc/dto/AlarmDaoFactory.java @@ -0,0 +1,1382 @@ +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_TYPE_MONREALCAP_ID = 119013; //鍗曚綋棰勪及瀹归噺鍛婅 + + 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 final int acIn2_over_volA = 110137; + public static final int acIn2_under_volA = 110138; + public static final int acIn2_less_A = 110139; + public static final int acIn2_over_volB = 110140; + public static final int acIn2_under_volB = 110141; + public static final int acIn2_less_B = 110142; + public static final int acIn2_over_volC = 110143; + public static final int acIn2_under_volC = 110144; + public static final int acIn2_less_C = 110145; + public static final int power_alm = 110146; + public static final int powerdown_commErr = 110147; + + + /*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 = "鐢垫睜姝f瀬婕忔恫";break; + case 24 : Alarm_name = "鐢垫睜璐熸瀬婕忔恫 ";break; + } + + return Alarm_name; + }*/ + public static String getAlarmName(int type) { + String Alarm_name = "NONE"; + switch (type) //鍛婅鍚嶇О + { + case 1: + Alarm_name = "HighOnlineVoltage"; + break; + case 2: + Alarm_name = "LowOnlineVoltage"; + break; + case 3: + Alarm_name = "HighGroupVoltage"; + break; + case 4: + Alarm_name = "LowGroupVoltage"; + break; + case 5: + Alarm_name = "HighChargingCurrent"; + break; + case 6: + Alarm_name = "LowChargingCurrent"; + break; + case 7: + Alarm_name = "HighDischargCurrent"; + break; + case 8: + Alarm_name = "LowDischargCurrent"; + break; + case 9: + Alarm_name = "HighIndividualVoltage"; + break; + case 10: + Alarm_name = "LowIndividualVoltage"; + break; + case 11: + Alarm_name = "HighMonomerTemperature"; + break; + case 12: + Alarm_name = "LowMonomerTemperature"; + break; + case 13: + Alarm_name = "HighIndividualResistance"; + break; + case 14: + Alarm_name = "LowIndividualResistance"; + break; + case 15: + Alarm_name = "HighConnectionBarImpedance"; + break; + case 16: + Alarm_name = "LowConnectionBarImpedance"; + break; + case 17: + Alarm_name = "HighDischargeUnitVoltage"; + break; + case 18: + Alarm_name = "LowDischargeUnitVoltage"; + break; + case 19: + Alarm_name = "LowCapacityAlarmCapacity"; + break; + case 20: + Alarm_name = "HighCapacityAlarmCapacity"; + break; + case 21: + Alarm_name = "LowCapacityReplaceCapacity"; + break; + case 22: + Alarm_name = "HighCapacityReplaceCapacity"; + break; + case 23: + Alarm_name = "BatteryPositiveElectrodeLeakage"; + break; + case 24: + Alarm_name = "BatteryNegativeElectrodeLeakage"; + 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 getAlarmType(int type) { + String Alarm_Type = "NONE"; + switch (type) { + case 1: + Alarm_Type = "level1Alarm"; + break; + case 2: + Alarm_Type = "level2Alarm"; + break; + case 3: + Alarm_Type = "level3Alarm"; + break; + case 4: + Alarm_Type = "level4Alarm"; + break; + case 5: + Alarm_Type = "level5Alarm"; + break; + case 6: + Alarm_Type = "level6Alarm"; + break; + case 7: + Alarm_Type = "level7Alarm"; + break; + case 8: + Alarm_Type = "level8Alarm"; + break; + case 9: + Alarm_Type = "level9Alarm"; + break; + case 10: + Alarm_Type = "level10Alarm"; + 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 = "浜屾瀬绠1鍛婅"; + break; + case 618505: + dev_name = "骞叉帴鐐瑰憡璀�"; + break; + case 618506: + dev_name = "寮傚父鏍稿鎴栧吇鎶ょ粓姝㈠憡璀�"; + break; + case 119023: + dev_name = "缁埅涓嶈冻鍛婅"; + break; + case 119024: + dev_name = "鍩虹珯鍋滅數鍛婅"; + break; + case 119025: + dev_name = "鍩虹珯鍙戠數鍛婅"; + break; + case 119026: + dev_name = "鍩虹珯鎺夌珯鍛婅"; + break; + case 119027: + dev_name = "鍩虹珯寮�闂ㄥ憡璀�"; + break; + case 119028: + dev_name = "璁惧楂樻俯鍛婅"; + break; + case 119032: + dev_name = "璁惧SD鍗℃晠闅�"; + break; + case 119033: + dev_name = "閲囬泦绾垮憡璀�"; + break; + case 119034: + dev_name = "鍋滅數鐢垫祦鍧囪 鍛婅"; + break; + + } + + return dev_name; + }*/ + + public static String getdevName(int type) { + String dev_name = "NONE"; + switch (type) //鍛婅鍚嶇О + { + case 119020: + dev_name = "CommunicationFailure"; + break; + case 618501: + dev_name = "RelayAlarm"; + break; + case 618502: + dev_name = "CommunicationAlarm"; + break; + case 618503: + dev_name = "EquipmentOverTemperatureAlarm"; + break; + case 618504: + dev_name = "DiodeD1Alarm"; + break; + case 618505: + dev_name = "DryContactAlarm"; + break; + case 618506: + dev_name = "AbnormalNuclearCapacityOrMaintenanceTerminationAlarm"; + break; + case 119023: + dev_name = "InsufficientBatteryLifeAlarm"; + break; + case 119024: + dev_name = "BaseStationPowerOutageAlarm"; + break; + case 119025: + dev_name = "BaseStationPowerGenerationAlarm"; + break; + case 119026: + dev_name = "BaseStationDropAlarm"; + break; + case 119027: + dev_name = "BaseStationDoorOpeningAlarm"; + break; + case 119028: + dev_name = "EquipmentHighTemperatureAlarm"; + break; + case 119032: + dev_name = "DeviceSDCardFailure"; + break; + case 119033: + dev_name = "AcquisitionLineAlarm"; + break; + case 119034: + dev_name = "PowerOutageCurrentBalanceAlarm"; + break; + + } + + return dev_name; + } + + /** + * 璁惧alm_type鍜岀數姹燼lm_signal_id,鐢垫簮鍛婅鐨刟larmType鑾峰彇瀵瑰簲鐨勫憡璀︾被鍨� + * + * @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 = "浜屾瀬绠1鍛婅"; + break; + case 618505: + Alarm_name = "骞叉帴鐐瑰憡璀�"; + break; + case 618506: + Alarm_name = "寮傚父鏍稿鎴栧吇鎶ょ粓姝㈠憡璀�"; + break; + case 119023: + Alarm_name = "缁埅涓嶈冻鍛婅"; + break; + case 119024: + Alarm_name = "鍩虹珯鍋滅數鍛婅"; + break; + case 119025: + Alarm_name = "鍩虹珯鍙戠數鍛婅"; + break; + case 119026: + Alarm_name = "鍩虹珯鎺夌珯鍛婅"; + break; + case 119027: + Alarm_name = "鍩虹珯寮�闂ㄥ憡璀�"; + break; + case 119028: + Alarm_name = "璁惧楂樻俯鍛婅"; + break; + case 119032: + Alarm_name = "璁惧SD鍗℃晠闅�"; + break; + case 119033: + Alarm_name = "閲囬泦绾垮憡璀�"; + break; + case 119034: + Alarm_name = "鍋滅數鐢垫祦鍧囪 鍛婅"; + break; + //鐢垫簮鍛婅 + case acIn1_over_volA: + Alarm_name = "1璺氦娴丄鐩歌繃鍘�"; + break; + case acIn1_under_volA: + Alarm_name = "1璺氦娴丄鐩告瑺鍘�"; + break; + case acIn1_less_A: + Alarm_name = "1璺氦娴丄鐩哥己鐩�"; + break; + case acIn1_over_volB: + Alarm_name = "1璺氦娴丅鐩歌繃鍘�"; + break; + case acIn1_under_volB: + Alarm_name = "1璺氦娴丅鐩告瑺鍘�"; + break; + case acIn1_less_B: + Alarm_name = "1璺氦娴丅鐩哥己鐩�"; + break; + case acIn1_over_volC: + Alarm_name = "1璺氦娴丆鐩歌繃鍘�"; + break; + case acIn1_under_volC: + Alarm_name = "1璺氦娴丆鐩告瑺鍘�"; + break; + case acIn1_less_C: + Alarm_name = "1璺氦娴丆鐩哥己鐩�"; + 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; + case acIn2_over_volA: + Alarm_name = "2璺氦娴丄鐩歌繃鍘�"; + break; + case acIn2_under_volA: + Alarm_name = "2璺氦娴丄鐩告瑺鍘�"; + break; + case acIn2_less_A: + Alarm_name = "2璺氦娴丄鐩哥己鐩�"; + break; + case acIn2_over_volB: + Alarm_name = "2璺氦娴丅鐩歌繃鍘�"; + break; + case acIn2_under_volB: + Alarm_name = "2璺氦娴丅鐩告瑺鍘�"; + break; + case acIn2_less_B: + Alarm_name = "2璺氦娴丅鐩哥己鐩�"; + break; + case acIn2_over_volC: + Alarm_name = "2璺氦娴丆鐩歌繃鍘�"; + break; + case acIn2_under_volC: + Alarm_name = "2璺氦娴丆鐩告瑺鍘�"; + break; + case acIn2_less_C: + Alarm_name = "2璺氦娴丆鐩哥己鐩�"; + break; + case power_alm: + Alarm_name = "鐢垫簮鍛婅"; + break; + case powerdown_commErr: + Alarm_name = "浜ゆ祦鍋滅數閫氫俊鏁呴殰"; + break; + + default: + Alarm_name = "鏈煡鍛婅"; + break; + } + + return Alarm_name; + } + + + /* + * ups鍛婅瀵瑰簲鍏崇郴*/ + public static String getUpsAlarmName(int type) { + String Alarm_name = "鏈煡"; + switch (type) //鍛婅鍚嶇О + { + //鐢垫睜鍛婅 + case 116001: + Alarm_name = "閫嗗彉鍣ㄤ笉鍚屾"; + break; + case 116002: + Alarm_name = "涓昏矾鐢靛帇寮傚父"; + break; + case 116003: + Alarm_name = "鏁存祦鍣ㄥ紓甯�"; + break; + case 116004: + Alarm_name = "閫嗗彉鍣ㄥ紓甯�"; + break; + case 116005: + Alarm_name = "鏃佽矾寮傚父"; + break; + case 116006: + Alarm_name = "鐢垫睜鐢靛帇浣庝簬涓嬮檺"; + break; + case 116007: + Alarm_name = "鐢垫睜鐢靛帇杩囬珮"; + break; + case 116008: + Alarm_name = "鐢垫睜鏈帴鍏�"; + break; + case 116009: + Alarm_name = "鐢垫睜鐢靛帇浣庨鍛婅"; + break; + case 116010: + Alarm_name = "鐢垫睜鎺ュ弽"; + break; + case 116011: + Alarm_name = "ParaMonCAN閫氳寮傚父"; + break; + case 116012: + Alarm_name = "PowerCAN閫氳寮傚父"; + break; + case 116013: + Alarm_name = "鏁存祦DSP绋嬪簭閿欒"; + break; + case 116014: + Alarm_name = "鏁存祦FPGA绋嬪簭閿欒"; + break; + case 116015: + Alarm_name = "閫嗗彉DSP绋嬪簭閿欒"; + break; + case 116016: + Alarm_name = "閫嗗彉FPGA绋嬪簭閿欒"; + break; + case 116017: + Alarm_name = "鏃佽矾DSP绋嬪簭閿欒"; + break; + case 116018: + Alarm_name = "鏃佽矾FPGA绋嬪簭閿欒"; + break; + case 116019: + Alarm_name = "鏈烘灦鍐呯鏁f�荤嚎閫氳寮傚父"; + break; + case 116020: + Alarm_name = "鏈烘灦闂寸鏁f�荤嚎閫氳寮傚父"; + break; + case 116021: + Alarm_name = "涓绘帶妯″潡璁剧疆涓嶅尮閰�"; + break; + case 116022: + Alarm_name = "LBS寮傚父"; + break; + case 116023: + Alarm_name = "绱ф�ュ叧鏈�"; + break; + case 116024: + Alarm_name = "鏃佽矾鏅堕椄绠℃晠闅� "; + break; + case 116025: + Alarm_name = "鏃佽矾鐩稿簭鍙�"; + break; + case 116026: + Alarm_name = "鏃佽矾杩囨祦"; + break; + case 116027: + Alarm_name = "鏃佽矾寮傚父鍏虫満"; + break; + case 116028: + Alarm_name = "鍒囨崲娆℃暟闄愬埗"; + break; + case 116029: + Alarm_name = "ECO鍒囨崲娆℃暟闄愬埗"; + break; + case 116030: + Alarm_name = "ParaPowerCan閫氳寮傚父"; + break; + case 116031: + Alarm_name = "鐢垫睜鏀剧數闄愭祦"; + break; + case 116032: + Alarm_name = "鏀剧數鍣ㄦ晠闅�"; + break; + case 116033: + Alarm_name = "鍏呯數鍣ㄦ晠闅�"; + break; + case 116034: + Alarm_name = "LBS杩炴帴绾垮紓甯�"; + break; + case 116035: + Alarm_name = "鐢垫睜闇�缁存姢"; + break; + case 116036: + Alarm_name = "鐢垫睜杩囨俯"; + break; + case 116037: + Alarm_name = "鐢垫睜鎺ュ湴鏁呴殰"; + break; + case 116038: + Alarm_name = "涓昏矾棰戠巼寮傚父"; + break; + case 116039: + Alarm_name = "妯″潡杩囨俯"; + break; + case 116040: + Alarm_name = "浠庢帶妯″潡璁剧疆涓嶅尮閰�"; + break; + case 116041: + Alarm_name = "鎺ュ彛妯″潡璁剧疆涓嶅尮閰�"; + break; + case 116042: + Alarm_name = "鍧囧厖瓒呮椂"; + break; + case 116043: + Alarm_name = "杈呭姪鐢垫簮鎺夌數"; + break; + case 116044: + Alarm_name = "涓昏矾鐩稿簭鍙� "; + break; + case 116045: + Alarm_name = "鏁存祦鍣ㄨ蒋鍚姩澶辫触 "; + break; + case 116046: + Alarm_name = "鐢ㄦ埛鎿嶄綔閿欒"; + break; + case 116047: + Alarm_name = "杈撳嚭鐔斾笣鏂�"; + break; + case 116048: + Alarm_name = "杈撳嚭杩囪浇"; + break; + case 116049: + Alarm_name = "绯荤粺杩囪浇"; + break; + case 116050: + Alarm_name = "杈撳嚭杩囪浇瓒呮椂"; + break; + case 116051: + Alarm_name = "璐熻浇鍐插嚮杞梺璺�"; + break; + case 116052: + Alarm_name = "骞舵満鍧囨祦寮傚父"; + break; + case 116053: + Alarm_name = "姣嶇嚎寮傚父鍏虫満"; + break; + case 116054: + Alarm_name = "涓存満璇锋眰杞梺璺� "; + break; + case 116055: + Alarm_name = "鐩存祦姣嶇嚎杩囧帇 "; + break; + case 116056: + Alarm_name = "MonCAN閫氳寮傚父 "; + break; + case 116057: + Alarm_name = "杈撳叆缂洪浂鏁呴殰"; + break; + case 116058: + Alarm_name = "閫嗗彉缁х數鍣ㄦ晠闅�"; + break; + case 116059: + Alarm_name = "涓昏矾鍙嶇亴"; + break; + case 116060: + Alarm_name = "杈撳叆鐢垫祦寮傚父"; + break; + case 116061: + Alarm_name = "杈撳嚭鐢靛帇寮傚父"; + break; + case 116062: + Alarm_name = "杈撳叆鐢垫祦瓒呴檺"; + break; + case 116063: + Alarm_name = "鏃佽矾杩囨俯"; + break; + case 116064: + Alarm_name = "閭绘満鏃佽矾鏅堕椄绠℃晠闅� "; + break; + case 116065: + Alarm_name = "骞舵満杩炴帴绾垮紓甯� "; + break; + case 116066: + Alarm_name = "鍏呯數鍣ㄨ繃娓�"; + break; + case 116067: + Alarm_name = "鐢垫睜绔彛鐭矾"; + break; + case 116068: + Alarm_name = "鐢垫睜鎴跨幆澧冨紓甯�"; + break; + case 116069: + Alarm_name = "椋庢墖寮傚父"; + break; + case 116070: + Alarm_name = "鏃佽矾缂洪浂鏁呴殰"; + break; + case 116071: + Alarm_name = "鏃佽矾鎺ョ"; + break; + case 116072: + Alarm_name = "BCB1 鐘舵�佸紓甯�"; + break; + case 116073: + Alarm_name = "BCB2 鐘舵�佸紓甯�"; + break; + case 116074: + Alarm_name = "BCB3 鐘舵�佸紓甯� "; + break; + case 116075: + Alarm_name = "BCB4 鐘舵�佸紓甯� "; + break; + case 116076: + Alarm_name = "鏃佽矾SCR椋庢墖寮傚父 "; + break; + case 116077: + Alarm_name = "骞宠 鐢佃矾鏁呴殰"; + break; + case 116078: + Alarm_name = "骞宠 鐢佃矾杩囨祦"; + break; + case 116079: + Alarm_name = "骞宠 鐢佃矾杩囨俯"; + break; + case 116080: + Alarm_name = "澶卞幓鍐椾綑"; + break; + case 116081: + Alarm_name = "瀹归噺杩囪浇"; + break; + case 116082: + Alarm_name = "鍔熺巼鏉胯缃笉鍖归厤"; + break; + case 116083: + Alarm_name = "鏃佽矾璁剧疆涓嶅尮閰�"; + break; + case 116084: + Alarm_name = "涓婃娊椋庨鎵囧紓甯� "; + break; + case 116085: + Alarm_name = "绯荤粺A鐩歌緭鍑虹啍涓濇柇 "; + break; + case 116086: + Alarm_name = "绯荤粺B鐩歌緭鍑虹啍涓濇柇"; + break; + case 116087: + Alarm_name = "绯荤粺C鐩歌緭鍑虹啍涓濇柇"; + break; + case 116088: + Alarm_name = "鏃佽矾鏃犳晥"; + break; + case 116089: + Alarm_name = "鏁存祦鍣ㄨ繃娴�"; + break; + case 116090: + Alarm_name = "鏃佽矾杩囨祦瓒呮椂"; + break; + case 116091: + Alarm_name = "杈撳嚭闆跺湴杩囧帇"; + break; + case 116092: + Alarm_name = "杈撳叆鐔斾笣鏂�"; + break; + case 116093: + Alarm_name = "鏃佽矾鐔斾笣鏂�"; + break; + case 116120: + Alarm_name = "鍗忚浆涓嶶PS閫氫俊鏁呴殰 "; + break; + case 116121: + Alarm_name = "骞冲彴涓庡崗杞�氫俊鏁呴殰 "; + break; + default: + Alarm_name = "鏈煡鍛婅"; + break; + } + + return Alarm_name; + } +} diff --git a/src/main/java/com/whyc/dto/BattCapFactory.java b/src/main/java/com/whyc/dto/BattCapFactory.java new file mode 100644 index 0000000..3907ab3 --- /dev/null +++ b/src/main/java/com/whyc/dto/BattCapFactory.java @@ -0,0 +1,162 @@ +package com.whyc.dto; + +public class BattCapFactory { + public static int CapType_Rest = 0; //褰撴煡璇㈠墿浣欏閲忔椂浼犻�� + public static int CapType_Real = 1; //褰撴煡璇㈠疄闄呭閲忔椂浼犻�� + + public static int CapType_type=2; //瀹归噺 + public static int CapType_name=1; //娆′綆 + public static int CapType_method=0; //鏍囩О + // 鑾峰彇鏍囩函鐢垫祦 + public static double GetFDCurrent(double stdcap, int hourrate) + { + double res = 0.055; + switch(hourrate) + { + case 1: res = 0.514; break; + case 2: res = 0.306; break; + case 3: res = 0.250; break; + case 4: res = 0.200; break; + case 5: res = 0.166; break; + case 6: res = 0.146; break; + case 7: res = 0.131; break; + case 8: res = 0.118; break; + case 9: res = 0.108; break; + case 10: res = 0.100; break; + case 20: res = 0.055; break; + default: res = 0.055; break; + } + + return (stdcap * res); + } + //------------------------------------------------------------------------------ + //------------------------------------------------------------------------------ + // 鑾峰彇鏀剧數灏忔椂鐜� stdah锛氭爣绾閲� current:褰撳墠鐢垫祦 + public static int GetHourRate(double stdah, double current) + { + int index = 0; + double value[]={5.14, 3.06, 2.50, 2.00, 1.66, 1.46, 1.31, 1.18, 1.08, 1.00, 0.55, 0.40}; + double res; + current = Math.abs(current); + res = current/(stdah/10); + if(res >= 5.14) return 1; + else if(res <= 0.55) return 20; + else + { + for(index=0; index<10; index++) + { + if((res<=value[index]) && (res>value[index+1])) + break; + else continue; + } + if((value[index]-res) < (res-value[index+1])) + { + return (index+1); + } + else + { + if(index+2 > 10) return (20); + else return (index+2); + } + } + } + //------------------------------------------------------------------------------ + //------------------------------------------------------------------------------ + public static double N_TO_10H(int n_H) + { + switch(n_H) + { + case 1 : return(1/0.55); + case 2 : return(1/0.61); + case 3 : return(1/0.75); + case 4 : return(1/0.79); + case 5 : return(1/0.833); + case 6 : return(1/0.876); + case 7 : return(1/0.917); + case 8 : return(1/0.944); + case 9 : return(1/0.974); + case 10: return(1/1); + case 20: return(1/1.1); + } + return 1.0; + } + //------------------------------------------------------------------------------- + //------------------------------------------------------------------------------- + //鑾峰彇鍓╀綑瀹归噺 STDAH锛氭爣绉板閲� HourRate锛氭斁鐢靛皬鏃剁巼 SumAH锛氭祴璇曞閲� MaxMonomerVol锛氭渶澶х數姹犵數鍘� MonomerVol锛氬綋鍓嶇數姹犵粍鐨勬渶浣庡崟浣撶數鍘� + //MonomerVolType:鐢垫睜鐢靛帇绫诲瀷 鐢垫睜鏍囩О鐢靛帇 2v,6v,12v CapType:瀹归噺绫诲瀷锛堝畾鍊兼槸甯搁噺锛� + + //灏忔椂鐜� 宸叉祴璇曞閲� 鏈�瀹归噺 + public static double GetMonomerCap(double STDAH, int HourRate, double SumAH, double MaxMonomerVol, + + double MonomerVol, double MonomerVolType, int CapType) + { + if((MaxMonomerVol - MonomerVolType*0.9) <= 0) + return 0; + + if(SumAH < 0) + SumAH *= (-1); + + double tmp_cap; + tmp_cap = MonomerVol - MonomerVolType * 0.9; + tmp_cap *= (STDAH - SumAH * N_TO_10H(HourRate)); + double dt_vol = MaxMonomerVol - MonomerVolType*0.9; + if(dt_vol < 0.01) + dt_vol = 0.01; + tmp_cap = tmp_cap/dt_vol; + if(tmp_cap < 0) + tmp_cap = 0; + + if(CapType == CapType_Rest) + return tmp_cap; + else if(CapType == CapType_Real) + return (tmp_cap + SumAH * N_TO_10H(HourRate)); + else + return ((tmp_cap + SumAH * N_TO_10H(HourRate))*100 / STDAH); + } + //---------------------------------------------------------------------------------- + //---------------------------------------------------------------------------------- + //鑾峰彇鍚庡鏃堕棿 + public static int GetRestTimeSecond(double restcap, double curr) + { + double tmp_curr = Math.abs(curr); + if(tmp_curr < 0.1) + tmp_curr = 0.1; + + int rest_time = (int)((restcap / tmp_curr) * 3600); + if(rest_time > (99*3600)) + rest_time = (99*3600); + + return rest_time; + } + //鍒ゆ柇閫氳繃瀹為檯瀹归噺鍒ゆ柇鏌愭鏀剧數娴嬭瘯鏄惁鏈夋晥 + /* + * STDAH:鏍囧瓨瀹归噺 + * param:瀹归噺鏈夋晥鍙傛暟*/ + public static int Judge(double realCap,float param,double STDAH){ + int flag=0; + if(Math.abs(realCap)>(param*STDAH)){ + flag=1; + }else{ + flag=0; + } + return flag; + } + //鍒ゆ柇閫氳繃瀹為檯瀹归噺鍒ゆ柇鏌愭鏀剧數娴嬭瘯鏄惁鏈夋晥 + /* + * STDAH:鏍囧瓨瀹归噺 + * param:瀹归噺鍛婅鍙傛暟*/ + public static int JudgeAlarm(double realCap,float param,float Cparam,double STDAH){ + int flag=0; + if(realCap>(param*STDAH)){ + flag=1; + }else{ + if(realCap<(Cparam*STDAH)){ + flag=AlarmDaoFactory.Alarm_CapChange; + }else{ + flag=AlarmDaoFactory.Alarm_CapAlarm; + } + + } + return flag; + } +} diff --git a/src/main/java/com/whyc/dto/ReportBattDTO.java b/src/main/java/com/whyc/dto/ReportBattDTO.java new file mode 100644 index 0000000..a136844 --- /dev/null +++ b/src/main/java/com/whyc/dto/ReportBattDTO.java @@ -0,0 +1,54 @@ +package com.whyc.dto; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import org.springframework.format.annotation.DateTimeFormat; + +import java.util.Date; + +@Data +@JsonIgnoreProperties(ignoreUnknown = true) +public class ReportBattDTO { + /**绔欑偣淇℃伅*/ + private String stationName; + private String stationName1;//鐪� + private Integer battGroupId; + /** + * 鐢垫睜娴嬭瘯绫诲瀷 + */ + @ApiModelProperty("0:鏃狅紱1:娴厖锛�2:鍏呯數锛�3:鏀剧數锛�4:鍧囧厖;5:鐢靛/鍐呴樆;6:鐢靛;7:娓╁害;8:杩炴帴鏉�;9:鍦ㄧ嚎鐩戞祴") + private Integer testType; + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Date recordStartTime; + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Date recordEndTime; + /** + * 鏀剧數绫诲瀷 + */ + @ApiModelProperty("娴嬭瘯浠〃绫诲瀷锛氬仠鐢垫斁鐢碉紱鍋囪礋杞芥斁鐢�2锛涜妭鑳芥斁鐢�3") + private Integer testStartType; + + private Integer monNum; + + /** + * 鎬ц兘绛涢�� + */ + @ApiModelProperty("鍏ㄩ儴锛�-1锛涙湭鏀剧數锛�0锛涗紭绉�锛�1锛涘姡鍖栵細2锛屾崯鍧忥細3") + private Integer assess; + + /** + * 鎬ц兘绛涢�� + */ + @ApiModelProperty("鍏ㄩ儴锛�-1锛涙湰骞达細0锛涘線骞达細1") + private Integer wj; + + /** + * 缁熻鏂瑰紡 + */ + @ApiModelProperty("瀹归噺+鍐呴樆锛�0锛涘閲忥細1") + private Integer statictype; +} diff --git a/src/main/java/com/whyc/mapper/AlarmParamMapper.java b/src/main/java/com/whyc/mapper/AlarmParamMapper.java new file mode 100644 index 0000000..35da4f7 --- /dev/null +++ b/src/main/java/com/whyc/mapper/AlarmParamMapper.java @@ -0,0 +1,6 @@ +package com.whyc.mapper; + +import com.whyc.pojo.AlarmParam; + +public interface AlarmParamMapper extends CustomMapper<AlarmParam>{ +} \ No newline at end of file diff --git a/src/main/java/com/whyc/mapper/BattAlarmMapper.java b/src/main/java/com/whyc/mapper/BattAlarmMapper.java index 12d81ad..87a444a 100644 --- a/src/main/java/com/whyc/mapper/BattAlarmMapper.java +++ b/src/main/java/com/whyc/mapper/BattAlarmMapper.java @@ -12,4 +12,6 @@ List<BattAlarm> getBattAlarm(int almLevel, Date startTime, Date endTime); //鍦ㄧ敤鐢垫睜缁勫疄鏃舵帹閫佸憡璀︿俊鎭� List<BattAlarm> getResBattAlm(int binfId); + //鏌ヨ鐢垫睜鍛婅(2024銆�4.15淇敼) + List<BattAlarm> getAlm2(Integer battGroupId); } \ No newline at end of file diff --git a/src/main/java/com/whyc/mapper/BattInfMapper.java b/src/main/java/com/whyc/mapper/BattInfMapper.java index cd40bed..bdb759d 100644 --- a/src/main/java/com/whyc/mapper/BattInfMapper.java +++ b/src/main/java/com/whyc/mapper/BattInfMapper.java @@ -2,5 +2,10 @@ import com.whyc.pojo.BattInf; +import java.util.List; + public interface BattInfMapper extends CustomMapper<BattInf>{ + + //鏌ヨ绗﹀悎鏉′欢鐨勭數姹犵粍 + List<BattInf> searchGroupAssess(); } diff --git a/src/main/java/com/whyc/mapper/BattTestInfMapper.java b/src/main/java/com/whyc/mapper/BattTestInfMapper.java index c4750f5..1773405 100644 --- a/src/main/java/com/whyc/mapper/BattTestInfMapper.java +++ b/src/main/java/com/whyc/mapper/BattTestInfMapper.java @@ -2,5 +2,14 @@ import com.whyc.pojo.BattTestInf; +import java.util.Date; +import java.util.List; + public interface BattTestInfMapper extends CustomMapper<BattTestInf>{ + + List<BattTestInf> searchDischargeTest(Integer battGroupId, Date recordStartTime, Date recordEndTime); + + + //鏌ュ線骞寸殑鏀剧數璁板綍 + List<BattTestInf> searchDischargeTest_WJ(Integer battGroupId, Date recordStartTime); } \ No newline at end of file diff --git a/src/main/java/com/whyc/pojo/AlarmParam.java b/src/main/java/com/whyc/pojo/AlarmParam.java new file mode 100644 index 0000000..924f85b --- /dev/null +++ b/src/main/java/com/whyc/pojo/AlarmParam.java @@ -0,0 +1,68 @@ +package com.whyc.pojo; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +import java.io.Serializable; + +/** + * <p> + * + * </p> + * + * @author lxw + * @since 2021-12-14 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@Accessors(chain = true) +@TableName(schema ="db_param",value = "alarm_param") +@ApiModel(value="AlarmParam瀵硅薄", description="") +public class AlarmParam implements Serializable { + + private static final long serialVersionUID = 1L; + + @TableField("num") + @ApiModelProperty("涓婚敭缂栧彿") + private Integer num; + + @TableField("alm_id") + @ApiModelProperty("鍛婅id") + private Integer almId; + + @TableField("alm_name") + @ApiModelProperty("鍛婅鍚嶇О") + private String almName; + + @TableField("alm_high_coe") + @ApiModelProperty("涓婇檺鍛婅闃堝��") + private Float almHighCoe; + + @TableField("alm_low_coe") + @ApiModelProperty("涓嬮檺鍛婅闃堝��") + private Float almLowCoe; + + @TableField("alm_high_en") + @ApiModelProperty("涓婇檺鍛婅浣胯兘") + private Integer almHighEn; + + @TableField("alm_low_en") + @ApiModelProperty("涓嬮檺鍛婅浣胯兘") + private Integer almLowEn; + + @TableField("alm_high_level") + @ApiModelProperty("涓婇檺鍛婅绛夌骇") + private Integer almHighLevel; + + @TableField("alm_low_level") + @ApiModelProperty("涓嬮檺鍛婅绛夌骇") + private Integer almLowLevel; + +} diff --git a/src/main/java/com/whyc/pojo/BattTestInf.java b/src/main/java/com/whyc/pojo/BattTestInf.java index 4cdd776..210dfa0 100644 --- a/src/main/java/com/whyc/pojo/BattTestInf.java +++ b/src/main/java/com/whyc/pojo/BattTestInf.java @@ -92,4 +92,7 @@ @TableField("min_monvol") @ApiModelProperty("鏈�灏忓崟浣撶數鍘�") private Float minMonvol; + + @TableField(exist = false) + private float realCap; } \ No newline at end of file diff --git a/src/main/java/com/whyc/service/BattTestInfService.java b/src/main/java/com/whyc/service/BattTestInfService.java index 05a4a89..290849e 100644 --- a/src/main/java/com/whyc/service/BattTestInfService.java +++ b/src/main/java/com/whyc/service/BattTestInfService.java @@ -4,18 +4,36 @@ import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageInfo; +import com.whyc.dto.BattCapFactory; +import com.whyc.dto.ReportBattDTO; import com.whyc.dto.Response; +import com.whyc.mapper.AlarmParamMapper; +import com.whyc.mapper.BattAlarmMapper; +import com.whyc.mapper.BattInfMapper; import com.whyc.mapper.BattTestInfMapper; +import com.whyc.pojo.AlarmParam; +import com.whyc.pojo.BattAlarm; +import com.whyc.pojo.BattInf; import com.whyc.pojo.BattTestInf; +import com.whyc.util.PageInfoUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; -import java.util.List; +import java.util.*; @Service public class BattTestInfService { @Autowired(required = false) private BattTestInfMapper mapper; + + @Autowired(required = false) + private BattInfMapper binfMapper; + + @Autowired(required = false) + private AlarmParamMapper alarmParamMapper; + + @Autowired(required = false) + private BattAlarmMapper alarmMapper; //鏌ヨ鍏呮斁鐢佃褰� public Response getTinfHis(int binfId, int pageNum, int pageSize) { @@ -26,4 +44,239 @@ PageInfo pageInfo=new PageInfo(list); return new Response().setII(1,list!=null,pageInfo,"鏌ヨ鍏呮斁鐢佃褰�"); } + + //1.4鐢垫睜鎬ц兘璇勪及 + public Response searchGroupAssess(int pageNum, int pageSize, ReportBattDTO tinf, int userId){ + //List<BattInf> battinfList = binfMapper.searchGroupAssess(tinf, userId); + List<BattInf> battinfList = binfMapper.searchGroupAssess(); + List<Map> result = new ArrayList<>(); + Integer assess = tinf.getAssess();//鎬ц兘绛涢�� + Integer wj = tinf.getWj();//寰�骞磋繕鏄湰骞� + Integer statictype= tinf.getStatictype();//缁熻鏂瑰紡 + if (assess == null) { + assess = -1; + } + if (wj == null) { + wj = -1; + } + if (battinfList != null && battinfList.size() > 0) { + for (BattInf binf : battinfList) { + Integer battGroupId = binf.getBinfId(); + Map<String, Object> map=new HashMap<>(); + Map<String, Object> batttestdataInfList = searchDischargeTest(battGroupId, binf.getMonCap(), binf.getMonVol(), tinf.getRecordStartTime(), tinf.getRecordEndTime(),wj); + if(statictype==0){ + //瀵规瘡涓數姹犵粍鐘舵�佽繘琛屽垽鏂紙瀹归噺+鍐呴樆锛� + map = getAssess2(binf, batttestdataInfList,assess); + }else{ + //瀵规瘡涓數姹犵粍鐘舵�佽繘琛屽垽鏂紙瀹归噺锛� + map = getAssess3(binf, batttestdataInfList,assess); + } + if (assess == -1) { + result.add(map); + } else { + if (map.get("flag") == assess) { + result.add(map); + } + } + } + } + PageInfo pageInfo = PageInfoUtils.list2PageInfo(result, pageNum, pageSize); + return new Response().set(1, pageInfo, "鏌ヨ鎴愬姛"); + } + + //1.4鐢垫睜缁勬�ц兘璇勪及(鏍规嵁鐢垫睜缁刬d鏌ヨ鎵�鏈夌殑鏀剧數璁板綍姹傚嚭鏀剧數鎬绘鏁帮紝鏈�楂樺巻鍙插閲�,鏈�浣庡巻鍙插閲忥紝骞冲潎瀹归噺锛屾渶鏂版祴璇曞閲�) + public Map<String, Object> searchDischargeTest(Integer battGroupId, float monCapStd, float monVolStd, Date recordStartTime, Date recordEndTime, int wj) { + List<BattTestInf> list = new ArrayList<>(); + Map<String, Object> map = new HashMap<>(); + if(wj==0){//鏈勾 + list=mapper.searchDischargeTest(battGroupId, recordStartTime, recordEndTime); + if( list.size()==0){ + map.put("wj", "N"); + }else{ + map.put("wj", "J"); + } + }else if(wj==1){//寰�骞� + list = mapper.searchDischargeTest_WJ(battGroupId, recordStartTime); + if( list.size()==0){ + map.put("wj", "N"); + }else{ + map.put("wj", "W"); + } + }else if(wj==-1){//鍏ㄩ儴 + list=mapper.searchDischargeTest(battGroupId, recordStartTime, recordEndTime); + if( list.size()==0){ + list = mapper.searchDischargeTest_WJ(battGroupId, recordStartTime); + if( list.size()==0){ + map.put("wj", "N"); + }else{ + map.put("wj", "W"); + } + }else{ + map.put("wj", "J"); + } + } + List<BattTestInf> testList = new LinkedList<>(); + int sum = 0;//鎬绘祴璇曟鏁� + float cap = 0f;//瀹為檯瀹归噺 + float allCap = 0f;//鎬诲閲� + float maxCap = 0f;//鏈�楂樺閲� + float minCap = 10000f;//鏈�浣庡閲� + float avgCap = 0f;//骞冲潎瀹归噺 + float lastCap = 0f;//鏈�杩戞祴璇曞閲� + for (int i = 0; i < list.size(); i++) { + BattTestInf binf = list.get(i); + int hourRate = BattCapFactory.GetHourRate(monCapStd, binf.getTestCurr()); + cap = (float) BattCapFactory.GetMonomerCap(monCapStd, hourRate, binf.getTestCap(), binf.getMaxMonvol(), binf.getMinMonvol(), monVolStd, BattCapFactory.CapType_Real); + binf.setRealCap(cap); + testList.add(binf); + if (sum == 0) { + lastCap = cap; + } + if (maxCap <= cap) { + maxCap = cap;//鏈�澶� + } + if (minCap >= cap) { + minCap = cap;//鏈�灏� + } + allCap += cap; + sum++; + } + if (sum != 0) { + avgCap = allCap / sum;//骞冲潎瀹归噺 + } else { + avgCap = 0; + minCap = 0; + } + map.put("battGroupid", battGroupId); + map.put("sum", sum); + map.put("maxCap", maxCap); + map.put("avgCap", avgCap); + map.put("minCap", minCap); + map.put("lastCap", lastCap); + map.put("testList", testList); + return map; + } + + //绛涢�夎搫鐢垫睜缁勫悗璇勬�ц兘(2024銆�4.15淇敼) + public Map<String, Object> getAssess2(BattInf binf, Map<String, Object> mapList,int assess) { + Map<String, Object> map = new HashMap(); + map.put("battinf", binf); + map.put("battTestDataInf", mapList); + map.put("wj",mapList.get("wj")); + //鐩存帴鍘婚泦鍚堢2涓暟锛堟斁鐢垫鏁帮級锛岀6涓暟锛堝疄闄呴浼板閲忥細鏈�杩戜竴娆℃牳瀹圭殑瀹為檯瀹归噺锛� + int battGroupId = (int) mapList.get("battGroupid"); + int disNum = (int) mapList.get("sum"); + float realCap = (Float) mapList.get("lastCap"); + float monCapStd = binf.getMonCap(); + //0.鏌ヨ鍔e寲(鍛婅)鍜屾崯鍧�(鏇存崲)鐨勯槇鍊� + QueryWrapper<AlarmParam> alarmWrapper = new QueryWrapper(); + alarmWrapper.and(wrapper -> { + return wrapper.eq("alm_name", "Batt_Alarm_Type_CapAlarm").or().eq("alm_name", "Batt_Alarm_Type_CapChange"); + }); + alarmWrapper.orderByAsc("alm_id"); + List<AlarmParam> paramList = alarmParamMapper.selectList(alarmWrapper); + float capAlarm = 0f; + float capChange = 0f; + if (paramList != null && paramList.size() > 0) { + capAlarm = paramList.get(0).getAlmLowCoe();//鍔e寲鍙傛暟0.8 + capChange = paramList.get(1).getAlmLowCoe();//鎹熷潖鍙傛暟0.6 + } else { + capAlarm = 0.8f; + capChange = 0.6f; + } + //鏌ヨ鐢垫睜鍛婅锛堝唴闃诲憡璀︼級 + List listALmRes = getAlm2(battGroupId); + map.put("noDisAlmSH",listALmRes); + //鏈斁鐢碉細鏈勾搴︽湭鏀剧數 + if( (disNum==0) ){ + map.put("flag",0); + } + //浼樼锛氭湰骞村害宸叉斁鐢碉紝涓斿閲忓仴搴凤紝鏃犲唴闃诲憡璀︼紙棰勫憡璀︼紙閲嶈锛夛紝鍛婅锛堢揣鎬ワ級锛� + if( (disNum>0)&&(realCap > capAlarm * monCapStd)&&(listALmRes.size()<=0)){ + map.put("flag",1); + } + + /*鍔e寲锛氭湰骞村害鏈斁鐢碉紝鍐呴樆鍛婅锛堥鍛婅锛堥噸瑕侊級锛屽憡璀︼紙绱ф�ワ級锛� + *瀹归噺灏忎簬鍔e寲闃堝�硷紝澶т簬鎹熷潖闃堝�硷紝鍐呴樆鍛婅(棰勫憡璀︼紝鍛婅) + * 瀹归噺灏忎簬鍔e寲闃堝�硷紝鍐呴樆姝e父 + * 瀹归噺姝e父锛屽唴闃诲憡璀�(棰勫憡璀︼紝鍛婅) + */ + if (((disNum==0)&&(listALmRes.size()>0)) + ||((disNum>0)&&(realCap <= capAlarm * monCapStd && realCap >= capChange * monCapStd)&&(listALmRes.size()>0)) + ||((disNum>0)&&(realCap <= capAlarm * monCapStd)&&(listALmRes.size()<=0)) + ||(disNum>0)&&(realCap > capAlarm * monCapStd)&&(listALmRes.size()>0)){ + if((assess==0)&&(disNum==0)){ + map.put("flag",0); + }else{ + map.put("flag",2); + } + } + //鎹熷潖锛氬閲忎綆锛屽唴闃诲憡璀� + if((disNum!=0)&&(realCap< capChange * monCapStd)&&(listALmRes.size()>0)){ + map.put("flag",3); + } + return map; + } + //鏌ヨ鐢垫睜鍛婅(2024銆�4.15淇敼) + /*鏈斁鐢碉細鏈勾搴︽湭鏀剧數 + *浼樼锛氭湰骞村害宸叉斁鐢碉紝涓斿閲忓仴搴凤紝鏃犲唴闃诲憡璀︼紙棰勫憡璀︼紙閲嶈锛夛紝鍛婅锛堢揣鎬ワ級锛� + *鍔e寲锛氭湰骞村害鏈斁鐢碉紝鍐呴樆鍛婅锛堥鍛婅锛堥噸瑕侊級锛屽憡璀︼紙绱ф�ワ級锛� + * 瀹归噺灏忎簬鍔e寲闃堝�硷紝澶т簬鎹熷潖闃堝�硷紝鍐呴樆鍛婅(棰勫憡璀︼紝鍛婅) + * 瀹归噺灏忎簬鍔e寲闃堝�硷紝鍐呴樆姝e父 + * 瀹归噺姝e父锛屽唴闃诲憡璀�(棰勫憡璀︼紝鍛婅) + * 鎹熷潖锛氬閲忎綆锛屽唴闃诲憡璀� + * */ + private List getAlm2(Integer battGroupId) { + List list = alarmMapper.getAlm2(battGroupId); + return list; + } + //绛涢�夎搫鐢垫睜缁勫悗璇勬�ц兘(2024銆�4.15淇敼) + public Map<String, Object> getAssess3(BattInf binf, Map<String, Object> mapList,int assess) { + Map<String, Object> map = new HashMap(); + map.put("battinf", binf); + map.put("battTestDataInf", mapList); + map.put("wj", mapList.get("wj")); + //鐩存帴鍘婚泦鍚堢2涓暟锛堟斁鐢垫鏁帮級锛岀6涓暟锛堝疄闄呴浼板閲忥細鏈�杩戜竴娆℃牳瀹圭殑瀹為檯瀹归噺锛� + int battGroupId = (int) mapList.get("battGroupid"); + int disNum = (int) mapList.get("sum"); + float realCap = (Float) mapList.get("lastCap"); + float monCapStd = binf.getMonCap(); + //0.鏌ヨ鍔e寲(鍛婅)鍜屾崯鍧�(鏇存崲)鐨勯槇鍊� + QueryWrapper<AlarmParam> alarmWrapper = new QueryWrapper(); + alarmWrapper.and(wrapper -> { + return wrapper.eq("alm_name", "Batt_Alarm_Type_CapAlarm").or().eq("alm_name", "Batt_Alarm_Type_CapChange"); + }); + alarmWrapper.orderByAsc("alm_id"); + List<AlarmParam> paramList = alarmParamMapper.selectList(alarmWrapper); + float capAlarm = 0f; + float capChange = 0f; + if (paramList != null && paramList.size() > 0) { + capAlarm = paramList.get(0).getAlmLowCoe();//鍔e寲鍙傛暟0.8 + capChange = paramList.get(1).getAlmLowCoe();//鎹熷潖鍙傛暟0.6 + } else { + capAlarm = 0.8f; + capChange = 0.6f; + } + //鏈斁鐢碉細鏈勾搴︽湭鏀剧數 + if ((disNum == 0)) { + map.put("flag", 0); + } + //浼樼锛氭湰骞村害宸叉斁鐢碉紝涓斿閲忓仴搴凤級 + if ((disNum > 0) && (realCap > capAlarm * monCapStd)) { + map.put("flag", 1); + } + /*鍔e寲锛� + *瀹归噺灏忎簬鍔e寲闃堝�硷紝澶т簬鎹熷潖闃堝�� + */ + if (((disNum > 0) && (realCap <= capAlarm * monCapStd && realCap >= capChange * monCapStd))) { + map.put("flag", 2); + } + //鎹熷潖锛氬閲忎綆 + if ((disNum > 0) && (realCap < capChange * monCapStd)) { + map.put("flag", 3); + } + return map; + } + + } \ No newline at end of file diff --git a/src/main/java/com/whyc/util/PageInfoUtils.java b/src/main/java/com/whyc/util/PageInfoUtils.java new file mode 100644 index 0000000..5129d76 --- /dev/null +++ b/src/main/java/com/whyc/util/PageInfoUtils.java @@ -0,0 +1,49 @@ +package com.whyc.util; + +import com.github.pagehelper.PageInfo; + +import java.util.LinkedList; +import java.util.List; + +public class PageInfoUtils { + + public static <T> PageInfo<T> list2PageInfo(List<T> arrayList, Integer pageNum, Integer pageSize) { + //瀹炵幇list鍒嗛〉 + //PageHelper.startPage(pageNum, pageSize); + int pageStart = pageNum == 1 ? 0 : (pageNum - 1) * pageSize; + int pageEnd = arrayList.size() < pageSize * pageNum ? arrayList.size() : pageSize * pageNum; + List<T> pageResult = new LinkedList<T>(); + if (arrayList.size() > pageStart) { + pageResult = arrayList.subList(pageStart, pageEnd); + } + PageInfo<T> pageInfo = new PageInfo<T>(pageResult); + //鑾峰彇PageInfo鍏朵粬鍙傛暟 + pageInfo.setTotal(arrayList.size()); + int endRow = pageInfo.getEndRow() == 0 ? 0 : (pageNum - 1) * pageSize + pageInfo.getEndRow() + 1; + pageInfo.setEndRow(endRow); + boolean hasNextPage = arrayList.size() <= pageSize * pageNum ? false : true; + pageInfo.setHasNextPage(hasNextPage); + boolean hasPreviousPage = pageNum == 1 ? false : true; + pageInfo.setHasPreviousPage(hasPreviousPage); + pageInfo.setIsFirstPage(!hasPreviousPage); + boolean isLastPage = (arrayList.size() > pageSize * (pageNum - 1) && arrayList.size() <= pageSize * pageNum) ? true : false; + pageInfo.setIsLastPage(isLastPage); + int pages = arrayList.size() % pageSize == 0 ? arrayList.size() / pageSize : (arrayList.size() / pageSize) + 1; + pageInfo.setNavigateLastPage(pages); + int[] navigatePageNums = new int[pages]; + for (int i = 1; i < pages; i++) { + navigatePageNums[i - 1] = i; + } + pageInfo.setNavigatepageNums(navigatePageNums); + int nextPage = pageNum < pages ? pageNum + 1 : 0; + pageInfo.setNextPage(nextPage); + pageInfo.setPageNum(pageNum); + pageInfo.setPageSize(pageSize); + pageInfo.setPages(pages); + pageInfo.setPrePage(pageNum - 1); + pageInfo.setSize(pageInfo.getList().size()); + int starRow = arrayList.size() < pageSize * pageNum ? 1 + pageSize * (pageNum - 1) : 0; + pageInfo.setStartRow(starRow); + return pageInfo; + } +} \ No newline at end of file diff --git a/src/main/resources/mapper/BattAlarmMapper.xml b/src/main/resources/mapper/BattAlarmMapper.xml index d13d281..404d5fd 100644 --- a/src/main/resources/mapper/BattAlarmMapper.xml +++ b/src/main/resources/mapper/BattAlarmMapper.xml @@ -22,4 +22,13 @@ order by batt_alarm.alm_start_time asc </where> </select> + <select id="getAlm2" resultType="com.whyc.pojo.BattAlarm"> + SELECT distinct * + from db_alarm.tb_battalarm_data + <where> + BattGroupId=#{battGroupId} + and alm_signal_id in(13) + and alm_severity=1 + </where> + </select> </mapper> \ No newline at end of file diff --git a/src/main/resources/mapper/BattInfMapper.xml b/src/main/resources/mapper/BattInfMapper.xml new file mode 100644 index 0000000..4221ae5 --- /dev/null +++ b/src/main/resources/mapper/BattInfMapper.xml @@ -0,0 +1,8 @@ +<?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.BattInfMapper"> + + <select id="searchGroupAssess" resultType="com.whyc.pojo.BattInf"> + select * from db_batt.batt_inf order by binf_id asc + </select> +</mapper> \ No newline at end of file diff --git a/src/main/resources/mapper/BattTestInfMapper.xml b/src/main/resources/mapper/BattTestInfMapper.xml new file mode 100644 index 0000000..ab24377 --- /dev/null +++ b/src/main/resources/mapper/BattTestInfMapper.xml @@ -0,0 +1,41 @@ +<?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.BattTestInfMapper"> + + <select id="searchDischargeTest" resultType="com.whyc.pojo.BattTestInf"> + select + battgroupid,test_curr,max_monvol,min_monvol,test_cap,test_starttime,record_time,test_timelong,test_stoptype + from db_batt_testdata.tb_batttestdata_inf + <where> + db_batt_testdata.tb_batttestdata_inf.data_available=1 + and test_starttype=3 and test_type=3 + and (test_stoptype in (3, 4, 6) + or (test_stoptype=2 and test_timelong>=7200)) + <if test="battGroupId!=null"> + and battgroupid=#{battGroupId} + </if> + <if test="recordStartTime!=null and recordEndTime!=null"> + and record_time>=#{recordStartTime} and record_time<=#{recordEndTime} + </if> + </where> + ORDER BY tb_batttestdata_inf.BattGroupId asc, test_starttime desc + </select> + <select id="searchDischargeTest_WJ" resultType="com.whyc.pojo.BattTestInf"> + select + battgroupid,test_curr,max_monvol,min_monvol,test_cap,test_starttime,record_time,test_timelong,test_stoptype + from db_batt_testdata.tb_batttestdata_inf + <where> + db_batt_testdata.tb_batttestdata_inf.data_available=1 + and test_starttype=3 and test_type=3 + and (test_stoptype in (3, 4, 6) + or (test_stoptype=2 and test_timelong>=7200)) + <if test="battGroupId!=null"> + and battgroupid=#{battGroupId} + </if> + <if test="recordStartTime!=null"> + and record_time<#{recordStartTime} + </if> + </where> + ORDER BY tb_batttestdata_inf.BattGroupId asc, test_starttime desc + </select> +</mapper> \ No newline at end of file -- Gitblit v1.9.1