From 913d47be5fa05c33a958a00b9a85126d817e3f06 Mon Sep 17 00:00:00 2001
From: fuliqi <fuliqi@qq.com>
Date: 星期四, 31 十月 2024 15:09:48 +0800
Subject: [PATCH] 首页点位在线折线bug

---
 ycl-server/src/main/java/com/ycl/platform/service/impl/TMonitorServiceImpl.java |   32 +++++++++++++++-----------------
 1 files changed, 15 insertions(+), 17 deletions(-)

diff --git a/ycl-server/src/main/java/com/ycl/platform/service/impl/TMonitorServiceImpl.java b/ycl-server/src/main/java/com/ycl/platform/service/impl/TMonitorServiceImpl.java
index 504cd1b..5968f2b 100644
--- a/ycl-server/src/main/java/com/ycl/platform/service/impl/TMonitorServiceImpl.java
+++ b/ycl-server/src/main/java/com/ycl/platform/service/impl/TMonitorServiceImpl.java
@@ -456,9 +456,10 @@
                 List<TMonitorResult> onlines = onlineList.stream().filter(tMonitorResult -> tMonitorResult.getMongoCreateTime().minusDays(1).equals(parseTime)).collect(Collectors.toList());
                 if (!CollectionUtils.isEmpty(onlines)) {
                     videoExp.setTotal(onlines.size());
-                    videoExp.setOnline(Integer.valueOf(onlines.stream()
-                            .filter(TMonitorResult::getPingOnline)
-                            .count() + ""));
+                    long count = onlines.stream()
+                            .filter(item -> ApiConstants.UY_OnlineSite_Online.equals(item.getOnline()))
+                            .count();
+                    videoExp.setOnline(Integer.valueOf(count+""));
                     videoExp.setOffline(videoExp.getTotal() - videoExp.getOnline());
                 }
                 //璁剧疆瀛樺偍鎯呭喌
@@ -809,7 +810,7 @@
                 new Document("$group", new Document("_id", "$mongoCreateTime")
                         .append("onlineCount", new Document("$sum",
                                 new Document("$cond", Arrays.asList(
-                                        new Document("$eq", Arrays.asList("$online", Boolean.TRUE)),
+                                        new Document("$eq", Arrays.asList("$online",ApiConstants.UY_OnlineSite_Online)),
                                         1,
                                         0
                                 ))
@@ -879,8 +880,6 @@
         matchConditions.add(new Document("dataType", new Document("$eq", ApiConstants.HK_DataType_CAR)));
         if (examineTag != null && examineTag.equals(1)) {
             matchConditions.add(new Document("provinceTag", true));
-        } else if (examineTag != null && examineTag.equals(2)) {
-            matchConditions.add(new Document("deptTag", true));
         }
         // 鏋勫缓鑱氬悎绠¢亾
         List<Document> pipeline = Arrays.asList(
@@ -889,7 +888,6 @@
                         .append("dataCount", new Document("$sum", "$dataCount"))
                 )
         );
-
         // 鎵ц鑱氬悎鏌ヨ骞惰幏鍙栫粨鏋�
         AggregateIterable<Document> result = collection.aggregate(pipeline);
         for (Document doc : result) {
@@ -899,7 +897,7 @@
             results.add(homecarVO);
         }
 
-        //mongo鏌ョ偣浣嶅湪绾�
+        //TODO锛氬湪绾夸慨鏀癸紝闇�瑕佹妸妫�娴嬫捣搴蜂紭浜戞娴嬬殑缁撴灉瀛樺叆mongo锛宮ongo鏌ョ偣浣嶅湪绾�
         MongoCollection<Document> onlineCollection = database.getCollection("t_monitor_online");
         // 鏋勫缓鍩烘湰鐨�$match鏉′欢
         List<Document> onlineMatch = new ArrayList<>();
@@ -907,8 +905,6 @@
         onlineMatch.add(new Document("monitorType", new Document("$regex", "2")));
         if (examineTag != null && examineTag.equals(1)) {
             onlineMatch.add(new Document("provinceTag", true));
-        } else if (examineTag != null && examineTag.equals(2)) {
-            onlineMatch.add(new Document("deptTag", true));
         }
         // 鏋勫缓鑱氬悎绠¢亾
         List<Document> onlinePipeline = Arrays.asList(
@@ -916,7 +912,7 @@
                 new Document("$group", new Document("_id", "$mongoCreateTime")
                         .append("onlineCount", new Document("$sum",
                                 new Document("$cond", Arrays.asList(
-                                        new Document("$eq", Arrays.asList("$online", Boolean.TRUE)),
+                                        new Document("$eq", Arrays.asList("$online",ApiConstants.UY_OnlineSite_Online)),
                                         1,
                                         0
                                 ))
@@ -994,8 +990,6 @@
         matchConditions.add(new Document("dataType", new Document("$eq", ApiConstants.HK_DataType_FACE)));
         if (examineTag != null && examineTag.equals(1)) {
             matchConditions.add(new Document("provinceTag", true));
-        } else if (examineTag != null && examineTag.equals(2)) {
-            matchConditions.add(new Document("deptTag", true));
         }
         // 鏋勫缓鑱氬悎绠¢亾
         List<Document> pipeline = Arrays.asList(
@@ -1022,8 +1016,6 @@
         onlineMatch.add(new Document("monitorType", new Document("$regex", "3")));
         if (examineTag != null && examineTag.equals(1)) {
             onlineMatch.add(new Document("provinceTag", true));
-        } else if (examineTag != null && examineTag.equals(2)) {
-            onlineMatch.add(new Document("deptTag", true));
         }
         // 鏋勫缓鑱氬悎绠¢亾
         List<Document> onlinePipeline = Arrays.asList(
@@ -1031,7 +1023,7 @@
                 new Document("$group", new Document("_id", "$mongoCreateTime")
                         .append("onlineCount", new Document("$sum",
                                 new Document("$cond", Arrays.asList(
-                                        new Document("$eq", Arrays.asList("$online", Boolean.TRUE)),
+                                        new Document("$eq", Arrays.asList("$online", ApiConstants.UY_OnlineSite_Online)),
                                         1,
                                         0
                                 ))
@@ -1108,7 +1100,13 @@
         for (TMonitorResult monitorResult : onlineResult) {
             int dayOfMonth = monitorResult.getMongoCreateTime().getDayOfMonth();
             String online = "";
-            online += monitorResult.getPingOnline() ? "鍦ㄧ嚎" : "绂荤嚎";
+            if(ApiConstants.UY_OnlineSite_Online.equals(monitorResult.getOnline())){
+                online +="鍦ㄧ嚎";
+            }else if(ApiConstants.UY_OnlineSite_Offline.equals(monitorResult.getOnline())){
+                online +="绂荤嚎";
+            }else {
+                online +="鏈煡";
+            }
             //鍙嶅皠璧嬪�硷紝瀛楁缁熶竴瀹氫箟涓篸ay+1锛�2锛�3...
             Field field = videoDailyExp.getClass().getDeclaredField("day" + dayOfMonth);
             field.setAccessible(true);

--
Gitblit v1.8.0