From 9691382d22efb241056177f92cd22040e3224303 Mon Sep 17 00:00:00 2001
From: skyouc
Date: 星期四, 14 八月 2025 11:21:45 +0800
Subject: [PATCH] no message

---
 rsf-server/src/main/java/com/vincent/rsf/server/common/utils/DateUtils.java |   20 ++++++++++++++++++++
 1 files changed, 20 insertions(+), 0 deletions(-)

diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/common/utils/DateUtils.java b/rsf-server/src/main/java/com/vincent/rsf/server/common/utils/DateUtils.java
index ff3c883..38d4e4d 100755
--- a/rsf-server/src/main/java/com/vincent/rsf/server/common/utils/DateUtils.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/common/utils/DateUtils.java
@@ -6,7 +6,10 @@
 import java.text.SimpleDateFormat;
 import java.time.*;
 import java.time.format.DateTimeFormatter;
+import java.time.temporal.ChronoUnit;
 import java.util.*;
+import java.util.stream.Collectors;
+import java.util.stream.IntStream;
 
 /**
  * 鏃ユ湡鏃堕棿宸ュ叿绫�
@@ -232,6 +235,23 @@
     }
 
     /**
+     * 鑾峰彇鍓�30澶╂墍鏈夋棩鏈�
+     * @param pattern
+     * @return
+     */
+    public static List<String> getLastMonthDays(String pattern) {
+        LocalDate today = LocalDate.now().minusDays(1);
+        LocalDate oneMonthAgo = today.minusMonths(1);
+        DateTimeFormatter formatter = DateTimeFormatter.ofPattern(pattern);
+        return IntStream.iterate(0, i -> i + 1)
+                .limit(ChronoUnit.DAYS.between(oneMonthAgo, today) + 1)
+                .mapToObj(oneMonthAgo::plusDays)
+                .map(date -> date.format(formatter))
+                .collect(Collectors.toList());
+    }
+
+
+    /**
      * 鏃ユ湡鍨嬪瓧绗︿覆杞寲涓烘棩鏈� 鏍煎紡
      * { "yyyy-MM-dd", "yyyy-MM-dd HH:mm:ss", "yyyy-MM-dd HH:mm",
      * "yyyy/MM/dd", "yyyy/MM/dd HH:mm:ss", "yyyy/MM/dd HH:mm",

--
Gitblit v1.9.1