From b8c69ce26b3bb9462b1e0578f9e119c9772f9126 Mon Sep 17 00:00:00 2001 From: cmg <527198563@qq.com> Date: 星期一, 27 五月 2024 14:33:22 +0800 Subject: [PATCH] 0527芙艾合并更新 --- src/main/java/com/hx/util/DateUtil.java | 74 +++++++++++++++++++++++++++++++----- 1 files changed, 63 insertions(+), 11 deletions(-) diff --git a/src/main/java/com/hx/util/DateUtil.java b/src/main/java/com/hx/util/DateUtil.java index f54bcda..33b8d66 100644 --- a/src/main/java/com/hx/util/DateUtil.java +++ b/src/main/java/com/hx/util/DateUtil.java @@ -549,6 +549,7 @@ calendar.set(Calendar.HOUR_OF_DAY, 0); calendar.set(Calendar.MINUTE, 0); calendar.set(Calendar.SECOND, 0); + calendar.set(Calendar.MILLISECOND,0); return calendar.getTime(); } @@ -572,9 +573,25 @@ /** * 鑾峰彇褰撳墠鏈堢殑缁撴潫鏃堕棿 * @param date 鐐瑰墠鏃堕棿 - * @return 杩斿洖鏃堕棿 鏍煎紡yyyy-MM-dd 23:59:59 + * @return 杩斿洖鏃堕棿 鏍煎紡yyyy-MM-dd 23:59:59999 */ public static Date getMonthEnd(Date date) { + Calendar calendar = Calendar.getInstance(); + calendar.setTime(date); + calendar.set(Calendar.DAY_OF_MONTH, calendar.getActualMaximum(Calendar.DAY_OF_MONTH)); + calendar.set(Calendar.HOUR_OF_DAY, 23); + calendar.set(Calendar.MINUTE, 59); + calendar.set(Calendar.SECOND, 59); + calendar.set(Calendar.MILLISECOND,999); + return calendar.getTime(); + } + + /** + * 鑾峰彇褰撳墠鏈堢殑缁撴潫鏃堕棿锛屾病鏈夋绉� + * @param date 鐐瑰墠鏃堕棿 + * @return 杩斿洖鏃堕棿 鏍煎紡yyyy-MM-dd 23:59:59 + */ + public static Date getMonthEndNoMillisecond(Date date) { Calendar calendar = Calendar.getInstance(); calendar.setTime(date); calendar.set(Calendar.DAY_OF_MONTH, calendar.getActualMaximum(Calendar.DAY_OF_MONTH)); @@ -613,15 +630,33 @@ calendar.set(Calendar.HOUR_OF_DAY, 0); calendar.set(Calendar.MINUTE, 0); calendar.set(Calendar.SECOND, 0); + calendar.set(Calendar.MILLISECOND,0); return calendar.getTime(); } /** * 鑾峰彇褰撳墠骞寸殑缁撴潫鏃堕棿 * @param time 鏃堕棿 - * @return 杩斿洖鏃堕棿 鏍煎紡yyyy-MM-dd 00:00:00 + * @return 杩斿洖鏃堕棿 鏍煎紡yyyy-MM-dd 23:59:59999 */ public static Date getYearEnd(Date time) { + Calendar calendar = Calendar.getInstance(); + calendar.setTime(time); + calendar.set(Calendar.MONTH, 11); + calendar.set(Calendar.DAY_OF_MONTH, calendar.getActualMaximum(Calendar.DATE)); + calendar.set(Calendar.HOUR_OF_DAY, 23); + calendar.set(Calendar.MINUTE, 59); + calendar.set(Calendar.SECOND, 59); + calendar.set(Calendar.MILLISECOND,999); + return calendar.getTime(); + } + + /** + * 鑾峰彇褰撳墠骞寸殑缁撴潫鏃堕棿锛屾病鏈夋绉� + * @param time 鏃堕棿 + * @return 杩斿洖鏃堕棿 鏍煎紡yyyy-MM-dd 23:59:59 + */ + public static Date getYearEndNoMillisecond(Date time) { Calendar calendar = Calendar.getInstance(); calendar.setTime(time); calendar.set(Calendar.MONTH, 11); @@ -668,13 +703,27 @@ calendar.set(Calendar.HOUR_OF_DAY, 0); calendar.set(Calendar.MINUTE, 0); calendar.set(Calendar.SECOND, 0); + calendar.set(Calendar.MILLISECOND, 0); return calendar.getTime(); } /**杩欏ぉ鐨勬渶鍚庢椂闂� - * 鏃ユ湡2000-01-01鍙�2000-01-01 23:59:59 + * 鏃ユ湡2000-01-01鍙�2000-01-01 23:59:59999 */ public static Date dayToEndDate(Date date) { + Calendar calendar = Calendar.getInstance(); + calendar.setTime(date); + calendar.set(Calendar.HOUR_OF_DAY, 23); + calendar.set(Calendar.MINUTE, 59); + calendar.set(Calendar.SECOND, 59); + calendar.set(Calendar.MILLISECOND, 999); + return calendar.getTime(); + } + + /**杩欏ぉ鐨勬渶鍚庢椂闂达紝娌℃湁姣 + * 鏃ユ湡2000-01-01鍙�2000-01-01 23:59:59 + */ + public static Date dayToEndDateNoMillisecond(Date date) { Calendar calendar = Calendar.getInstance(); calendar.setTime(date); calendar.set(Calendar.HOUR_OF_DAY, 23); @@ -816,16 +865,19 @@ /** * 鑾峰彇鏌愬ぉ缁撴潫绉掓暟 - * @param startTime + * @param dateTime 鏃ユ湡 + * @param lateSecond 寤惰繜绉掓暟 * @return */ - public long todayEndSecond(Date startTime) { - if(startTime == null){ - startTime = new Date(); + public static long todayEndSecond(Date dateTime, Long lateSecond) { + if(dateTime == null){ + dateTime = new Date(); } - Date endTime = DateUtil.dayToEndDate(startTime); - //澶氬姞10绉� - return differSecond(startTime, endTime) + 10L; + if(lateSecond == null){ + lateSecond = 0L; + } + Date endTime = DateUtil.dayToEndDate(dateTime); + return differSecond(dateTime, endTime) + lateSecond; } /** @@ -834,7 +886,7 @@ * @param endTime 缁撴潫鏃堕棿 * @return */ - public long differSecond(Date startTime, Date endTime) { + public static long differSecond(Date startTime, Date endTime) { if(startTime == null || endTime == null){ return 0L; } -- Gitblit v1.8.0