feat(bll,dal,common): в common - DateResolver - проверка даты на текущие сутки относительно часового пояса МСК. Dal - EsppScheduleTransformService - рассчет NextRun с учетом выходных дней

This commit is contained in:
Mikhail Trubnikov
2024-09-18 16:32:45 +10:00
parent 9987626478
commit 60c0ba9ec8
24 changed files with 181 additions and 29 deletions

View File

@@ -0,0 +1,34 @@
namespace PARR.Common
{
/// <summary>
/// Даты и часовые пояса
/// </summary>
public static class DateResolver
{
/// <summary>
/// Это текущий день относительно часовой зоны МСК? Да - текущий, нет - следующий день.
/// </summary>
/// <param name="date">Дата ЮТС</param>
/// <returns></returns>
public static bool IsCurrentDayRelativeMskTime(DateTimeOffset date)
{
return IsCurrentDayRelativeMskTime(date.Hour);
}
/// <summary>
/// Это текущий день относительно часовой зоны МСК? Да - текущий, нет - следующий день.
/// </summary>
/// <param name="hour">Час</param>
/// <returns></returns>
public static bool IsCurrentDayRelativeMskTime(int hour)
{
//Так как в базе всё храним в UTC то время с 21 часа уже соответствует следующими суткам в календаре Москвы
if (hour >= 21)
return false;
return true;
}
}
}