fix 时间区间判断

This commit is contained in:
2024-01-18 15:43:45 +08:00
parent 9440f4cf58
commit ae946a0bcc

View File

@@ -10,6 +10,8 @@ public static class TimePeriodExtensions
{
public static bool IsPresent1(this TimePeriod period, DateTime dateTime)
{
return period.IsPresent2(dateTime);
int hour = dateTime.Hour;
int minute = dateTime.Minute;
IReadOnlyList<int> hourPeriod = GetHourPeriod();
@@ -57,4 +59,29 @@ public static class TimePeriodExtensions
return list;
}
}
public static bool IsPresent2(this TimePeriod period, DateTime dateTime)
{
var start = DateTime.Now;
var end = DateTime.Now;
if (period.IsCrossDay())
{
//第二天
if (dateTime.Hour >= 0)
{
start = DateTime.Today.AddDays(-1).Add(period.Start.Value.ToTimeSpan());
end = DateTime.Today.Add(period.End.Value.ToTimeSpan());
}
}
else
{
start = DateTime.Today.Add(period.Start.Value.ToTimeSpan());
end = DateTime.Today.Add(period.End.Value.ToTimeSpan());
}
return dateTime >= start && dateTime <= end;
}
}