From ca2417166fe917aeb45d08df6ff152f9c7a0060a Mon Sep 17 00:00:00 2001 From: liurunyu <lry9898@163.com> Date: 星期日, 27 四月 2025 10:57:17 +0800 Subject: [PATCH] 修改拦载器 --- pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/util/DateTime.java | 190 ++++++++++++++++++++++++++++++++++------------- 1 files changed, 137 insertions(+), 53 deletions(-) diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/util/DateTime.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/util/DateTime.java index 1e04eeb..b1dcd25 100644 --- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/util/DateTime.java +++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/util/DateTime.java @@ -26,6 +26,46 @@ public static Date getDate(Long time){ return new Date(time) ; } + + + + public static Date startOfDay(int year, int month, int day){ + Date dt = null ; + try{ + dt = DateTime.dateFrom_yyyy_MM_dd_HH_mm_ss(year + "-" + (month < 10 ? ("0" + month) : month) + "-" + (day < 10 ? ("0" + day) : day) + " 00:00:00"); + }catch (Exception e){ + e.printStackTrace(); + } + return dt ; + } + + public static Date endOfDay(int year, int month, int day){ + Date dt = null ; + try{ + dt = DateTime.dateFrom_yyyy_MM_dd_HH_mm_ss(year + "-" + (month < 10 ? ("0" + month) : month) + "-" + (day < 10 ? ("0" + day) : day) + " 23:59:59"); + }catch (Exception e){ + e.printStackTrace(); + } + return dt ; + } + + public static int endDayOfMonth(int year, int month){ + if(month == 1 || month == 3 || month == 5 || month == 7 || month == 8 || month == 10 || month == 12){ + return 31 ; + }else{ + if(month == 2){ + if(DateTime.isLeapYear(year)){ + return 29 ; + }else{ + return 28 ; + } + }else{ + return 30 ; + } + } + } + + public static String yyyy() { return new SimpleDateFormat("yyyy", Locale.CHINA).format(new Date(System.currentTimeMillis())); @@ -385,7 +425,10 @@ public static Date dateFrom_yyyy_MM_dd(String yyyy_MM_dd) throws Exception { return new SimpleDateFormat("yyyy-MM-dd", Locale.CHINA).parse(yyyy_MM_dd); } - + public static Date dateFrom_yyyy_MM_dd1(String yyyy_MM_dd_HH_mm_ss) throws Exception { + return new SimpleDateFormat("yyyy-MM-dd", Locale.CHINA).parse(yyyy_MM_dd_HH_mm_ss); + } + public static Date dateFrom_yyyyMMddHHmmss(String yyyyMMddHHmmss) throws Exception { return new SimpleDateFormat("yyyyMMddHHmmss", Locale.CHINA).parse(yyyyMMddHHmmss); } @@ -412,16 +455,29 @@ } public static Integer week_Int(){ String str = week_Str() ; - return switch (str) { - case "Mon" -> 1; - case "Tue" -> 2; - case "Wed" -> 3; - case "Thu" -> 4; - case "Fri" -> 5; - case "Sat" -> 6; - case "Sun" -> 7; - default -> 0; - }; + if(str.startsWith("鍛�")){ + return switch (str) { + case "鍛ㄤ竴" -> 1; + case "鍛ㄤ簩" -> 2; + case "鍛ㄤ笁" -> 3; + case "鍛ㄥ洓" -> 4; + case "鍛ㄤ簲" -> 5; + case "鍛ㄥ叚" -> 6; + case "鍛ㄤ竷" -> 0;//鏍规嵁鍗忚瑕佹眰鏄熸湡澶╀负0 + default -> 0; + }; + }else{ + return switch (str) { + case "Mon" -> 1; + case "Tue" -> 2; + case "Wed" -> 3; + case "Thu" -> 4; + case "Fri" -> 5; + case "Sat" -> 6; + case "Sun" -> 0;//鏍规嵁鍗忚瑕佹眰鏄熸湡澶╀负0 + default -> 0; + }; + } } /** * 涓や釜鏃ユ湡闂寸浉宸閽熸暟 @@ -468,6 +524,12 @@ /** * 涓や釜鏃ユ湡鐩稿樊澶╂暟 */ + public static long daysBetweenyyyy_MM_dd(Date yyyy_MM_dd_1 , Date yyyy_MM_dd_2)throws Exception{ + return ((((yyyy_MM_dd_1.getTime() - yyyy_MM_dd_2.getTime())/1000)/60)/60)/24 ; + } + /** + * 涓や釜鏃ユ湡鐩稿樊澶╂暟 + */ public static long daysBetweenyyyyMMdd(String yyyyMMdd_1 , String yyyyMMdd_2)throws Exception{ return ((((dateFrom_yyyy_MM_dd(yyyyMMdd_1).getTime()-dateFrom_yyyy_MM_dd(yyyyMMdd_2).getTime())/1000)/60)/60)/24 ; } @@ -483,6 +545,17 @@ } ////////////////////////////////////////////////////////////////////////// + + /** + * 瀛楃涓插瀷鏃ユ湡(2024-12)杞垚骞存湀鏃ユ暟缁� + * @param yyyy_MM 骞存湀鏃� + * @return 骞存湀鏃ユ暟缁� + */ + public static int[] yyyy_MM_ymdGroup(String yyyy_MM){ + int y = Integer.parseInt(yyyy_MM.substring(0 , 4)) ; + int m = Integer.parseInt(yyyy_MM.substring(5 , 7)) ; + return new int[]{y,m} ; + } /** * 瀛楃涓插瀷鏃ユ湡(2009-09-10)杞垚骞存湀鏃ユ暟缁� @@ -587,7 +660,7 @@ */ public static Long lastXMinuteTime(int xMin) { Calendar cal = Calendar.getInstance(); - cal.add(Calendar.MINUTE, -xMin); + cal.add(Calendar.MINUTE, xMin<=0?xMin:-xMin); Date date = cal.getTime() ; return date.getTime() ; } @@ -603,7 +676,7 @@ Date d = new SimpleDateFormat("yyyy-MM-dd HH", Locale.CHINA).parse(yyyy_MM_dd_HH); Calendar cal = Calendar.getInstance(); cal.setTime(d); - cal.add(Calendar.HOUR_OF_DAY, -xhour); + cal.add(Calendar.HOUR_OF_DAY, xhour<=0?xhour:-xhour); Date date = cal.getTime() ; return DateTime.yyyy_MM_dd_HH(date) ; } @@ -617,7 +690,7 @@ Date d = new SimpleDateFormat("yyyy-MM-dd HH:mm", Locale.CHINA).parse(yyyy_MM_dd_HH_mm); Calendar cal = Calendar.getInstance(); cal.setTime(d); - cal.add(Calendar.HOUR_OF_DAY, -xhour); + cal.add(Calendar.HOUR_OF_DAY, xhour<=0?xhour:-xhour); Date date = cal.getTime() ; return DateTime.yyyy_MM_dd_HH_mm(date) ; } @@ -631,7 +704,7 @@ Date d = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.CHINA).parse(yyyy_MM_dd_HH_mm_ss); Calendar cal = Calendar.getInstance(); cal.setTime(d); - cal.add(Calendar.HOUR_OF_DAY, -xhour); + cal.add(Calendar.HOUR_OF_DAY, xhour<=0?xhour:-xhour); Date date = cal.getTime() ; return DateTime.yyyy_MM_dd_HH_mm_ss(date) ; } @@ -645,7 +718,7 @@ Date d = new SimpleDateFormat("yyyyMMddHH", Locale.CHINA).parse(yyyyMMddHH); Calendar cal = Calendar.getInstance(); cal.setTime(d); - cal.add(Calendar.HOUR_OF_DAY, -xhour); + cal.add(Calendar.HOUR_OF_DAY, xhour<=0?xhour:-xhour); Date date = cal.getTime() ; return DateTime.yyyyMMddHH(date) ; } @@ -659,7 +732,7 @@ Date d = new SimpleDateFormat("yyyyMMddHHmm", Locale.CHINA).parse(yyyyMMddHHmm); Calendar cal = Calendar.getInstance(); cal.setTime(d); - cal.add(Calendar.HOUR_OF_DAY, -xhour); + cal.add(Calendar.HOUR_OF_DAY, xhour<=0?xhour:-xhour); Date date = cal.getTime() ; return DateTime.yyyyMMddHHmm(date) ; } @@ -673,7 +746,7 @@ Date d = new SimpleDateFormat("yyyyMMddHHmmss", Locale.CHINA).parse(yyyyMMddHHmmss); Calendar cal = Calendar.getInstance(); cal.setTime(d); - cal.add(Calendar.HOUR_OF_DAY, -xhour); + cal.add(Calendar.HOUR_OF_DAY, xhour<=0?xhour:-xhour); Date date = cal.getTime() ; return DateTime.yyyyMMddHHmmss(date) ; } @@ -687,7 +760,7 @@ public static String lastXHour_yyyy_MM_dd_HH(int xhour){ Date date = new Date(); Calendar cal = Calendar.getInstance(); - cal.add(Calendar.HOUR_OF_DAY, -xhour); + cal.add(Calendar.HOUR_OF_DAY, xhour<=0?xhour:-xhour); date.setTime(cal.getTimeInMillis()); return DateTime.yyyy_MM_dd_HH(date) ; } @@ -699,7 +772,7 @@ public static String lastXHour_yyyy_MM_dd_HH_mm(int xhour){ Date date = new Date(); Calendar cal = Calendar.getInstance(); - cal.add(Calendar.HOUR_OF_DAY, -xhour); + cal.add(Calendar.HOUR_OF_DAY, xhour<=0?xhour:-xhour); date.setTime(cal.getTimeInMillis()); return DateTime.yyyy_MM_dd_HH_mm(date) ; } @@ -711,7 +784,7 @@ public static String lastXHour_yyyy_MM_dd_HH_mm_ss(int xhour){ Date date = new Date(); Calendar cal = Calendar.getInstance(); - cal.add(Calendar.HOUR_OF_DAY, -xhour); + cal.add(Calendar.HOUR_OF_DAY, xhour<=0?xhour:-xhour); date.setTime(cal.getTimeInMillis()); return DateTime.yyyy_MM_dd_HH_mm_ss(date) ; } @@ -723,7 +796,7 @@ public static String lastXHour_yyyyMMddHH(int xhour){ Date date = new Date(); Calendar cal = Calendar.getInstance(); - cal.add(Calendar.HOUR_OF_DAY, -xhour); + cal.add(Calendar.HOUR_OF_DAY, xhour<=0?xhour:-xhour); date.setTime(cal.getTimeInMillis()); return DateTime.yyyyMMddHH(date) ; } @@ -735,7 +808,7 @@ public static String lastXHour_yyyyMMddHHmm(int xhour){ Date date = new Date(); Calendar cal = Calendar.getInstance(); - cal.add(Calendar.HOUR_OF_DAY, -xhour); + cal.add(Calendar.HOUR_OF_DAY, xhour<=0?xhour:-xhour); date.setTime(cal.getTimeInMillis()); return DateTime.yyyyMMddHHmm(date) ; } @@ -747,7 +820,7 @@ public static String lastXHour_yyyyMMddHHmmss(int xhour){ Date date = new Date(); Calendar cal = Calendar.getInstance(); - cal.add(Calendar.HOUR_OF_DAY, -xhour); + cal.add(Calendar.HOUR_OF_DAY, xhour<=0?xhour:-xhour); date.setTime(cal.getTimeInMillis()); return DateTime.yyyyMMddHHmmss(date) ; } @@ -763,7 +836,7 @@ Date d = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.CHINA).parse(yyyy_MM_dd_HH_mm_ss); Calendar cal = Calendar.getInstance(); cal.setTime(d); - cal.add(Calendar.MINUTE, xminute); + cal.add(Calendar.MINUTE, xminute<=0?-xminute:xminute ); Date date = cal.getTime() ; return DateTime.yyyy_MM_dd_HH_mm_ss(date) ; } @@ -779,7 +852,7 @@ Date d = new SimpleDateFormat("yyyy-MM-dd HH", Locale.CHINA).parse(yyyy_MM_dd_HH); Calendar cal = Calendar.getInstance(); cal.setTime(d); - cal.add(Calendar.HOUR_OF_DAY, xhour); + cal.add(Calendar.HOUR_OF_DAY, xhour<=0?-xhour:xhour ); Date date = cal.getTime() ; return DateTime.yyyy_MM_dd_HH(date) ; } @@ -793,7 +866,7 @@ Date d = new SimpleDateFormat("yyyy-MM-dd HH:mm", Locale.CHINA).parse(yyyy_MM_dd_HH_mm); Calendar cal = Calendar.getInstance(); cal.setTime(d); - cal.add(Calendar.HOUR_OF_DAY, xhour); + cal.add(Calendar.HOUR_OF_DAY, xhour<=0?-xhour:xhour); Date date = cal.getTime() ; return DateTime.yyyy_MM_dd_HH_mm(date) ; } @@ -807,7 +880,7 @@ Date d = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.CHINA).parse(yyyy_MM_dd_HH_mm_ss); Calendar cal = Calendar.getInstance(); cal.setTime(d); - cal.add(Calendar.HOUR_OF_DAY, xhour); + cal.add(Calendar.HOUR_OF_DAY, xhour<=0?-xhour:xhour); Date date = cal.getTime() ; return DateTime.yyyy_MM_dd_HH_mm_ss(date) ; } @@ -821,7 +894,7 @@ Date d = new SimpleDateFormat("yyyyMMddHH", Locale.CHINA).parse(yyyyMMddHH); Calendar cal = Calendar.getInstance(); cal.setTime(d); - cal.add(Calendar.HOUR_OF_DAY, xhour); + cal.add(Calendar.HOUR_OF_DAY, xhour<=0?-xhour:xhour); Date date = cal.getTime() ; return DateTime.yyyyMMddHH(date) ; } @@ -835,7 +908,7 @@ Date d = new SimpleDateFormat("yyyyMMddHHmm", Locale.CHINA).parse(yyyyMMddHHmm); Calendar cal = Calendar.getInstance(); cal.setTime(d); - cal.add(Calendar.HOUR_OF_DAY, xhour); + cal.add(Calendar.HOUR_OF_DAY, xhour<=0?-xhour:xhour); Date date = cal.getTime() ; return DateTime.yyyyMMddHHmm(date) ; } /** @@ -848,7 +921,7 @@ Date d = new SimpleDateFormat("yyyyMMddHHmmss", Locale.CHINA).parse(yyyyMMddHHmmss); Calendar cal = Calendar.getInstance(); cal.setTime(d); - cal.add(Calendar.HOUR_OF_DAY, xhour); + cal.add(Calendar.HOUR_OF_DAY, xhour<=0?-xhour:xhour); Date date = cal.getTime() ; return DateTime.yyyyMMddHHmmss(date) ; } @@ -862,7 +935,7 @@ public static String nextXHour_yyyy_MM_dd_HH(int xhour){ Date date = new Date(); Calendar cal = Calendar.getInstance(); - cal.add(Calendar.HOUR_OF_DAY, xhour); + cal.add(Calendar.HOUR_OF_DAY, xhour<=0?-xhour:xhour); date.setTime(cal.getTimeInMillis()); return DateTime.yyyy_MM_dd_HH(date) ; } @@ -874,7 +947,7 @@ public static String nextXHour_yyyy_MM_dd_HH_mm(int xhour){ Date date = new Date(); Calendar cal = Calendar.getInstance(); - cal.add(Calendar.HOUR_OF_DAY, xhour); + cal.add(Calendar.HOUR_OF_DAY, xhour<=0?-xhour:xhour); date.setTime(cal.getTimeInMillis()); return DateTime.yyyy_MM_dd_HH_mm(date) ; } @@ -886,7 +959,7 @@ public static String nextXHour_yyyy_MM_dd_HH_mm_ss(int xhour){ Date date = new Date(); Calendar cal = Calendar.getInstance(); - cal.add(Calendar.HOUR_OF_DAY, xhour); + cal.add(Calendar.HOUR_OF_DAY, xhour<=0?-xhour:xhour); date.setTime(cal.getTimeInMillis()); return DateTime.yyyy_MM_dd_HH_mm_ss(date) ; } @@ -900,7 +973,7 @@ public static String nextXHour_yyyyMMddHH(int xhour){ Date date = new Date(); Calendar cal = Calendar.getInstance(); - cal.add(Calendar.HOUR_OF_DAY, xhour); + cal.add(Calendar.HOUR_OF_DAY, xhour<=0?-xhour:xhour); date.setTime(cal.getTimeInMillis()); return DateTime.yyyyMMddHH(date) ; } @@ -912,7 +985,7 @@ public static String nextXHour_yyyyMMddHHmm(int xhour){ Date date = new Date(); Calendar cal = Calendar.getInstance(); - cal.add(Calendar.HOUR_OF_DAY, xhour); + cal.add(Calendar.HOUR_OF_DAY, xhour<=0?-xhour:xhour); date.setTime(cal.getTimeInMillis()); return DateTime.yyyyMMddHHmm(date) ; } @@ -924,7 +997,7 @@ public static String nextXHour_yyyyMMddHHmmss(int xhour){ Date date = new Date(); Calendar cal = Calendar.getInstance(); - cal.add(Calendar.HOUR_OF_DAY, xhour); + cal.add(Calendar.HOUR_OF_DAY, xhour<=0?-xhour:xhour); date.setTime(cal.getTimeInMillis()); return DateTime.yyyyMMddHHmmss(date) ; } @@ -943,7 +1016,7 @@ Date d = new SimpleDateFormat("yyyy-MM-dd", Locale.CHINA).parse(yyyy_MM_dd); Calendar cal = Calendar.getInstance(); cal.setTime(d); - cal.add(Calendar.DAY_OF_YEAR, -xday); + cal.add(Calendar.DAY_OF_YEAR, xday<=0?xday:-xday); Date date = cal.getTime() ; return DateTime.yyyy_MM_dd(date) ; } @@ -957,7 +1030,7 @@ Date d = new SimpleDateFormat("yyyyMMdd", Locale.CHINA).parse(yyyyMMdd); Calendar cal = Calendar.getInstance(); cal.setTime(d); - cal.add(Calendar.DAY_OF_YEAR, -xday); + cal.add(Calendar.DAY_OF_YEAR, xday<=0?xday:-xday); Date date = cal.getTime() ; return DateTime.yyyyMMdd(date) ; } @@ -969,7 +1042,7 @@ public static String lastXDay_yyyy_MM_dd(int xday){ Date date = new Date(); Calendar cal = Calendar.getInstance(); - cal.add(Calendar.DAY_OF_YEAR, -xday); + cal.add(Calendar.DAY_OF_YEAR, xday<=0?xday:-xday); date.setTime(cal.getTimeInMillis()); return DateTime.yyyy_MM_dd(date) ; } @@ -981,7 +1054,7 @@ public static String lastXDay_yyyy_MM_dd_HH_ss(int xday){ Date date = new Date(); Calendar cal = Calendar.getInstance(); - cal.add(Calendar.DAY_OF_YEAR, -xday); + cal.add(Calendar.DAY_OF_YEAR, xday<=0?xday:-xday); date.setTime(cal.getTimeInMillis()); return DateTime.yyyy_MM_dd_HH_mm_ss(date) ; } @@ -993,7 +1066,7 @@ public static String lastXDay_yyyyMMdd(int xday){ Date date = new Date(); Calendar cal = Calendar.getInstance(); - cal.add(Calendar.DAY_OF_YEAR, -xday); + cal.add(Calendar.DAY_OF_YEAR, xday<=0?xday:-xday); date.setTime(cal.getTimeInMillis()); return DateTime.yyyyMMdd(date) ; } @@ -1012,7 +1085,7 @@ Date d = new SimpleDateFormat("yyyy-MM-dd", Locale.CHINA).parse(yyyy_MM_dd); Calendar cal = Calendar.getInstance(); cal.setTime(d); - cal.add(Calendar.DAY_OF_YEAR, xday); + cal.add(Calendar.DAY_OF_YEAR, xday<=0?-xday:xday); Date date = cal.getTime() ; return DateTime.yyyy_MM_dd(date) ; } @@ -1026,7 +1099,7 @@ Date d = new SimpleDateFormat("yyyyMMdd", Locale.CHINA).parse(yyyyMMdd); Calendar cal = Calendar.getInstance(); cal.setTime(d); - cal.add(Calendar.DAY_OF_YEAR, xday); + cal.add(Calendar.DAY_OF_YEAR, xday<=0?-xday:xday); Date date = cal.getTime() ; return DateTime.yyyyMMdd(date) ; } @@ -1038,7 +1111,7 @@ public static String nextXDay_yyyy_MM_dd(int xday){ Date date = new Date(); Calendar cal = Calendar.getInstance(); - cal.add(Calendar.DAY_OF_YEAR, xday); + cal.add(Calendar.DAY_OF_YEAR, xday<=0?-xday:xday); date.setTime(cal.getTimeInMillis()); return DateTime.yyyy_MM_dd(date) ; } @@ -1050,7 +1123,7 @@ public static String nextXDay_yyyyMMdd(int xday){ Date date = new Date(); Calendar cal = Calendar.getInstance(); - cal.add(Calendar.DAY_OF_YEAR, xday); + cal.add(Calendar.DAY_OF_YEAR, xday<=0?-xday:xday); date.setTime(cal.getTimeInMillis()); return DateTime.yyyyMMdd(date) ; } @@ -1418,7 +1491,22 @@ "09", "11", "12", "13", "14", "15", "16", "17", "18", "19", "20", "21", "22", "23" }; } - + + public static int[] dayGrpInMonth(int year, int month){ + if(month == 1 || month == 3 || month == 5 || month == 7 || month == 8 || month == 10 || month == 12){ + return new int[]{1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31} ; + }else{ + if(month == 2){ + if(isLeapYear(year)){ + return new int[]{1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29} ; + }else{ + return new int[]{1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28} ; + } + }else{ + return new int[]{1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30} ; + } + } + } public static String getWeek(int wk) { if (wk == 1) { @@ -1565,13 +1653,7 @@ String[] s = new String[3] ; s[0] = ymd.substring(0 , 4) ; s[1] = ymd.substring(5 , 7) ; - if(s[1].charAt(0) == '0'){ - s[1] = s[1].substring(1) ; - } s[2] = ymd.substring(8,10) ; - if(s[2].charAt(0) == '0'){ - s[2] = s[2].substring(1) ; - } return s ; } /** @@ -1630,6 +1712,8 @@ Date dt = getDate(1447857387L) ; String s = yyyy_MM_dd_HH_mm_ss(dt); System.out.println(s); + + System.out.println(lastMonth_ym()) ; } -- Gitblit v1.8.0