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