From f6ba3e15355e22767e69f8fc14ae22523f8db8dc Mon Sep 17 00:00:00 2001 From: 44323 <443237572@qq.com> Date: 星期三, 22 十一月 2023 19:33:58 +0800 Subject: [PATCH] Merge branch 'master' of http://120.76.84.145:10101/gitblit/r/java/PlayPai --- cloud-server-course/src/main/java/com/dsh/course/util/DateTimeHelper.java | 58 +++++++++++++++++++++++++++++++++++++++++++++++----------- 1 files changed, 47 insertions(+), 11 deletions(-) diff --git a/cloud-server-course/src/main/java/com/dsh/course/util/DateTimeHelper.java b/cloud-server-course/src/main/java/com/dsh/course/util/DateTimeHelper.java index ea6f35b..32d87b8 100644 --- a/cloud-server-course/src/main/java/com/dsh/course/util/DateTimeHelper.java +++ b/cloud-server-course/src/main/java/com/dsh/course/util/DateTimeHelper.java @@ -2,9 +2,8 @@ import java.text.ParseException; import java.text.SimpleDateFormat; -import java.time.Instant; -import java.time.LocalDateTime; -import java.time.ZoneId; +import java.time.*; +import java.time.temporal.TemporalAdjusters; import java.util.*; @@ -244,7 +243,6 @@ try { return parseToDate(formatDateTimetoString(getSystemDate(), fmtstr)); } catch (Exception e) { - // TODO Auto-generated catch block e.printStackTrace(); return getSystemDate(); } @@ -1439,6 +1437,24 @@ return weekDays[w]; } + + /** + * 获取当前日期是星期几<br> + * Obtain the day of the week for the current date. + * @param dt + * @return 当前日期是星期几 + */ + public static int getWeekNumOfDate(Date dt) { + Integer[] weekDays = {7, 1, 2, 3, 4, 5, 6}; // 将周一的数值设为2,依次递增表示周二到周日 + Calendar cal = Calendar.getInstance(); + cal.setTime(dt); + int w = cal.get(Calendar.DAY_OF_WEEK) - 1; + if (w < 0) { + w = 6; // 如果为负数,将其设为6,表示周日 + } + return weekDays[w]; + } + /** * 获取今天时间 2017-11-20 00:00:00 */ @@ -1757,13 +1773,33 @@ return list; } - /*public static void main(String[] args) throws ParseException { - List<Date> allTheDateOftheMonth = getAllTheDateOftheMonth(new Date()); - Date date = allTheDateOftheMonth.get(11); - System.out.println(date.toLocaleString()); - int i = daysBetween(new Date(), date); - System.out.println(i); - }*/ + public static Date getTodayTime(){ + // 获取当天的开始时间(0点) + LocalDate today = LocalDate.now(); + LocalDateTime startOfDay = LocalDateTime.of(today, LocalTime.MIN); + return Date.from(startOfDay.atZone(ZoneId.systemDefault()).toInstant()); + } + + public static Date getWeekOfLastDay(){ + // 获取本周的最后一天的时间(23点59分59秒) + LocalDate today = LocalDate.now(); + LocalDate lastDayOfWeek = today.with(TemporalAdjusters.nextOrSame(DayOfWeek.SUNDAY)); + LocalDateTime endOfDay = LocalDateTime.of(lastDayOfWeek, LocalTime.MAX); + return Date.from(endOfDay.atZone(ZoneId.systemDefault()).toInstant()); + } + + /** + * 获取有效期数的结束时间 + * @param startTime 开始时间 + * @param validPeriod 有效期数 + * @return 结束时间 + */ + public static Date getExpirationDate(Date startTime, int validPeriod){ + Calendar calendar = Calendar.getInstance(); + calendar.setTime(startTime); + calendar.add(Calendar.DAY_OF_MONTH, validPeriod); + return calendar.getTime(); + } } -- Gitblit v1.7.1