From 13a34d2197b001799ef8f0f09e5b48af2add0926 Mon Sep 17 00:00:00 2001 From: lsh <lsh@163.com> Date: 星期一, 15 四月 2024 09:25:31 +0800 Subject: [PATCH] # --- src/main/java/com/zy/crm/manager/utils/TimeCalculatorUtils.java | 179 ++++++++++++++++++++++++++++++++--------------------------- 1 files changed, 96 insertions(+), 83 deletions(-) diff --git a/src/main/java/com/zy/crm/manager/utils/TimeCalculatorUtils.java b/src/main/java/com/zy/crm/manager/utils/TimeCalculatorUtils.java index 8248d8f..6c5e57e 100644 --- a/src/main/java/com/zy/crm/manager/utils/TimeCalculatorUtils.java +++ b/src/main/java/com/zy/crm/manager/utils/TimeCalculatorUtils.java @@ -69,6 +69,14 @@ return calendar.getTime(); } + //鑾峰彇鐩稿樊n澶╃殑鏃ユ湡锛堟棩鏈熷ぉ鏁板姞N锛� + public static Date timeYesterdayN(Date date,int day){ + Calendar calendar = Calendar.getInstance(); + calendar.setTime(date); + calendar.add(Calendar.DAY_OF_MONTH, day); + return calendar.getTime(); + } + //鑾峰彇骞存湀鏃� public static String timeYestMonthDay(Date date){ Calendar calendar = Calendar.getInstance(); @@ -161,6 +169,15 @@ } //鑾峰彇鐜板湪鏃ユ湡鏄綋鏈堢鍑犲懆 + public static int WeeklyNowMonthDay(Date date) { +// int day = timeDay(date); +// if (day<7){ +// if (WeeklyNowMonth(WeeklyMonday(date))>2){ +// return 1; +// } +// } + return WeeklyNowMonth(WeeklyMonday(date)); + } public static int WeeklyNowMonth(Date date) { // LocalDate currentDate = LocalDate.now(); LocalDate currentDate = LocalDate.of(timeYest(date), timeMonth(date), timeDay(date)); @@ -244,21 +261,17 @@ return true; } - //鍒ゆ柇鏄笉鏄懆涓� 濡傛灉鏃ユ湡涓嶆槸鍛ㄤ竴锛屽垯灏嗗畠璋冩暣鍒版湰鍛ㄥ懆涓� + //鑾峰彇鏈懆鍛ㄤ竴 public static Date WeeklyMonday (Date date) { LocalDate localDate = LocalDate.of(timeYest(date), timeMonth(date), timeDay(date)); - // 鍒ゆ柇鏄笉鏄懆涓� 鍒欏皢瀹冭皟鏁村埌涓嬪懆鍛ㄤ竴 - if (WeeklyOneSign(date)) { - localDate = localDate.with(TemporalAdjusters.next(DayOfWeek.MONDAY)); - } + // 涓嬪懆鍛ㄤ竴 + localDate = localDate.with(TemporalAdjusters.next(DayOfWeek.MONDAY)); + // 灏哃ocalDate杞崲涓篋ate Date monday = DateLocalDate(localDate); // 鍒欏皢瀹冭皟鏁村埌鏈懆鍛ㄤ竴 - Date nowMonday = timeFrontSevenYesterday(monday); - - - return nowMonday; + return timeFrontSevenYesterday(monday); } //鑾峰彇褰撳墠鏃ユ湡鎵�鍦ㄧ殑鍛ㄤ竴鍙婂懆鏃ユ椂闂� @@ -281,85 +294,85 @@ return WeeklySeven(afterSevenYesterday); } + //鑾峰彇鍛ㄤ竴鍒板懆鏈� + public static List<Date> WeeklyDays(Date date){ + Date nowMonday = WeeklyMonday(date); + List<Date> dateList = new ArrayList<>(); + dateList.add(nowMonday); + for (int i = 1; i<7 ; i++){ + dateList.add(timeYesterdayN(nowMonday,i)); + } + return dateList; + } + + //鑾峰彇鍛ㄤ竴鍒板懆鏈� + public static List<Date> WeeklyListDays(List<Date> dates){ + Date date = dates.get(0); + Date nowMonday = WeeklyMonday(date); + List<Date> dateList = new ArrayList<>(); + dateList.add(nowMonday); + for (int i = 1; i<7 ; i++){ + dateList.add(timeYesterdayN(nowMonday,i)); + } + return dateList; + } + public static void main(String[] args) { Date now = new Date(); - //鏈懆 - List<Date> dateList = WeeklyMondayAndSundayNow(now); - for (Date date : dateList){ - System.out.println("------------------------------"); - System.out.println(date); - } - //涓婂懆 - List<Date> dateList1 = WeeklyMondayAndSundayFront(now); - for (Date date : dateList1){ - System.out.println("------------------------------"); - System.out.println(date); - } - //涓嬪懆 - List<Date> dateList2 = WeeklyMondayAndSundayAfter(now); - for (Date date : dateList2){ - System.out.println("------------------------------"); - System.out.println(date); - } + int weeklyNowMonth = WeeklyNowMonthDay(now); + System.out.println("褰撳墠鏃ユ湡鏄 " + weeklyNowMonth + " 鍛�"); + + LocalDate startDate1 = LocalDate.of(2024, 2, 29); + int weeklyNowMonth1 = WeeklyNowMonthDay(DateLocalDate(startDate1)); + System.out.println("褰撳墠鏃ユ湡鏄 " + weeklyNowMonth1 + " 鍛�"); + + LocalDate startDate2 = LocalDate.of(2024, 3, 5); + int weeklyNowMonth2 = WeeklyNowMonthDay(DateLocalDate(startDate2)); + System.out.println("褰撳墠鏃ユ湡鏄 " + weeklyNowMonth2 + " 鍛�"); + + LocalDate startDate3 = LocalDate.of(2024, 3, 10); + int weeklyNowMonth3 = WeeklyNowMonthDay(DateLocalDate(startDate3)); + System.out.println("褰撳墠鏃ユ湡鏄 " + weeklyNowMonth3 + " 鍛�"); + + LocalDate startDate4 = LocalDate.of(2024, 3, 31); + int weeklyNowMonth4 = WeeklyNowMonthDay(DateLocalDate(startDate4)); + System.out.println("褰撳墠鏃ユ湡鏄 " + weeklyNowMonth4 + " 鍛�"); + + LocalDate startDate5 = LocalDate.of(2024, 4, 1); + int weeklyNowMonth5 = WeeklyNowMonthDay(DateLocalDate(startDate5)); + System.out.println("褰撳墠鏃ユ湡鏄 " + weeklyNowMonth5 + " 鍛�"); + + LocalDate startDate6 = LocalDate.of(2024, 4, 7); + int weeklyNowMonth6 = WeeklyNowMonthDay(DateLocalDate(startDate6)); + System.out.println("褰撳墠鏃ユ湡鏄 " + weeklyNowMonth6 + " 鍛�"); } // public static void main(String[] args) { -//// Date now = new Date(); -// LocalDate startDate = LocalDate.of(2024, 3, 27); // 鍋囪寮�濮嬫棩鏈熸槸2022骞�9鏈�5鏃ワ紝鍛ㄤ竴 -// Date now = Date.from(startDate.atStartOfDay(ZoneId.systemDefault()).toInstant()); -// System.out.println("褰撳墠鏃ユ湡 " + now); -// -// int weeklyNowMonth = WeeklyNowMonth(now); -// System.out.println("褰撳墠鏃ユ湡鏄綋鏈堢 " + weeklyNowMonth + " 鍛�"); -// -// //鑾峰彇褰撳墠鍛ㄥ懆涓� -// Date nowMonday = WeeklyMonday(now); -// System.out.println("褰撳墠鏃ユ湡鏄綋鍛ㄥ懆涓�锛�"+nowMonday); -// -// Date daySeven = timeFrontSevenYesterday(nowMonday); -// System.out.println("褰撳墠鏃ユ湡鏄笂鍛ㄥ懆涓� " + daySeven); -// -// System.out.println("--------------------------------------------"); -// -// WeeklySeven(nowMonday); -// System.out.println("--------------------------------------------"); -// -// WeeklySeven(daySeven); -// System.out.println("--------------------------------------------"); -// -// } - -// public static void main(String[] args) { -//// Date now = new Date(); -//// System.out.println("褰撳墠鏃ユ湡 " + now); -// -//// int weeklyNowMonth = WeeklyNowMonth(now); -//// System.out.println("褰撳墠鏃ユ湡鏄綋鏈堢 " + weeklyNowMonth + " 鍛�"); -//// -//// Date date = timeYesterday(now); -//// System.out.println("褰撳墠鏃ユ湡鍓嶄竴澶╂棩鏈� " + date); -//// -//// weeklyNowMonth = WeeklyNowMonth(date); -//// System.out.println("褰撳墠鏃ユ湡鍓嶄竴澶╂槸褰撴湀绗� " + weeklyNowMonth + " 鍛�"); -//// -////// System.out.println("--------------------------------------------"); -////// WeeklySix(now); -////// WeeklySix(date); -//// System.out.println("--------------------------------------------"); -//// -//// WeeklySeven(now); -//// WeeklySeven(date); -//// System.out.println("--------------------------------------------"); -//// -//// Date daySeven = timeFrontSevenYesterday(now); -//// System.out.println("褰撳墠鏃ユ湡鍓嶄竷澶╂棩鏈� " + daySeven); -//// -//// -//// System.out.println("--------------------------------------------"); -//// WeeklySeven(now); -//// WeeklySeven(daySeven); -//// System.out.println("--------------------------------------------"); -// +// Date now = new Date(); +// //鏈懆 +// List<Date> dateList = WeeklyMondayAndSundayNow(now); +// for (Date date : dateList){ +// System.out.println("------------------------------"); +// System.out.println(date); +// } +// //涓婂懆 +// List<Date> dateList1 = WeeklyMondayAndSundayFront(now); +// for (Date date : dateList1){ +// System.out.println("------------------------------"); +// System.out.println(date); +// } +// //涓嬪懆 +// List<Date> dateList2 = WeeklyMondayAndSundayAfter(now); +// for (Date date : dateList2){ +// System.out.println("------------------------------"); +// System.out.println(date); +// } +// //鍛� +// List<Date> dateList3 = WeeklyDays(now); +// for (Date date : dateList3){ +// System.out.println("------------------------------"); +// System.out.println(date); +// } // } } -- Gitblit v1.9.1