summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorshizhendong <[email protected]>2024-09-09 16:11:16 +0800
committershizhendong <[email protected]>2024-09-09 16:11:16 +0800
commit6c36e883c2f72a7ef2635f9b11174a899c44269f (patch)
treeb61cfc403681a16ba83680b9b21c602023f751a9
parent7988de7a1f8d677854551bb9a32928bb77393833 (diff)
fix: OMPUB-1453 dashboard 快照,计算step逻辑和前端保持一致rel-24.01.28
1. 解决在相同时间范围的条件下,快照导出的结果和在线查看的结果不一致问题
-rw-r--r--nz-admin/src/main/java/com/nis/modules/dashboard/service/impl/VisualServiceImpl.java35
1 files changed, 27 insertions, 8 deletions
diff --git a/nz-admin/src/main/java/com/nis/modules/dashboard/service/impl/VisualServiceImpl.java b/nz-admin/src/main/java/com/nis/modules/dashboard/service/impl/VisualServiceImpl.java
index 871f30d7..d2722964 100644
--- a/nz-admin/src/main/java/com/nis/modules/dashboard/service/impl/VisualServiceImpl.java
+++ b/nz-admin/src/main/java/com/nis/modules/dashboard/service/impl/VisualServiceImpl.java
@@ -261,16 +261,35 @@ public class VisualServiceImpl implements VisualService {
*/
@Override
public String getTimeStep(Long start, Long end) {
- Long timeDiff = (end - start) / (24 * 60 * 60);
- if (timeDiff < 1) {
- return "15s";
- } else if (timeDiff < 7) {
- return "5m";
- } else if (timeDiff < 30) {
- return "10m";
+ String step = "15s";
+
+ long oneDay = 86400L;
+ long sevenDay = 604800L;
+ long thirtyDay = 2592000L;
+
+ Long numInterval = end - start;
+ if (numInterval < oneDay / 2) { // 小于12小时
+ step = "15s";
+ } else if (numInterval < oneDay) { // 小于1天,step为15s
+ step = "30s";
+ } else if (numInterval < oneDay * 2) { // 小于2天,step为15s
+ step = "1m";
+ } else if (numInterval < sevenDay) { // 小于7天,step为5m
+ step = "5m";
+ } else if (numInterval < thirtyDay) { // 小于30天,step为10m
+ step = "30m";
+ } else if (numInterval < thirtyDay * 2) {
+ step = "45m";
+ } else if (numInterval < thirtyDay * 3) {
+ step = "1h";
+ } else if (numInterval < thirtyDay * 6) {
+ step = "3h";
+ } else if (numInterval < thirtyDay * 12) {
+ step = "5h";
} else {
- return "30m";
+ step = "24h";
}
+ return step;
}
@Override