From d19e91bcc4ed9ab08e8be375fb5fc0f7e874a6a9 Mon Sep 17 00:00:00 2001
From: whycxzp <glperry@163.com>
Date: 星期三, 30 四月 2025 18:17:44 +0800
Subject: [PATCH] 测试调整格式

---
 src/main/java/com/whyc/util/DateUtil.java |   77 ++++++++++++++++++++++++++++++++++++++
 1 files changed, 76 insertions(+), 1 deletions(-)

diff --git a/src/main/java/com/whyc/util/DateUtil.java b/src/main/java/com/whyc/util/DateUtil.java
index aef26cb..0372041 100644
--- a/src/main/java/com/whyc/util/DateUtil.java
+++ b/src/main/java/com/whyc/util/DateUtil.java
@@ -11,9 +11,12 @@
 public class DateUtil {
 
     public static SimpleDateFormat YYYY_MM_DD_HH_MM_SS=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+    public static SimpleDateFormat YYYY_MM_DD_HH_MM=new SimpleDateFormat("yyyy-MM-dd HH:mm");
     public static SimpleDateFormat YYYY_MM_DD_HH_MM_SS_UNION=new SimpleDateFormat("yyyyMMddHHmmss");
 	public static SimpleDateFormat YYYY_MM_DD=new SimpleDateFormat("yyyy-MM-dd");
 	public static SimpleDateFormat YYYY_MM=new SimpleDateFormat("yyyy-MM");
+	public static SimpleDateFormat YYYY_DOT_MM=new SimpleDateFormat("yyyy.MM");
+	public static SimpleDateFormat YYYY_DOT_MM_DOT_DD=new SimpleDateFormat("yyyy.MM.dd");
 	public static SimpleDateFormat YYYY_MM_TABLE=new SimpleDateFormat("yyyy_MM");
 
 	public static int compare(String date1Str,String date2Str) throws ParseException {
@@ -181,7 +184,7 @@
      * 鏍规嵁浼犲叆鐨勮捣姝㈡椂闂�,鎸夌収鏈堝垏鍓叉垚涓嶅悓鏃堕棿娈�
      * @param startTimeStr 2022-11-01 10:00:00
      * @param endTimeStr 2023-05-01 10:10:10
-     * @return  绀轰緥[2022_12,2023_1,2023_2,2023_3,2023_4,2023_5] TODO 杩欎釜杩斿洖瀵硅薄鏍煎紡 闇�瑕佹牴鎹笟鍔¢渶瑕佽繘琛岃皟鏁�
+     * @return  绀轰緥[2022_12,2023_1,2023_2,2023_3,2023_4,2023_5] 杩欎釜杩斿洖瀵硅薄鏍煎紡 闇�瑕佹牴鎹笟鍔¢渶瑕佽繘琛岃皟鏁�
      * 浣跨敤鏂规硶:
      *   鏍规嵁杩斿洖鐨勭涓�涓暟鎹�,濡傛灉瀛樺湪琛�,鍒欐煡璇㈢瓫閫夋潯浠朵负>=杈撳叆鐨勮捣濮嬫椂闂�;涓嶅瓨鍦ㄥ垯寮冪敤杈撳叆鐨勮捣濮嬫椂闂�
      *   鏍规嵁杩斿洖鐨勬渶鍚庝釜鏁版嵁,濡傛灉琛ㄥ瓨鍦�,鍒欐煡璇㈢瓫閫夋潯浠朵负<=杈撳叆鐨勭粓姝㈡椂闂�;涓嶅瓨鍦ㄥ垯寮冪敤杈撳叆鐨勭粓姝㈡椂闂�
@@ -545,6 +548,39 @@
     }
 
     /**
+     *  鏌ヨ浣跨敤鏃�,闇�瑕佸鐞� 榛樿琛ㄦ煡璇㈢殑闂 鍊掑簭
+     *  绀轰緥:
+     *  <p>
+     * {2020=[Fri Dec 25 14:12:22 CST 2020, Thu Dec 31 23:59:59 CST 2020]}
+     * {2021=[Fri Jan 01 00:00:00 CST 2021, Fri Dec 31 23:59:59 CST 2021]}
+     * {2022=[Sat Jan 01 00:00:00 CST 2022, Tue Nov 29 09:12:22 CST 2022]}
+     * 鎴�
+     * {2020=[Fri Dec 25 14:12:22 CST 2020, Thu Dec 31 23:59:59 CST 2020]}
+     * {2021=[Fri Jan 01 00:00:00 CST 2021, Fri Dec 31 23:59:59 CST 2021]}
+     * {2022=[Sat Jan 01 00:00:00 CST 2022, Thu Dec 29 09:12:22 CST 2022]}
+     * {default=[Wed Dec 14 15:27:13 CST 2022, Thu Dec 29 09:12:22 CST 2022]}
+     * </p>
+     * key涓烘暟瀛�,琛ㄧず骞村害鍒嗚〃;default涓洪粯璁よ〃
+     * @param startTimeDate 璧峰鏃堕棿
+     * @param endTimeDate 缁堟鏃堕棿
+     * @return 闇�瑕佹煡璇㈢殑琛ㄥ強鏌ヨ鏃堕棿
+     * @throws ParseException
+     */
+    public static Map<String,List<Date>> getQueryTimeForSubTablesDescWithOutDefault(Date startTimeDate,Date endTimeDate) throws ParseException {
+        //鏍规嵁绛涢�夌殑鏃堕棿娈�,鏌ヨ鍑虹鍚堣姹傜殑鍚勫垎琛ㄨ褰曟暟
+        //棣栧厛,濡傛灉褰撳墠鏃堕棿瓒呰繃7鏈�,榛樿琛ㄤ腑鍙湁鏈勾搴︾殑;濡傛灉娌¤秴杩�7鏈�,榛樿琛ㄨ繕瀛樺湪涓婁竴骞村害鐨勮褰�
+        Calendar now = Calendar.getInstance();
+        if(endTimeDate.compareTo(now.getTime())>0){ //鏍¢獙浼樺寲鏈�澶ф煡璇㈡椂闂�
+            endTimeDate = now.getTime();
+        }
+        Calendar timeBefore7Month = Calendar.getInstance();
+        timeBefore7Month.add(Calendar.MONTH,-7);
+
+        LinkedHashMap<String,List<Date>> yearTimeMap = (LinkedHashMap<String, List<Date>>) DateUtil.getYearListDesc(startTimeDate, endTimeDate);
+        return yearTimeMap;
+    }
+
+    /**
      * 鎸夊勾鍒掑垎
      * 浼樺寲getQueryTimeForSubTablesDesc,寰呮祴璇�
      * 鏇存柊default琛ㄦ槸鍚︽煡璇㈢殑閫昏緫,鏀箌|涓�&&
@@ -631,6 +667,45 @@
         return yearTimeDescMap;
     }
 
+    /**
+     *  鎸夋湀鍒掑垎涓�,涓嶅瓨鍦ㄩ粯璁よ〃,閮芥槸鍒嗚〃
+     * @param startTimeDate
+     * @param endTimeDate
+     * @return
+     * @throws ParseException
+     */
+    public static Map<String,List<Date>> getQueryTimeForSubTablesByMonthDesc2(Date startTimeDate,Date endTimeDate) throws ParseException {
+        //鏍规嵁绛涢�夌殑鏃堕棿娈�,鏌ヨ鍑虹鍚堣姹傜殑鍚勫垎琛ㄨ褰曟暟
+        //棣栧厛,濡傛灉褰撳墠鏃堕棿瓒呰繃7鏈�,榛樿琛ㄤ腑鍙湁鏈勾搴︾殑;濡傛灉娌¤秴杩�7鏈�,榛樿琛ㄨ繕瀛樺湪涓婁竴骞村害鐨勮褰�
+        Calendar now = Calendar.getInstance();
+        if(endTimeDate.compareTo(now.getTime())>0){ //鏍¢獙浼樺寲鏈�澶ф煡璇㈡椂闂�
+            endTimeDate = now.getTime();
+        }
+        LinkedHashMap<String,List<Date>> yearTimeMap = (LinkedHashMap<String, List<Date>>) DateUtil.getMonthListDesc(startTimeDate, endTimeDate);
+        Map<String,List<Date>> yearTimeDescMap = new LinkedHashMap<>();
+        boolean existDefaultYear = false;
+        //鏌ヨ鐨勭粨鏉熸椂闂�
+        //if(DateUtil.YYYY_MM_TABLE.format(endTimeDate).equals(DateUtil.YYYY_MM_TABLE.format(now.getTime()))){
+        if(ThreadLocalUtil.format(endTimeDate,2).equals(ThreadLocalUtil.format(now.getTime(),2))){
+            List<Date> defaultDateList = new LinkedList<>();
+            defaultDateList.add(startTimeDate);
+            defaultDateList.add(endTimeDate);
+        }
+        //璋冩暣涓嬮『搴�,灏哾efault璋冩暣鍒伴浣�
+        if(existDefaultYear){
+            List<Date> defaultTimeList = yearTimeMap.get("default");
+            yearTimeDescMap.put("default",defaultTimeList);
+        }
+        Set<String> yearSet = yearTimeMap.keySet();
+        for (String year : yearSet) {
+            if(!year.equals("default")){
+                yearTimeDescMap.put(year,yearTimeMap.get(year));
+            }
+        }
+
+        return yearTimeDescMap;
+    }
+
 
     public static void main(String[] args) throws ParseException {
         //Date d1 = YYYY_MM_DD_HH_MM_SS.parse("2023-01-22 14:12:22");

--
Gitblit v1.9.1