From d20d38e22b06559d758c568769017e2acf632583 Mon Sep 17 00:00:00 2001
From: zuoxiao <470321431@qq.com>
Date: 星期三, 23 四月 2025 14:06:48 +0800
Subject: [PATCH] Merge branch 'master' of http://8.140.179.55:20000/r/pipIrr-SV
---
pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/util/DateTime.java | 185 +++++++++++++++++++++++++++++++++-------------
1 files changed, 133 insertions(+), 52 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 be8a88a..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()));
@@ -415,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;
+ };
+ }
}
/**
* 涓や釜鏃ユ湡闂寸浉宸閽熸暟
@@ -471,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 ;
}
@@ -486,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)杞垚骞存湀鏃ユ暟缁�
@@ -590,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() ;
}
@@ -606,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) ;
}
@@ -620,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) ;
}
@@ -634,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) ;
}
@@ -648,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) ;
}
@@ -662,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) ;
}
@@ -676,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) ;
}
@@ -690,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) ;
}
@@ -702,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) ;
}
@@ -714,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) ;
}
@@ -726,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) ;
}
@@ -738,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) ;
}
@@ -750,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) ;
}
@@ -766,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) ;
}
@@ -782,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) ;
}
@@ -796,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) ;
}
@@ -810,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) ;
}
@@ -824,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) ;
}
@@ -838,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) ;
} /**
@@ -851,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) ;
}
@@ -865,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) ;
}
@@ -877,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) ;
}
@@ -889,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) ;
}
@@ -903,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) ;
}
@@ -915,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) ;
}
@@ -927,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) ;
}
@@ -946,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) ;
}
@@ -960,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) ;
}
@@ -972,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) ;
}
@@ -984,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) ;
}
@@ -996,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) ;
}
@@ -1015,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) ;
}
@@ -1029,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) ;
}
@@ -1041,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) ;
}
@@ -1053,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) ;
}
@@ -1421,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) {
@@ -1568,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 ;
}
/**
@@ -1633,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