package com.whyc.controller; import com.whyc.constant.*; import com.whyc.dto.AlarmParam; import com.whyc.dto.Param.AlmAnalyseDto; import com.whyc.dto.Param.ParamAlmDto; import com.whyc.dto.Real.AlmDto; import com.whyc.dto.Response; import com.whyc.dto.Station.Power; import com.whyc.pojo.db_param.BattAlmparam; import com.whyc.pojo.db_param.DevAlmparam; import com.whyc.pojo.db_pwrdev_alarm.PwrdevAlarmParam; import com.whyc.service.*; 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.*; import java.text.ParseException; import java.util.ArrayList; import java.util.Date; import java.util.List; @RestController @Api(tags = "告警参数管理") @RequestMapping("almParam") public class AlmParamController { @Autowired private BattAlmparamService battAlmparamService; @Autowired private DevAlmparamService devAlmparamService; @Autowired private PwrdevAlarmParamService pwrAlmparamService; @Autowired private BattalarmDataService battalarmDataService; @Autowired private BattRealdataIdService battRealdataIdService; /*@PostMapping("getBattAlmParam") @ApiOperation("获取电池告警参数") public Response getBattAlmParam(@RequestBody AlmDto almDto){ almDto.setUid(ActionUtil.getUser().getId()); return battAlmparamService.getBattAlmParam(almDto); }*/ @PostMapping("getBattAlmParam") @ApiOperation("获取电池告警参数") public Response getBattAlmParam(@RequestBody ParamAlmDto dto){ return battAlmparamService.getBattAlmParam(dto); } @GetMapping("getBattAlmParamToExport") @ApiOperation("获取电池告警参数(无参用于导出)") public Response getBattAlmParamToExport(){ Integer uid=ActionUtil.getUser().getId(); return battAlmparamService.getBattAlmParamToExport(uid); } @PostMapping("setBattAlmParam") @ApiOperation("修改电池告警参数") public Response setBattAlmParam(@RequestBody List almparamList){ return battAlmparamService.setBattAlmParam(almparamList); } @GetMapping("getDevAlmParam") @ApiOperation("获取设备告警参数") public Response getDevAlmParam(@RequestParam(required = false) Integer almId,@RequestParam Integer pageNum,@RequestParam Integer pageSize){ return devAlmparamService.getDevAlmParam(almId,pageNum,pageSize); } @PostMapping("setDevAlmParam") @ApiOperation("修改设备告警参数") public Response setDevAlmParam(@RequestBody List almparamList){ return devAlmparamService.setDevAlmParam(almparamList); } /*@PostMapping("getPwrAlmParam") @ApiOperation("获取电源告警参数") public Response getPwrAlmParam(@RequestBody AlmDto almDto){ almDto.setUid(ActionUtil.getUser().getId()); return pwrAlmparamService.getPwrAlmParam(almDto); }*/ @PostMapping("getPwrAlmParam") @ApiOperation("获取电源告警参数") public Response getPwrAlmParam(@RequestBody ParamAlmDto dto){ return pwrAlmparamService.getPwrAlmParam(dto); } @GetMapping("getPwrAlmParamToExport") @ApiOperation("获取电源告警参数(无参用于导出)") public Response getPwrAlmParamToExport(){ Integer uid=ActionUtil.getUser().getId(); return pwrAlmparamService.getPwrAlmParamToExport(uid); } @PostMapping("setPwrAlmParam") @ApiOperation("修改电源告警参数") public Response setPwrAlmParam(@RequestBody List almparamList){ return pwrAlmparamService.setPwrAlmParam(almparamList); } @GetMapping("getAlarmList") @ApiOperation(value = "获取所有告警,1-电源,2-设备,3-电池",tags = "告警诊断") public Response> getAlarmList(@RequestParam Integer type){ List list = new ArrayList<>(); if(type==1){ //电源告警 //遍历枚举类型PowerAlarmEnum for(PowerAlarmEnum powerAlarmEnum:PowerAlarmEnum.values()){ list.add(new AlarmParam(powerAlarmEnum.getStateId(),powerAlarmEnum.getStateName())); } }else if (type==2){ //设备告警 for (DevAlarmEnum devAlarmEnum:DevAlarmEnum.values()){ list.add(new AlarmParam(devAlarmEnum.getStateId(),devAlarmEnum.getStateName())); } }else{ //电池告警 for (BattSingalIdEnum battSignalIdEnum:BattSingalIdEnum.values()){ list.add(new AlarmParam(battSignalIdEnum.getStateId(),battSignalIdEnum.getStateName())); } } return new Response>().set(1,list); } @PostMapping("getBattAlmAnalyse") @ApiOperation("预警分析管理-电池告警") public Response getBattAlmAnalyse(@RequestBody AlmAnalyseDto dto){ Integer uid=ActionUtil.getUser().getId(); dto.setUid(uid); return battalarmDataService.getBattAlmAnalyse(dto); } @GetMapping("getBattHisRealInAlm") @ApiOperation("预警分析管理-主属性和分析属性") public Response getBattHisRealInAlm(@RequestParam Integer battgroupId,@RequestParam String startTime,@RequestParam(required = false) Integer almId) throws ParseException, InterruptedException { return battRealdataIdService.getBattHisRealInAlm(battgroupId,startTime,almId); } }