From 918b26794c7d3b3faa2c57e6a6cb0c11ea4e73e8 Mon Sep 17 00:00:00 2001
From: fuliqi <fuliqi@qq.com>
Date: 星期四, 05 十二月 2024 16:34:56 +0800
Subject: [PATCH] 省厅标签拆分2

---
 ycl-server/src/main/java/com/ycl/platform/service/impl/DataCenterServiceImpl.java |   50 ++++++++++++++++++++++++++++++++++++--------------
 1 files changed, 36 insertions(+), 14 deletions(-)

diff --git a/ycl-server/src/main/java/com/ycl/platform/service/impl/DataCenterServiceImpl.java b/ycl-server/src/main/java/com/ycl/platform/service/impl/DataCenterServiceImpl.java
index 9ea32fa..c676cab 100644
--- a/ycl-server/src/main/java/com/ycl/platform/service/impl/DataCenterServiceImpl.java
+++ b/ycl-server/src/main/java/com/ycl/platform/service/impl/DataCenterServiceImpl.java
@@ -86,8 +86,12 @@
         if (params.getOption() != null) {
             query.addCriteria(Criteria.where("online").is(params.getOption()));
         }
+        Sort sort = Sort.by(
+                Sort.Order.asc("pingOnline"), // 棣栧厛鎸夌収 pingOnline 鍗囧簭鎺掑簭
+                Sort.Order.desc("offLineCount") // 棣栧厛鎸夌収 pingOnline 鍗囧簭鎺掑簭
+        );
         // 閫氳繃pingOnline瀛楁鎺掑簭锛屼负false鐨勬帓鍦ㄥ墠闈�
-        query.with(Sort.by(Sort.Order.asc("pingOnline")));
+        query.with(sort);
         //鍒嗛〉鏁伴噺
         long total = mongoTemplate.count(query, TMonitorResult.class);
         MongoUtil.setPage(query, params, TIME_FIELD);
@@ -107,19 +111,13 @@
             } else {
                 item.setOnlineStr("鏈煡");
             }
-            List<Date> offLineTime = item.getOffLineTime();
+            List<String> offLineTime = item.getOffLineTimeStr();
             if(!CollectionUtils.isEmpty(offLineTime)) {
                 //鍚庣画鍙互鏀规垚閰嶇疆鐨勭绾挎鏁�(鎻愬彇鍓峮娆★紝n涓洪厤缃殑绂荤嚎娆℃暟)
-                SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
                 if (offLineTime.size() > 1) {
                     offLineTime = offLineTime.subList(0, 2);
                 }
-                List<String> dateStr = new ArrayList<>();
-                for (Date date : offLineTime) {
-                    String formatDate = format.format(date);
-                    dateStr.add(formatDate);
-                }
-                item.setOffLineTimeStr(dateStr);
+                item.setOffLineTimeStr(offLineTime);
             }
         });
         params.setDeptTag(-1);
@@ -1096,7 +1094,7 @@
         Document errorFilter = new Document("$or", errorConditions);
         dList2.add(errorFilter);
         Document osdErrorFilter = new Document("$and", dList2);
-        //TODO锛氭湭鐭ユ暟  鏂板0鐨勭姸鎬�
+        //鏈煡鏁�
         List<Document> dList3 = new ArrayList<>(2);
         setTag(params,dList3);
         dList3.add(importantTagCondition);
@@ -1235,7 +1233,7 @@
         Document errorFilter = new Document("$or", errorConditions);
         dList2.add(errorFilter);
         Document osdErrorFilter = new Document("$and", dList2);
-        //TODO锛氭湭鐭ユ暟  鏂板0鐨勭姸鎬�
+        //鏈煡鏁�
         List<Document> dList3 = new ArrayList<>(2);
         setTag(params,dList3);
         dList3.add(importantTagCondition);
@@ -1400,8 +1398,12 @@
         if (params.getOption() != null) {
             query.addCriteria(Criteria.where("online").is(params.getOption()));
         }
+        Sort sort = Sort.by(
+                Sort.Order.asc("pingOnline"), // 棣栧厛鎸夌収 pingOnline 鍗囧簭鎺掑簭
+                Sort.Order.desc("offLineCount") // 棣栧厛鎸夌収 pingOnline 鍗囧簭鎺掑簭
+        );
         // 閫氳繃pingOnline瀛楁鎺掑簭锛屼负false鐨勬帓鍦ㄥ墠闈�
-        query.with(Sort.by(Sort.Order.asc("pingOnline")));
+        query.with(sort);
         //鍒嗛〉鏁伴噺
         long total = mongoTemplate.count(query, TMonitorResult.class);
         MongoUtil.setPage(query, params, TIME_FIELD);
@@ -1423,6 +1425,14 @@
                 item.setOnlineStr("绂荤嚎");
             } else {
                 item.setOnlineStr("鏈煡");
+            }
+            List<String> offLineTime = item.getOffLineTimeStr();
+            if(!CollectionUtils.isEmpty(offLineTime)) {
+                //鍚庣画鍙互鏀规垚閰嶇疆鐨勭绾挎鏁�(鎻愬彇鍓峮娆★紝n涓洪厤缃殑绂荤嚎娆℃暟)
+                if (offLineTime.size() > 1) {
+                    offLineTime = offLineTime.subList(0, 2);
+                }
+                item.setOffLineTimeStr(offLineTime);
             }
         });
 
@@ -2208,8 +2218,12 @@
         if (params.getOption() != null) {
             query.addCriteria(Criteria.where("online").is(params.getOption()));
         }
+        Sort sort = Sort.by(
+                Sort.Order.asc("pingOnline"), // 棣栧厛鎸夌収 pingOnline 鍗囧簭鎺掑簭
+                Sort.Order.desc("offLineCount") // 棣栧厛鎸夌収 pingOnline 鍗囧簭鎺掑簭
+        );
         // 閫氳繃pingOnline瀛楁鎺掑簭锛屼负false鐨勬帓鍦ㄥ墠闈�
-        query.with(Sort.by(Sort.Order.asc("pingOnline")));
+        query.with(sort);
         //鍒嗛〉鏁伴噺
         long total = mongoTemplate.count(query, TMonitorResult.class);
         MongoUtil.setPage(query, params, TIME_FIELD);
@@ -2229,11 +2243,19 @@
             } else {
                 item.setOnlineStr("鏈煡");
             }
+            List<String> offLineTime = item.getOffLineTimeStr();
+            if(!CollectionUtils.isEmpty(offLineTime)) {
+                //鍚庣画鍙互鏀规垚閰嶇疆鐨勭绾挎鏁�(鎻愬彇鍓峮娆★紝n涓洪厤缃殑绂荤嚎娆℃暟)
+                if (offLineTime.size() > 1) {
+                    offLineTime = offLineTime.subList(0, 2);
+                }
+                item.setOffLineTimeStr(offLineTime);
+            }
         });
         params.setDeptTag(-1);
         params.setDeviceType(3);
 
-// 缁熻璁惧鏁伴噺
+        // 缁熻璁惧鏁伴噺
         //鍗$墖缁熻
         int totalCount = 0;
         int onlineCount = 0;

--
Gitblit v1.8.0