From 1b299b7a0ff1186efc9c62a52a3822d07b07deab Mon Sep 17 00:00:00 2001
From: 龚焕茏 <2842157468@qq.com>
Date: 星期四, 22 八月 2024 18:01:50 +0800
Subject: [PATCH] fix:解决大屏报错、故障类型存储枚举值

---
 ycl-server/src/main/java/com/ycl/calculate/VideoOnlineCalculation.java |   46 ++++++++++++++++++++++++++++++++++------------
 1 files changed, 34 insertions(+), 12 deletions(-)

diff --git a/ycl-server/src/main/java/com/ycl/calculate/VideoOnlineCalculation.java b/ycl-server/src/main/java/com/ycl/calculate/VideoOnlineCalculation.java
index 9a8d1b4..1fbc17b 100644
--- a/ycl-server/src/main/java/com/ycl/calculate/VideoOnlineCalculation.java
+++ b/ycl-server/src/main/java/com/ycl/calculate/VideoOnlineCalculation.java
@@ -13,6 +13,8 @@
 import com.ycl.platform.service.ICheckIndexVideoService;
 import com.ycl.platform.service.ITMonitorService;
 import constant.ApiConstants;
+import constant.CheckThreadConstants;
+import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
 import org.springframework.util.CollectionUtils;
@@ -34,6 +36,7 @@
  * 鏇存柊鎴栨柊澧�
  */
 @Component
+@Slf4j
 public class VideoOnlineCalculation extends IndexCalculationServe implements CalculationStrategy<VideoOnlineResult> {
     @Autowired
     private CheckIndexVideoMapper checkIndexVideoMapper;
@@ -55,6 +58,7 @@
     @Override
     public void calculate(List<VideoOnlineResult> list) {
         if (CollectionUtils.isEmpty(list)) {
+            log.info("鏁版嵁涓虹┖");
             return;
         }
 
@@ -88,7 +92,7 @@
         List<CheckIndexVideo> checkIndexVideos = new ArrayList<>();
         areaStatsMap.forEach((deptId, stats) -> {
             if (stats.totalSites > 0) {
-                CheckIndexVideo CheckIndexVideo = createOrUpdateCheckIndexFace(deptId, stats, checkIndexVideoList);
+                CheckIndexVideo CheckIndexVideo = createOrUpdateCheckIndexVideo(deptId, stats, checkIndexVideoList);
                 if (CheckIndexVideo != null) {
                     checkIndexVideos.add(CheckIndexVideo);
                 }
@@ -127,7 +131,7 @@
     /**
      * 瑙嗛鐐逛綅鍦ㄧ嚎鐜�
      */
-    private CheckIndexVideo createOrUpdateCheckIndexFace(String key, AreaStats stats, List<CheckIndexVideo> checkIndexVideoList) {
+    private CheckIndexVideo createOrUpdateCheckIndexVideo(String key, AreaStats stats, List<CheckIndexVideo> checkIndexVideoList) {
         CheckIndexVideo checkIndexVideo = getCheckIndex(key, checkIndexVideoList, CheckIndexVideo.class);
         if (checkIndexVideo == null) {
             return null;
@@ -138,18 +142,36 @@
         param.put("onlineSites", stats.onlineSites);
         BigDecimal siteOnline = siteOnline(param);
         checkIndexVideo.setSiteOnline(siteOnline);
+        //鍖哄幙涓嶅皯浜�100璺�
+        if(stats.totalSites < CheckThreadConstants.Check_Video_SiteOnline){
+            checkIndexVideo.setSiteOnline(BigDecimal.ZERO);
+        }
         //璋冪敤鐐逛綅鍦ㄧ嚎鐜囪绠楁柟娉� 璁$畻閲嶇偣鐐逛綅鍦ㄧ嚎鐜�
-        Map<String, Object> importantParam = new HashMap<>();
-        param.put("totalSites", stats.importantSites);
-        param.put("onlineSites", stats.importantOnlineSites);
-        BigDecimal importantSiteOnline = siteOnline(importantParam);
-        checkIndexVideo.setKeySiteOnline(importantSiteOnline);
+        if(stats.importantSites!=0) {
+            Map<String, Object> importantParam = new HashMap<>();
+            importantParam.put("totalSites", stats.importantSites);
+            importantParam.put("onlineSites", stats.importantOnlineSites);
+            BigDecimal importantSiteOnline = siteOnline(importantParam);
+            checkIndexVideo.setKeySiteOnline(importantSiteOnline);
+        }else {
+            log.info("閲嶇偣鐐逛綅鏁颁负0");
+        }
+
+        //鍖哄幙瑙嗛閲嶇偣鐐逛綅鏁颁笉灏戜簬10璺�
+        if(stats.importantSites<CheckThreadConstants.Check_Video_ImportantSite){
+            checkIndexVideo.setKeySiteOnline(BigDecimal.ZERO);
+        }
+
         //璋冪敤鐐逛綅鍦ㄧ嚎鐜囪绠楁柟娉� 璁$畻鎸囨尌鍥惧儚鍦ㄧ嚎鐜�
-        Map<String, Object> commandParam = new HashMap<>();
-        param.put("totalSites", stats.commandSites);
-        param.put("onlineSites", stats.commandOnlineSites);
-        BigDecimal commandSiteOnline = siteOnline(importantParam);
-        checkIndexVideo.setKeyCommandImageOnline(commandSiteOnline);
+        if(stats.commandSites!=0) {
+            Map<String, Object> commandParam = new HashMap<>();
+            commandParam.put("totalSites", stats.commandSites);
+            commandParam.put("onlineSites", stats.commandOnlineSites);
+            BigDecimal commandSiteOnline = siteOnline(commandParam);
+            checkIndexVideo.setKeyCommandImageOnline(commandSiteOnline);
+        }else {
+            log.info("鎸囨尌鍥惧儚鐐逛綅鏁颁负0");
+        }
         return checkIndexVideo;
     }
 }

--
Gitblit v1.8.0