From ec4f4bf4db52a0c0994edfecfcd8f6e194b429d5 Mon Sep 17 00:00:00 2001
From: sgj <1442489573@qq.com>
Date: 星期四, 16 四月 2026 10:10:48 +0800
Subject: [PATCH] 库区有未回复的抓拍告警批复,添加红色背景提醒

---
 fzzy-igdss-web/src/main/java/com/fzzy/group/manager/GroupManager.java |   36 ++++++++++++++++++++++++------------
 1 files changed, 24 insertions(+), 12 deletions(-)

diff --git a/fzzy-igdss-web/src/main/java/com/fzzy/group/manager/GroupManager.java b/fzzy-igdss-web/src/main/java/com/fzzy/group/manager/GroupManager.java
index 35fc6d2..d649fda 100644
--- a/fzzy-igdss-web/src/main/java/com/fzzy/group/manager/GroupManager.java
+++ b/fzzy-igdss-web/src/main/java/com/fzzy/group/manager/GroupManager.java
@@ -13,7 +13,6 @@
 import com.ruoyi.common.utils.StringUtils;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.lang3.time.DateFormatUtils;
-import org.apache.commons.lang3.time.DateUtils;
 import org.springframework.stereotype.Component;
 
 import javax.annotation.Resource;
@@ -56,6 +55,9 @@
     private PledgeContractDepotService pledgeContractDepotService;
     @Resource
     private GatewaySerService gatewaySerService;
+
+    @Resource
+    private SnapReplyService  snapReplyService;
 
     /**
      * 鑾峰彇鐪佸強涓嬪睘甯傚窞闆嗗悎
@@ -524,6 +526,16 @@
                 if (null == cacheSerByDeptId || (null != cacheSerByDeptId && StringUtils.isNotBlank(cacheSerByDeptId.getStatus()) && cacheSerByDeptId.getStatus().equals(Constant.YN_N))) {
                     deptData.setDailyTotal(-1);
                 }
+                //缁熻鏈壒澶嶇殑鎶撴媿鍛婅鏁伴噺
+                IgdsBaseParam replyParam = new IgdsBaseParam();
+                replyParam.setDeptId(dept.getId());
+                replyParam.setCompanyId(param.getCompanyId());
+                replyParam.setKey(Constant.YN_N);
+                List<SnapReply> listByParam = snapReplyService.getListByParam(replyParam);
+                if (null != listByParam && !listByParam.isEmpty()){
+                    deptData.setUnReplyAlarmNum(listByParam.size());
+                }
+
                 list.add(deptData);
             }
         }
@@ -698,6 +710,7 @@
     /**
      * 澶у睆棣栭〉-鎶撴媿璺熻釜淇℃伅-灞曠ずAI鏃堕棿鍥剧墖
      * 灞曠ず鍥剧墖鐨勪笟鍔¢�昏緫锛氭瘡涓簱鍖哄睍绀轰竴寮狅紝鍥剧墖涓哄綋澶╁崄鐐逛互鍚庢渶鏂扮殑涓�寮�
+     *
      * @param param
      * @return
      */
@@ -705,16 +718,15 @@
 //        Date start =DateUtils.setHours(DateUtil.getNewByDay(new Date(), -3), 10);
         //param.setStart(start);
 //        param.setEnd(DateUtil.getNewByDay(new Date(), -3));
-        Date start =DateUtils.setHours(new Date(), 10);
+        Date start =DateUtil.getNewByDay(new Date(), -10);
         param.setStart(start);
         param.setEnd(new Date());
+
         //鑾峰彇褰撴棩鐨勬姄鎷嶄俊鎭�
         List<EventInfo> listByParam = eventInfoService.getListByParam(param);
         if (null == listByParam || listByParam.isEmpty()) {
             return new PageResponse<>(RespCodeEnum.CODE_0000, new ArrayList<>());
         }
-        //绛涢�塼ime澶т簬Start鏃堕棿鐨勬暟鎹�
-        listByParam = listByParam.stream().filter(info -> info.getTime().after(start)).collect(Collectors.toList());
 
         //鑾峰彇鎵�鏈夌殑搴撳尯淇℃伅
         List<Dept> deptList = deptService.getDeptByUserType(null);
@@ -723,14 +735,14 @@
 
         for (Dept dept : deptList) {
             EventInfo latestEvent = null;
-                //浠巐istByParam涓瓫閫夊嚭涓庡綋鍓峣d鍖归厤鐨勬暟鎹�
-            List<EventInfo> collect = listByParam.stream().filter(info -> info.getDeptId().equals(dept.getId())).collect(Collectors.toList());
-            if (!collect.isEmpty()) {
-                //鏍规嵁鏃堕棿鎺掑簭骞舵壘鍒版渶鏂颁竴鏉℃暟鎹�
-                latestEvent = collect.stream().sorted(Comparator.comparing(EventInfo::getTime).reversed()).findFirst().get();
-            }
-            if (latestEvent != null) {
-                resultList.add(latestEvent);
+            //浠巐istByParam涓瓫閫夊嚭涓庡綋鍓峣d鍖归厤鐨勬暟鎹�
+            List<EventInfo> collect = listByParam.stream().filter(info -> info.getDeptId().equals(dept.getId())).sorted(Comparator.comparing(EventInfo::getTime).reversed()).collect(Collectors.toList());
+            //姣忎釜搴撳尯鑾峰彇鏈�鏂扮殑3寮犲浘鐗�
+            int i = 0;
+            for (EventInfo info : collect) {
+                if (i > 2) break;
+                resultList.add(info);
+                i++;
             }
         }
         if (null != resultList && !resultList.isEmpty()) {

--
Gitblit v1.9.3