From 3470b33466cfd9ce423a46220ff81f734fae9fb7 Mon Sep 17 00:00:00 2001 From: whyclxw <810412026@qq.com> Date: 星期五, 20 六月 2025 11:32:34 +0800 Subject: [PATCH] 预警分析管理-主属性和配置属性 --- src/main/java/com/whyc/service/PwrdevAlarmService.java | 101 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 100 insertions(+), 1 deletions(-) diff --git a/src/main/java/com/whyc/service/PwrdevAlarmService.java b/src/main/java/com/whyc/service/PwrdevAlarmService.java index 20b4ac3..d3c5674 100644 --- a/src/main/java/com/whyc/service/PwrdevAlarmService.java +++ b/src/main/java/com/whyc/service/PwrdevAlarmService.java @@ -1,25 +1,124 @@ 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.toolkit.Wrappers; import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageInfo; +import com.whyc.constant.DevAlarmEnum; +import com.whyc.constant.PowerAlarmEnum; +import com.whyc.dto.AlarmDto; +import com.whyc.dto.Param.AlmAnalyseDto; import com.whyc.dto.Real.AlmDto; +import com.whyc.dto.Real.RealDateDTO; import com.whyc.dto.Response; +import com.whyc.factory.ThreadPoolExecutorFactory; import com.whyc.mapper.PwrdevAlarmMapper; +import com.whyc.pojo.db_alarm.DevalarmData; +import com.whyc.pojo.db_data_history.BattRealdataId; +import com.whyc.pojo.db_data_history.PwrdevHistorydataId; +import com.whyc.pojo.db_param.AlmAnalysisParam; +import com.whyc.pojo.db_param.AppParam; import com.whyc.pojo.db_pwrdev_alarm.PwrdevAlarm; +import com.whyc.pojo.db_pwrdev_alarm.PwrdevAlarmParam; +import com.whyc.pojo.web_site.AlarmInspection; +import com.whyc.util.ActionUtil; +import com.whyc.util.DateUtil; +import com.whyc.util.ThreadLocalUtil; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; -import java.util.List; +import java.text.ParseException; +import java.text.SimpleDateFormat; +import java.util.*; +import java.util.concurrent.CountDownLatch; +import java.util.concurrent.ThreadPoolExecutor; +import java.util.concurrent.TimeUnit; +import java.util.stream.Collectors; + +import static java.lang.Thread.sleep; @Service public class PwrdevAlarmService { @Autowired(required = false) private PwrdevAlarmMapper mapper; + @Autowired + private AppParamService appParamService; + @Autowired + private AlmAnalysisParamService almAnalysisParamService; + @Autowired + private SubTablePageInfoService subTablePageInfoService; + @Autowired + private BattInfService battInfService; //鑾峰彇鐢垫簮瀹炴椂鍛婅淇℃伅 public Response getPwrAlmReal(AlmDto almDto) { PageHelper.startPage(almDto.getPageNum(),almDto.getPageSize()); List<PwrdevAlarm> list=mapper.getPwrAlmReal(almDto); + list.forEach(data->{ + data.setAlmName(PowerAlarmEnum.getValue(data.getAlmId())); + }); PageInfo pageInfo=new PageInfo(list); return new Response().setII(1,list!=null,pageInfo,"鑾峰彇鐢垫簮瀹炴椂鍛婅淇℃伅"); } + //纭鐢垫簮鍛婅 + public Response updatePwrConfrim(Integer num) { + UpdateWrapper wrapper = new UpdateWrapper<>(); + wrapper.set("alm_is_confirmed",1); + wrapper.set("alm_confirmed_time",new SimpleDateFormat(ActionUtil.time_yyyyMMddHHmmss).format(new Date())); + // 閫氳繃num淇敼 + wrapper.eq("num",num); + int flag=mapper.update((PwrdevAlarm) ActionUtil.objeNull,wrapper); + return new Response().set(1,flag>0,flag>0?"纭鎴愬姛":"纭澶辫触"); + } + //鑾峰彇涓�绾ф湭澶勭悊瀹炴椂鍛婅鏁� + public Integer getPwrAlmNum(Integer powerId) { + QueryWrapper wrapper=new QueryWrapper(); + wrapper.eq("power_id",powerId); + wrapper.eq("alm_is_confirmed",0); + wrapper.eq("alm_level",1); + List<DevalarmData> list=mapper.selectList(wrapper); + return list!=null?list.size():0; + } + //鑾峰彇鐢垫簮鍛婅绫诲瀷(涓嬫媺) + public Response getPwrAlmIdType() { + Map<String,Map<Integer,String>> map= PowerAlarmEnum.getOpInfo(); + return new Response().setII(1,true,map,"鑾峰彇鐢垫簮鍛婅绫诲瀷(涓嬫媺)"); + } + + public List<AlarmInspection> getListGreatThan(Long id) { + List<AlarmInspection> listGreatThan = mapper.getListGreatThan(id); + Date now = new Date(); + listGreatThan.forEach(data->{ + data.setType(1); + data.setIsExist(1); + data.setCreateTime(now); + }); + return listGreatThan; + } + + public List<Long> getNumListInDB(List<Long> powerAlarmNumList) { + QueryWrapper<PwrdevAlarm> query = Wrappers.query(); + query.select("num"); + query.in("num",powerAlarmNumList); + return mapper.selectList(query).stream().map(PwrdevAlarm::getNum).collect(Collectors.toList()); + } + + public List<AlarmDto> getListByUserId(Integer userId,Integer alarmLevel) { + return mapper.getListByUserId(userId,alarmLevel); + } + + //棰勮鍒嗘瀽绠$悊-鐢垫簮鍛婅 + public Response getPwrtAlmAnalyse(AlmAnalyseDto dto) { + PageHelper .startPage(dto.getPageNum(),dto.getPageSize()); + List<PwrdevAlarm> list=mapper.getPwrtAlmAnalyse(dto); + for (PwrdevAlarm pwrAlm:list) { + pwrAlm.setAlmName(PowerAlarmEnum.getValue(pwrAlm.getAlmId())); + //鏌ヨ鐢垫簮涓嬫墍鏈夌殑鐢垫睜缁刬d + List<Integer> battgroupIdList = battInfService.getBattgroupIdList(pwrAlm.getPowerId()); + pwrAlm.setBattgroupIdList(battgroupIdList); + } + PageInfo pageInfo=new PageInfo(list); + return new Response().setII(1,list!=null,pageInfo,"鐢垫簮鍛婅鍒嗘瀽"); + } + } \ No newline at end of file -- Gitblit v1.9.1