Files
mixtape/zero.Core/Utils/DateRange.cs
T

40 lines
803 B
C#
Raw Normal View History

2022-02-12 02:40:18 +01:00
namespace zero.Utils;
2021-11-23 12:35:18 +01:00
public class DateRange
{
public DateTimeOffset? From { get; set; }
public DateTimeOffset? To { get; set; }
2022-02-12 02:40:18 +01:00
2021-11-23 12:35:18 +01:00
public bool IsWithin(DateTimeOffset date)
{
if (From.HasValue && date < From)
{
return false;
}
if (To.HasValue && date > To)
{
return false;
}
return true;
}
2022-02-12 02:40:18 +01:00
public string Format(string format)
{
if (!From.HasValue && !To.HasValue)
{
return null;
}
if (!From.HasValue && To.HasValue)
{
2022-05-03 11:02:16 +02:00
return "≤ " + To.Value.ToLocalTime().ToString(format);
2022-02-12 02:40:18 +01:00
}
if (From.HasValue && !To.HasValue)
{
2022-05-03 11:02:16 +02:00
return "≥ " + From.Value.ToLocalTime().ToString(format);
2022-02-12 02:40:18 +01:00
}
2022-05-03 11:02:16 +02:00
return From.Value.ToLocalTime().ToString(format) + " " + To.Value.ToLocalTime().ToString(format);
2022-02-12 02:40:18 +01:00
}
2021-11-23 12:35:18 +01:00
}