mirror of
https://github.com/Sea-Haven-Industries/shoc-backend.git
synced 2026-09-30 10:43:13 +00:00
20 lines
708 B
C#
20 lines
708 B
C#
namespace SeaHaven.Services.Helpers
|
|
{
|
|
public static class WorkOrderOperationalWeek
|
|
{
|
|
public static DateOnly GetMondayOfWeek(DateOnly date)
|
|
{
|
|
var daysFromMonday = ((int)date.DayOfWeek + 6) % 7;
|
|
return date.AddDays(-daysFromMonday);
|
|
}
|
|
|
|
public static DateOnly GetPreviousOperationalWeekStart(DateTime utcNow)
|
|
=> GetMondayOfWeek(DateOnly.FromDateTime(utcNow)).AddDays(-7);
|
|
|
|
public static DateOnly GetOperationalWeekEnd(DateOnly weekStartMonday)
|
|
=> weekStartMonday.AddDays(4);
|
|
|
|
public static string BuildWeekCorrelationId(DateOnly sourceWeekStart)
|
|
=> $"week:{sourceWeekStart:yyyy-MM-dd}";
|
|
}
|
|
}
|