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