From 04dba6a17f836b5fbdf0eedff8a129c6785fd8a2 Mon Sep 17 00:00:00 2001 From: k94314517 <8417338+k94314517@user.noreply.gitee.com> Date: 星期五, 28 二月 2025 18:25:00 +0800 Subject: [PATCH] 111 --- server/services/src/main/java/com/doumee/core/utils/DateUtil.java | 96 +++++++++++++++++++++++++++++++++++++++++++---- 1 files changed, 87 insertions(+), 9 deletions(-) diff --git a/server/services/src/main/java/com/doumee/core/utils/DateUtil.java b/server/services/src/main/java/com/doumee/core/utils/DateUtil.java index c101128..ca3082d 100644 --- a/server/services/src/main/java/com/doumee/core/utils/DateUtil.java +++ b/server/services/src/main/java/com/doumee/core/utils/DateUtil.java @@ -10,6 +10,9 @@ import java.text.DateFormatSymbols; import java.text.ParseException; import java.text.SimpleDateFormat; +import java.time.LocalDateTime; +import java.time.ZoneId; +import java.time.ZonedDateTime; import java.util.Date; import java.util.*; @@ -39,7 +42,18 @@ public DateUtil() { } + public static Date getDateFromLocalDateTime( LocalDateTime localDateTime) { + try { + ZoneId zoneId = ZoneId.systemDefault(); // 鑾峰彇绯荤粺榛樿鏃跺尯 + ZonedDateTime zonedDateTime = localDateTime.atZone(zoneId); // 杞崲涓哄甫鏃跺尯鐨勬棩鏈熸椂闂� + Date date = Date.from(zonedDateTime.toInstant()); // 杞崲涓篋ate + return date; + }catch (Exception e){ + } + return null; + + } public static Date StringToDate2(String DATE) { if(StringUtils.isBlank(DATE)){ return null; @@ -52,6 +66,32 @@ exception.printStackTrace(); } return dt1; + } + + + + public static Date StringToDateFormat(String DATE,String format) { + if(StringUtils.isBlank(DATE)){ + return null; + } + DateFormat df = new SimpleDateFormat(format); + Date dt1 = null; + try { + dt1 = df.parse(DATE); + } catch (Exception exception) { + exception.printStackTrace(); + } + return dt1; + } + + + public static String getXDaysAfter(Date date, Integer days){ + Timestamp currentTimestamp = new Timestamp(date.getTime()); + Calendar calendar = Calendar.getInstance(); + calendar.setTime(currentTimestamp); + calendar.add(Calendar.DAY_OF_YEAR, days); // 鍦ㄥ綋鍓嶆椂闂村熀纭�涓婃坊鍔犳寚瀹氱殑澶╂暟 + SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd"); + return formatter.format(calendar.getTime()); } /** @@ -299,7 +339,7 @@ nowDate = sdfShort.format(date); return nowDate; } catch (Exception e) { - throw e; + return null; } } @@ -2140,19 +2180,19 @@ /** * 寰楀嚭涓や釜鏃ユ湡涔嬮棿鐨勯棿闅斿ぉ鏁� * - * @param strFromDate + * @param smallDate * 鏍煎紡涓簓yyy-MM-dd - * @param strToDate + * @param bigDate * 鏍煎紡涓簓yyy-MM-dd * @return int */ - public static long getBetweenDays(String strFromDate, String strToDate) { + public static long getBetweenDays(String smallDate, String bigDate) { long m_intervalday = 0;// 鍒濆鍖栨椂闂撮棿闅旂殑鍊间负0 // 浣跨敤鐨勬椂闂存牸寮忎负yyyy-MM-dd SimpleDateFormat m_simpledateformat = new SimpleDateFormat("yyyy-MM-dd"); try { - Date fromDate = m_simpledateformat.parse(strFromDate); - Date toDate = m_simpledateformat.parse(strToDate); + Date fromDate = m_simpledateformat.parse(smallDate); + Date toDate = m_simpledateformat.parse(bigDate); m_intervalday = toDate.getTime() - fromDate.getTime();// 璁$畻鎵�寰椾负寰鏁� m_intervalday = m_intervalday / 1000 / 60 / 60 / 24;// 璁$畻鎵�寰楃殑澶╂暟 @@ -2309,7 +2349,7 @@ } public static Date getDateFromString2(String strDate) { if (StringUtils.isEmpty(strDate)) { - return new Date(System.currentTimeMillis()); + return null; } try { return sdfLongTimePlus.parse(strDate); @@ -2748,7 +2788,7 @@ public static void main(String[] args) { try { - System.out.println(RandomStringUtils.randomNumeric(3)); + System.out.println(DateUtil.getCurrDate()); } catch (Exception ex) { ex.printStackTrace(); } @@ -3003,6 +3043,44 @@ return cal.getTime(); } + + /** + * 2涓棩鏈熶箣闂寸浉宸垎閽熸暟 + * @param begin + * @param end + * @return + */ + public static Integer betweenMin(Date begin, Date end) { + if(begin ==null ){ + return 0; + } + long createTime =begin.getTime();//鑾峰彇鍒涘缓鏃堕棿鐨勬椂闂存埑 + long currentTime =Objects.isNull(end)?System.currentTimeMillis():end.getTime();//鑾峰彇褰撳墠鏃堕棿鐨勬椂闂存埑 + long diff=(currentTime-createTime)/1000/60;//鑾峰彇涓や釜鏃堕棿鐩稿樊鐨勫垎閽� + return (int)diff + 1 ; + } + + public static Integer between(Date begin, Date end) { + if(begin ==null ){ + return 0; + } + long createTime =begin.getTime();//鑾峰彇鍒涘缓鏃堕棿鐨勬椂闂存埑 + long currentTime =Objects.isNull(end)?System.currentTimeMillis():end.getTime();//鑾峰彇褰撳墠鏃堕棿鐨勬椂闂存埑 + long diff=(currentTime-createTime)/1000/60;//鑾峰彇涓や釜鏃堕棿鐩稿樊鐨勫垎閽� + return (int)diff; + } + + public static Integer betweenSeconds(Date begin, Date end) { + if(begin ==null ){ + return 0; + } + long createTime =begin.getTime();//鑾峰彇鍒涘缓鏃堕棿鐨勬椂闂存埑 + long currentTime =Objects.isNull(end)?System.currentTimeMillis():end.getTime();//鑾峰彇褰撳墠鏃堕棿鐨勬椂闂存埑 + long diff=(currentTime-createTime)/1000;//鑾峰彇涓や釜鏃堕棿鐩稿樊鐨勫垎閽� + return (int)diff; + } + + /** * 璁$畻鑰楁椂 * @param start @@ -3022,4 +3100,4 @@ return consuming.toString(); } -} \ No newline at end of file +} -- Gitblit v1.9.3