From d6e5d5a71112fb1f0a7361485e80692cc03bc4c3 Mon Sep 17 00:00:00 2001 From: jiangqs <jiangqs> Date: 星期二, 13 六月 2023 19:01:48 +0800 Subject: [PATCH] 优惠券管理 --- ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/DateUtils.java | 45 ++++++++++++++++++++++++++++++++++++--------- 1 files changed, 36 insertions(+), 9 deletions(-) diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/DateUtils.java b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/DateUtils.java index e948ad4..65c71f5 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/DateUtils.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/DateUtils.java @@ -1,20 +1,17 @@ package com.ruoyi.common.core.utils; +import org.apache.commons.lang3.time.DateFormatUtils; + import java.lang.management.ManagementFactory; import java.text.ParseException; import java.text.SimpleDateFormat; -import java.time.LocalDate; -import java.time.LocalDateTime; -import java.time.LocalTime; -import java.time.ZoneId; -import java.time.ZonedDateTime; +import java.time.*; import java.util.Date; -import org.apache.commons.lang3.time.DateFormatUtils; /** * 时间工具类 * - * @author ruoyi + * @author jqs */ public class DateUtils extends org.apache.commons.lang3.time.DateUtils { @@ -32,6 +29,14 @@ "yyyy-MM-dd", "yyyy-MM-dd HH:mm:ss", "yyyy-MM-dd HH:mm", "yyyy-MM", "yyyy/MM/dd", "yyyy/MM/dd HH:mm:ss", "yyyy/MM/dd HH:mm", "yyyy/MM", "yyyy.MM.dd", "yyyy.MM.dd HH:mm:ss", "yyyy.MM.dd HH:mm", "yyyy.MM"}; + + public static void main(String[] args) throws ParseException { + SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + Date start = sdf.parse("2021-10-01 10:00:00"); + Date end = sdf.parse("2021-10-01 12:30:00"); + String time = formatDuration(start,end); + System.out.println(time); + } /** * 获取当前Date型日期 @@ -70,7 +75,7 @@ public static final String dateTime(final Date date) { - return parseDateToStr(YYYY_MM_DD, date); + return parseDateToStr(YYYY_MM_DD_HH_MM_SS, date); } public static final String parseDateToStr(final String format, final Date date) @@ -139,7 +144,7 @@ /** * 计算时间差 * - * @param endTime 最后时间 + * @param endDate 最后时间 * @param startTime 开始时间 * @return 时间差(天/小时/分钟) */ @@ -180,4 +185,26 @@ ZonedDateTime zdt = localDateTime.atZone(ZoneId.systemDefault()); return Date.from(zdt.toInstant()); } + + public static String formatDuration(Date start, Date end) { + long duration = end.getTime() - start.getTime(); + long days = duration / (24 * 60 * 60 * 1000); + long hours = (duration % (24 * 60 * 60 * 1000)) / (60 * 60 * 1000); + long minutes = (duration % (60 * 60 * 1000)) / (60 * 1000); + long seconds = (duration % (60 * 1000)) / 1000; + StringBuilder sb = new StringBuilder(); + if (days > 0) { + sb.append(days).append("天"); + } + if (hours > 0) { + sb.append(hours).append("小时"); + } + if (minutes > 0) { + sb.append(minutes).append("分"); + } + if (seconds > 0) { + sb.append(seconds).append("秒"); + } + return sb.toString(); + } } -- Gitblit v1.7.1