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/service/BattalarmDataService.java |   64 ++++++++++++++++++++++++++++++++
 1 files changed, 64 insertions(+), 0 deletions(-)

diff --git a/src/main/java/com/whyc/service/BattalarmDataService.java b/src/main/java/com/whyc/service/BattalarmDataService.java
index 2e0acfa..8c59d9f 100644
--- a/src/main/java/com/whyc/service/BattalarmDataService.java
+++ b/src/main/java/com/whyc/service/BattalarmDataService.java
@@ -1,12 +1,19 @@
 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.BattAlarmIdEnum;
+import com.whyc.constant.BattSingalIdEnum;
+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.BattalarmDataMapper;
 import com.whyc.pojo.db_alarm.BattalarmData;
+import com.whyc.pojo.web_site.AlarmInspection;
 import com.whyc.util.ActionUtil;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
@@ -14,6 +21,8 @@
 import java.text.SimpleDateFormat;
 import java.util.Date;
 import java.util.List;
+import java.util.Map;
+import java.util.stream.Collectors;
 
 @Service
 public class BattalarmDataService {
@@ -23,9 +32,13 @@
     public Response getBattAlmReal(AlmDto almDto) {
         PageHelper.startPage(almDto.getPageNum(),almDto.getPageSize());
         List<BattalarmData> list=mapper.getBattAlmReal(almDto);
+        list.forEach(data->{
+            data.setAlmName(BattSingalIdEnum.getValue(data.getAlmSignalId()));
+        });
         PageInfo pageInfo=new PageInfo(list);
         return new Response().setII(1,list!=null,pageInfo,"鑾峰彇鐢垫睜缁勫疄鏃跺憡璀︿俊鎭�");
     }
+
     //纭鐢垫睜鍛婅
     public Response updateBattConfrim(Integer num) {
         UpdateWrapper wrapper = new UpdateWrapper<>();
@@ -36,4 +49,55 @@
         int flag=mapper.update((BattalarmData) ActionUtil.objeNull,wrapper);
         return  new Response().set(1,flag>0,flag>0?"纭鎴愬姛":"纭澶辫触");
     }
+    //鑾峰彇涓�绾ф湭澶勭悊瀹炴椂鍛婅鏁�
+    public Integer getBattAlmNum(Integer battgroupId) {
+        QueryWrapper wrapper=new QueryWrapper();
+        wrapper.eq("battgroup_id",battgroupId);
+        wrapper.eq("alm_is_confirmed",0);
+        wrapper.eq("alm_level",1);
+        List<BattalarmData> list=mapper.selectList(wrapper);
+        return list!=null?list.size():0;
+    }
+    //鑾峰彇鐢垫睜鍛婅绫诲瀷(涓嬫媺)
+    public Response getAlarmIdType() {
+       Map<Integer,String> map= BattAlarmIdEnum.getOpInfo();
+       return new Response().setII(1,true,map,"鑾峰彇鐢垫睜鍛婅绫诲瀷(涓嬫媺)");
+    }
+
+    public List<AlarmInspection> getListGreatThan(Long battAlarmId) {
+        List<AlarmInspection> listGreatThan = mapper.getListGreatThan(battAlarmId);
+        Date now = new Date();
+        listGreatThan.forEach(data->{
+            data.setType(3);
+            data.setIsExist(1);
+            data.setCreateTime(now);
+        });
+        return listGreatThan;
+    }
+
+    public List<AlarmDto> getListByUserId(Integer userId, Integer almLevel) {
+        return mapper.getListByUserId(userId,almLevel);
+    }
+
+    public List<Long> getNumListInDB(List<Long> battAlarmNumList) {
+        QueryWrapper<BattalarmData> query = Wrappers.query();
+        query.select("num");
+        query.in("num",battAlarmNumList);
+        return mapper.selectList(query).stream().map(BattalarmData::getNum).collect(Collectors.toList());
+    }
+
+    public List<BattalarmData> getMonAlarm(Integer userId) {
+        return mapper.getMonAlarm(userId);
+    }
+    //棰勮鍒嗘瀽绠$悊
+    public Response getBattAlmAnalyse(AlmAnalyseDto dto) {
+        PageHelper .startPage(dto.getPageNum(),dto.getPageSize());
+        List<BattalarmData> list=mapper.getBattAlmAnalyse(dto);
+        list.forEach(data->{
+            data.setAlmName(BattSingalIdEnum.getValue(data.getAlmSignalId()));
+        });
+        PageInfo pageInfo=new PageInfo(list);
+        return new Response().setII(1,list!=null,pageInfo,"鐢垫睜鍛婅鍒嗘瀽");
+    }
+
 }
\ No newline at end of file

--
Gitblit v1.9.1