From 3c02cf8bdc8181a1f8fc09bdd2608c7b004f942d Mon Sep 17 00:00:00 2001
From: fuliqi <fuliqi@qq.com>
Date: 星期三, 20 十一月 2024 11:52:19 +0800
Subject: [PATCH] 避免下发页面的新增导致的重复工单
---
ycl-server/src/main/java/com/ycl/platform/service/impl/DataCenterServiceImpl.java | 49 +++++++++++++++++++++++++++++++++++++++++++------
1 files changed, 43 insertions(+), 6 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 aba88a9..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
@@ -43,6 +43,7 @@
import java.math.BigDecimal;
import java.math.RoundingMode;
import java.text.DecimalFormat;
+import java.text.SimpleDateFormat;
import java.util.*;
import java.util.regex.Pattern;
import java.util.stream.Collectors;
@@ -85,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);
@@ -105,6 +110,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);
}
});
params.setDeptTag(-1);
@@ -1081,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);
@@ -1220,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);
@@ -1385,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);
@@ -1408,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);
}
});
@@ -2193,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);
@@ -2214,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