From bae185d2ff22c2537adc298cac905c9f5394d3c5 Mon Sep 17 00:00:00 2001 From: whyclxw <810412026@qq.com> Date: 星期六, 21 六月 2025 09:04:27 +0800 Subject: [PATCH] 预警分析添加设备实时告警 --- src/main/java/com/whyc/mapper/DevalarmDataMapper.java | 5 ++ src/main/java/com/whyc/service/BattalarmDataService.java | 2 + src/main/resources/mapper/BattalarmDataMapper.xml | 3 + src/main/java/com/whyc/pojo/db_alarm/DevalarmData.java | 3 + src/main/java/com/whyc/dto/Param/AlmAnalyseDto.java | 1 src/main/resources/mapper/BattInfMapper.xml | 10 ++++ src/main/java/com/whyc/controller/AnalysisAlmController.java | 22 +++++++++-- src/main/resources/mapper/PwrdevAlarmMapper.xml | 3 + src/main/java/com/whyc/service/BattInfService.java | 8 +++- src/main/java/com/whyc/service/DevalarmDataService.java | 19 +++++++++ src/main/java/com/whyc/mapper/BattInfMapper.java | 4 + src/main/resources/mapper/DevalarmDataMapper.xml | 33 ++++++++++++++++ src/main/java/com/whyc/service/PwrdevAlarmService.java | 2 13 files changed, 105 insertions(+), 10 deletions(-) diff --git a/src/main/java/com/whyc/controller/AnalysisAlmController.java b/src/main/java/com/whyc/controller/AnalysisAlmController.java index 3b06e08..4cb50cd 100644 --- a/src/main/java/com/whyc/controller/AnalysisAlmController.java +++ b/src/main/java/com/whyc/controller/AnalysisAlmController.java @@ -1,12 +1,13 @@ package com.whyc.controller; +import com.github.pagehelper.PageHelper; +import com.github.pagehelper.PageInfo; +import com.whyc.constant.BattSingalIdEnum; import com.whyc.dto.AnalysisAlm.AnalysisChangeRes; import com.whyc.dto.Param.AlmAnalyseDto; import com.whyc.dto.Response; -import com.whyc.service.AlmAnalysisParamService; -import com.whyc.service.BattRealdataIdService; -import com.whyc.service.BattalarmDataService; -import com.whyc.service.PwrdevAlarmService; +import com.whyc.pojo.db_alarm.BattalarmData; +import com.whyc.service.*; import com.whyc.util.ActionUtil; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; @@ -14,6 +15,7 @@ import org.springframework.web.bind.annotation.*; import java.text.ParseException; +import java.util.List; @RequestMapping("analysis") @RestController @@ -27,6 +29,10 @@ @Autowired private AlmAnalysisParamService almAnalysisParamService; + + @Autowired + private DevalarmDataService devalarmDataService; + @PostMapping("getBattAlmAnalyse") @ApiOperation("棰勮鍒嗘瀽绠$悊-鐢垫睜鍛婅") public Response getBattAlmAnalyse(@RequestBody AlmAnalyseDto dto){ @@ -35,6 +41,14 @@ return battalarmDataService.getBattAlmAnalyse(dto); } + @PostMapping("getDevAlmAnalyse") + @ApiOperation("棰勮鍒嗘瀽绠$悊-璁惧鍛婅") + public Response getDevAlmAnalyse(@RequestBody AlmAnalyseDto dto){ + Integer uid= ActionUtil.getUser().getId(); + dto.setUid(uid); + return devalarmDataService.getDevAlmAnalyse(dto); + } + @PostMapping("getPwrtAlmAnalyse") @ApiOperation("棰勮鍒嗘瀽绠$悊-鐢垫簮鍛婅") public Response getPwrtAlmAnalyse(@RequestBody AlmAnalyseDto dto){ diff --git a/src/main/java/com/whyc/dto/Param/AlmAnalyseDto.java b/src/main/java/com/whyc/dto/Param/AlmAnalyseDto.java index c1c3466..a9d84cf 100644 --- a/src/main/java/com/whyc/dto/Param/AlmAnalyseDto.java +++ b/src/main/java/com/whyc/dto/Param/AlmAnalyseDto.java @@ -11,6 +11,7 @@ private String country; private Integer stationId; private Integer powerId; + private Integer devId; private Integer battgroupId; private List<Integer> almIdList; private Integer uid; diff --git a/src/main/java/com/whyc/mapper/BattInfMapper.java b/src/main/java/com/whyc/mapper/BattInfMapper.java index d8060e6..a58423e 100644 --- a/src/main/java/com/whyc/mapper/BattInfMapper.java +++ b/src/main/java/com/whyc/mapper/BattInfMapper.java @@ -64,5 +64,7 @@ //鏍规嵁鏌ヨ鏉′欢鑾峰彇鐢垫睜缁勯泦鍚� BattInf getBattgroupIdInf(@Param("battgroupId") Integer battgroupId); //鏌ヨ鐢垫簮涓嬫墍鏈夌殑鐢垫睜缁刬d - List<Integer> getBattgroupIdList(@Param("powerId") Integer powerId); + List<Integer> getBattgroupIdListByPowerId(@Param("powerId") Integer powerId); + //鏌ヨ璁惧涓嬫墍鏈夌殑鐢垫睜缁刬d + List<Integer> getBattgroupIdListByDevId(@Param("devId") Integer devId); } \ No newline at end of file diff --git a/src/main/java/com/whyc/mapper/DevalarmDataMapper.java b/src/main/java/com/whyc/mapper/DevalarmDataMapper.java index 8c7b48c..6cf5c13 100644 --- a/src/main/java/com/whyc/mapper/DevalarmDataMapper.java +++ b/src/main/java/com/whyc/mapper/DevalarmDataMapper.java @@ -1,9 +1,11 @@ package com.whyc.mapper; import com.whyc.dto.AlarmDto; +import com.whyc.dto.Param.AlmAnalyseDto; import com.whyc.dto.Real.AlmDto; import com.whyc.pojo.db_alarm.DevalarmData; import com.whyc.pojo.web_site.AlarmInspection; +import org.apache.ibatis.annotations.Param; import java.util.List; @@ -14,5 +16,6 @@ List<AlarmInspection> getListGreatThan(Long devAlarmId); List<AlarmDto> getListByUserId(Integer userId, Integer almLevel); - + //棰勮鍒嗘瀽绠$悊-璁惧鍛婅 + List<DevalarmData> getDevAlmAnalyse(AlmAnalyseDto almDto); } \ No newline at end of file diff --git a/src/main/java/com/whyc/pojo/db_alarm/DevalarmData.java b/src/main/java/com/whyc/pojo/db_alarm/DevalarmData.java index 3506084..3056462 100644 --- a/src/main/java/com/whyc/pojo/db_alarm/DevalarmData.java +++ b/src/main/java/com/whyc/pojo/db_alarm/DevalarmData.java @@ -12,6 +12,7 @@ import java.io.Serializable; import java.util.Date; +import java.util.List; /** * <p> @@ -93,5 +94,7 @@ private String country; @TableField(exist = false) private String fullName; + @TableField(exist = false) + private List<Integer> battgroupIdList; } diff --git a/src/main/java/com/whyc/service/BattInfService.java b/src/main/java/com/whyc/service/BattInfService.java index 3aa72bf..dc13974 100644 --- a/src/main/java/com/whyc/service/BattInfService.java +++ b/src/main/java/com/whyc/service/BattInfService.java @@ -495,7 +495,11 @@ return mapper.getBattgroupIdInf(battgroupId); } //鏌ヨ鐢垫簮涓嬫墍鏈夌殑鐢垫睜缁刬d - public List<Integer> getBattgroupIdList(Integer powerId) { - return mapper.getBattgroupIdList(powerId); + public List<Integer> getBattgroupIdListByPowerId(Integer powerId) { + return mapper.getBattgroupIdListByPowerId(powerId); + } + //鏌ヨ璁惧涓嬫墍鏈夌殑鐢垫睜缁刬d + public List<Integer> getBattgroupIdListByDevId(Integer devId) { + return mapper.getBattgroupIdListByDevId(devId); } } \ No newline at end of file diff --git a/src/main/java/com/whyc/service/BattalarmDataService.java b/src/main/java/com/whyc/service/BattalarmDataService.java index eb5d9bb..8c59d9f 100644 --- a/src/main/java/com/whyc/service/BattalarmDataService.java +++ b/src/main/java/com/whyc/service/BattalarmDataService.java @@ -38,6 +38,7 @@ PageInfo pageInfo=new PageInfo(list); return new Response().setII(1,list!=null,pageInfo,"鑾峰彇鐢垫睜缁勫疄鏃跺憡璀︿俊鎭�"); } + //纭鐢垫睜鍛婅 public Response updateBattConfrim(Integer num) { UpdateWrapper wrapper = new UpdateWrapper<>(); @@ -98,4 +99,5 @@ PageInfo pageInfo=new PageInfo(list); return new Response().setII(1,list!=null,pageInfo,"鐢垫睜鍛婅鍒嗘瀽"); } + } \ No newline at end of file diff --git a/src/main/java/com/whyc/service/DevalarmDataService.java b/src/main/java/com/whyc/service/DevalarmDataService.java index 31bef6d..6b5f4ee 100644 --- a/src/main/java/com/whyc/service/DevalarmDataService.java +++ b/src/main/java/com/whyc/service/DevalarmDataService.java @@ -9,9 +9,11 @@ import com.whyc.constant.BattSingalIdEnum; import com.whyc.constant.DevAlarmEnum; import com.whyc.dto.AlarmDto; +import com.whyc.dto.Param.AlmAnalyseDto; import com.whyc.dto.Real.AlmDto; import com.whyc.dto.Response; import com.whyc.mapper.DevalarmDataMapper; +import com.whyc.pojo.db_alarm.BattalarmData; import com.whyc.pojo.db_alarm.DevalarmData; import com.whyc.pojo.web_site.AlarmInspection; import com.whyc.util.ActionUtil; @@ -28,6 +30,9 @@ public class DevalarmDataService { @Autowired(required = false) private DevalarmDataMapper mapper; + + @Autowired + private BattInfService battInfService; //鑾峰彇璁惧瀹炴椂鍛婅淇℃伅 public Response getDevAlmReal(AlmDto almDto) { PageHelper.startPage(almDto.getPageNum(),almDto.getPageSize()); @@ -84,4 +89,18 @@ public List<AlarmDto> getListByUserId(Integer userId,Integer almLevel) { return mapper.getListByUserId(userId,almLevel); } + //棰勮鍒嗘瀽绠$悊-璁惧鍛婅 + public Response getDevAlmAnalyse(AlmAnalyseDto almDto) { + PageHelper.startPage(almDto.getPageNum(),almDto.getPageSize()); + List<DevalarmData> list=mapper.getDevAlmAnalyse(almDto); + list.forEach(data->{ + data.setAlmName(DevAlarmEnum.getValue(data.getAlmId())); + //鏌ヨ璁惧涓嬫墍鏈夌殑鐢垫睜缁刬d + List<Integer> battgroupIdList = battInfService.getBattgroupIdListByDevId(data.getDevId()); + data.setBattgroupIdList(battgroupIdList); + }); + PageInfo pageInfo=new PageInfo(list); + return new Response().setII(1,list!=null,pageInfo,"鑾峰彇璁惧瀹炴椂鍛婅淇℃伅"); + } + } \ No newline at end of file diff --git a/src/main/java/com/whyc/service/PwrdevAlarmService.java b/src/main/java/com/whyc/service/PwrdevAlarmService.java index d3c5674..51403a6 100644 --- a/src/main/java/com/whyc/service/PwrdevAlarmService.java +++ b/src/main/java/com/whyc/service/PwrdevAlarmService.java @@ -114,7 +114,7 @@ for (PwrdevAlarm pwrAlm:list) { pwrAlm.setAlmName(PowerAlarmEnum.getValue(pwrAlm.getAlmId())); //鏌ヨ鐢垫簮涓嬫墍鏈夌殑鐢垫睜缁刬d - List<Integer> battgroupIdList = battInfService.getBattgroupIdList(pwrAlm.getPowerId()); + List<Integer> battgroupIdList = battInfService.getBattgroupIdListByPowerId(pwrAlm.getPowerId()); pwrAlm.setBattgroupIdList(battgroupIdList); } PageInfo pageInfo=new PageInfo(list); diff --git a/src/main/resources/mapper/BattInfMapper.xml b/src/main/resources/mapper/BattInfMapper.xml index 3692e5f..f572667 100644 --- a/src/main/resources/mapper/BattInfMapper.xml +++ b/src/main/resources/mapper/BattInfMapper.xml @@ -476,7 +476,7 @@ </where> limit 1 </select> - <select id="getBattgroupIdList" resultType="java.lang.Integer"> + <select id="getBattgroupIdListByPowerId" resultType="java.lang.Integer"> select distinct tb_batt_inf.battgroup_id from db_station.tb_batt_inf <where> @@ -484,4 +484,12 @@ </where> order by battgroup_num asc </select> + <select id="getBattgroupIdListByDevId" resultType="java.lang.Integer"> + select distinct tb_batt_inf.battgroup_id + from db_station.tb_batt_inf + <where> + tb_batt_inf.dev_id=#{devId} + </where> + order by battgroup_num asc + </select> </mapper> \ No newline at end of file diff --git a/src/main/resources/mapper/BattalarmDataMapper.xml b/src/main/resources/mapper/BattalarmDataMapper.xml index 978e038..747af32 100644 --- a/src/main/resources/mapper/BattalarmDataMapper.xml +++ b/src/main/resources/mapper/BattalarmDataMapper.xml @@ -93,6 +93,9 @@ <if test="country!=null"> and tb_station_inf.country=#{country} </if> + <if test="almLevel!=null"> + and tb_battalarm_data.alm_level=#{almLevel} + </if> <if test="stationId!=null"> and tb_station_inf.station_id=#{stationId} </if> diff --git a/src/main/resources/mapper/DevalarmDataMapper.xml b/src/main/resources/mapper/DevalarmDataMapper.xml index 4315459..2af4e6c 100644 --- a/src/main/resources/mapper/DevalarmDataMapper.xml +++ b/src/main/resources/mapper/DevalarmDataMapper.xml @@ -63,4 +63,37 @@ and bu.uid = #{userId} ) </select> + <select id="getDevAlmAnalyse" resultType="com.whyc.pojo.db_alarm.DevalarmData"> + select tb_devalarm_data.*,tb_batt_inf.dev_name,tb_station_inf.station_name,tb_station_inf.provice,tb_station_inf.city,tb_station_inf.country,tb_station_inf.full_name + from db_alarm.tb_devalarm_data,db_station.tb_batt_inf,db_station.tb_station_inf + <where> + tb_devalarm_data.dev_id=tb_batt_inf.dev_id + and tb_batt_inf.station_id=tb_station_inf.station_id + <if test="provice!=null"> + and tb_station_inf.provice=#{provice} + </if> + <if test="city!=null"> + and tb_station_inf.city=#{city} + </if> + <if test="country!=null"> + and tb_station_inf.country=#{country} + </if> + <if test="stationId!=null"> + and tb_station_inf.station_id=#{stationId} + </if> + <if test="devId!=null"> + and tb_devalarm_data.dev_id=#{devId} + </if> + <if test="almLevel!=null"> + and tb_devalarm_data.alm_level=#{almLevel} + </if> + <if test="uid>100"> + and tb_batt_inf.station_id in( + select distinct station_id from db_user.tb_baojigroup_power,db_user.tb_baojigroup_usr + where tb_baojigroup_power.baoji_group_id=tb_baojigroup_usr.baoji_group_id + and tb_baojigroup_usr.uid=#{uid} + ) + </if> + </where> + </select> </mapper> \ No newline at end of file diff --git a/src/main/resources/mapper/PwrdevAlarmMapper.xml b/src/main/resources/mapper/PwrdevAlarmMapper.xml index c2cb664..e2a2350 100644 --- a/src/main/resources/mapper/PwrdevAlarmMapper.xml +++ b/src/main/resources/mapper/PwrdevAlarmMapper.xml @@ -84,6 +84,9 @@ <if test="powerId!=null"> and tb_pwrdev_alarm.power_id=#{powerId} </if> + <if test="almLevel!=null"> + and tb_pwrdev_alarm.alm_level=#{almLevel} + </if> <if test="uid>100"> and tb_pwrdev_alarm.power_id in( select distinct power_id from db_user.tb_baojigroup_power,db_user.tb_baojigroup_usr -- Gitblit v1.9.1