From 5752f03cf3236b9d7dc12dff1f88f188c80b727b Mon Sep 17 00:00:00 2001 From: whyclxw <810412026@qq.com> Date: 星期五, 27 六月 2025 17:10:13 +0800 Subject: [PATCH] 拦截放行退出登录,实时数据统计曲线-交流单元修改 --- src/main/java/com/whyc/util/ActionUtil.java | 26 ++++++++++++++++++++++++++ 1 files changed, 26 insertions(+), 0 deletions(-) diff --git a/src/main/java/com/whyc/util/ActionUtil.java b/src/main/java/com/whyc/util/ActionUtil.java index 278d4c3..d2820e9 100644 --- a/src/main/java/com/whyc/util/ActionUtil.java +++ b/src/main/java/com/whyc/util/ActionUtil.java @@ -18,6 +18,7 @@ import java.text.ParseException; import java.text.SimpleDateFormat; import java.time.LocalDate; +import java.time.LocalDateTime; import java.time.YearMonth; import java.time.format.DateTimeFormatter; import java.util.*; @@ -674,7 +675,32 @@ return result.toString(); } + //缁橫ap<String, Map<String,List<String>>>鍘婚噸鍚堝苟 + public static Map<String, List<String>> getMergeMap(Map<String, Map<String,List<String>>> allTimeMap) { + Map<String, List<String>> mergedMap = new HashMap<>(); + for (Map<String, List<String>> innerMap : allTimeMap.values()) { + for (Map.Entry<String, List<String>> entry : innerMap.entrySet()) { + String key = entry.getKey(); + List<String> valueList = entry.getValue(); + mergedMap.computeIfAbsent(key, k -> new ArrayList<>()) + .addAll(valueList); + } + } + DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"); + // 鍘婚噸锛堜繚鐣欓『搴忥級 + mergedMap.forEach((key, list) -> { + Set<String> seen = new LinkedHashSet<>(); + list.removeIf(s -> !seen.add(s)); + // 鎺掑簭锛氬皢瀛楃涓茶В鏋愪负 LocalDateTime 鍚庢帓搴� + list.sort((s1, s2) -> { + LocalDateTime d1 = LocalDateTime.parse(s1, formatter); + LocalDateTime d2 = LocalDateTime.parse(s2, formatter); + return d1.compareTo(d2); + }); + }); + return mergedMap; + } public static void main(String[] args) throws ParseException { /*List<String> dateList =getDateListBetweenDates(ActionUtil.sdf.parse("2025-01-01 00:00:00"),new Date()); for (String date : dateList) { -- Gitblit v1.9.1