From cfcfbf068acf9b9d509a99498346dcbcf101cdf9 Mon Sep 17 00:00:00 2001
From: fuliqi <fuliqi@qq.com>
Date: 星期四, 14 十一月 2024 16:37:46 +0800
Subject: [PATCH] 白名单基础增删改查

---
 ycl-server/src/main/java/com/ycl/platform/service/impl/DataCenterServiceImpl.java |   54 +++++++++++++++++++++++++++++++++++++++---------------
 1 files changed, 39 insertions(+), 15 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 b2acaff..781bf2b 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,18 +111,14 @@
             } else {
                 item.setOnlineStr("鏈煡");
             }
-            List<Date> offLineTime = item.getOffLineTime();
-            //鍚庣画鍙互鏀规垚閰嶇疆鐨勭绾挎鏁�(鎻愬彇鍓峮娆★紝n涓洪厤缃殑绂荤嚎娆℃暟)
-            SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
-            if(CollectionUtils.isNotEmpty(offLineTime) && offLineTime.size()>1){
-                offLineTime = offLineTime.subList(0,1);
+            List<String> offLineTime = item.getOffLineTimeStr();
+            if(!CollectionUtils.isEmpty(offLineTime)) {
+                //鍚庣画鍙互鏀规垚閰嶇疆鐨勭绾挎鏁�(鎻愬彇鍓峮娆★紝n涓洪厤缃殑绂荤嚎娆℃暟)
+                if (offLineTime.size() > 1) {
+                    offLineTime = offLineTime.subList(0, 2);
+                }
+                item.setOffLineTimeStr(offLineTime);
             }
-            List<String> dateStr = new ArrayList<>();
-            for (Date date : offLineTime) {
-                String formatDate = format.format(date);
-                dateStr.add(formatDate);
-            }
-            item.setOffLineTimeStr(dateStr);
         });
         params.setDeptTag(-1);
         params.setDeviceType(1);
@@ -1398,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);
@@ -1421,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);
             }
         });
 
@@ -2206,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);
@@ -2227,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