mirror of
https://codeup.aliyun.com/67c68d4e484ca2f0a13ac3c1/ydc/jsowell-charger-web.git
synced 2026-07-09 00:18:07 +08:00
判断目标时间是否在优惠时间段内
This commit is contained in:
@@ -1135,10 +1135,39 @@ public class DateUtils extends org.apache.commons.lang3.time.DateUtils {
|
|||||||
return lastDayOfMonth.format(formatter);
|
return lastDayOfMonth.format(formatter);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void main(String[] args) {
|
/**
|
||||||
String dateString = "2024-09-20 13:35:56";
|
* 判断目标时间是否在优惠时间段内
|
||||||
long minutesPassed = minutesSince(dateString);
|
* @param startStr 开始时间(HH:mm)
|
||||||
System.out.println(minutesPassed);
|
* @param endStr 结束时间(HH:mm)
|
||||||
|
* @param targetStr 目标时间(HH:mm:ss)
|
||||||
|
* @return 是否在优惠时段
|
||||||
|
*/
|
||||||
|
public static boolean isInDiscountPeriod(String startStr, String endStr, String targetStr) {
|
||||||
|
LocalTime start = LocalTime.parse(startStr);
|
||||||
|
LocalTime end = LocalTime.parse(endStr);
|
||||||
|
LocalTime target = LocalTime.parse(targetStr);
|
||||||
|
return isInDiscountPeriod(start, end, target);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 判断目标时间是否在优惠时间段内
|
||||||
|
* @param start 开始时间(HH:mm)
|
||||||
|
* @param end 结束时间(HH:mm)
|
||||||
|
* @param target 目标时间(HH:mm:ss)
|
||||||
|
* @return 是否在优惠时段
|
||||||
|
*/
|
||||||
|
public static boolean isInDiscountPeriod(LocalTime start, LocalTime end, LocalTime target) {
|
||||||
|
// 开始时间等于结束时间即判定为全天
|
||||||
|
if (start.equals(end)) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
if (start.isAfter(end)) {
|
||||||
|
// 跨天判断逻辑
|
||||||
|
return !target.isBefore(start) || target.isBefore(end);
|
||||||
|
} else {
|
||||||
|
// 普通时段判断逻辑
|
||||||
|
return !target.isBefore(start) && target.isBefore(end);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user