feat(api,dal): статистика распределения. Список рабочих и выходных формируется в зависимости от времени МСК

This commit is contained in:
Mikhail Trubnikov
2026-01-28 14:40:40 +10:00
parent e60fbfdc3a
commit 76bd6aa111
9 changed files with 209 additions and 26 deletions

View File

@@ -19,6 +19,11 @@
/// </summary>
public int IsDeactivatedAllCount => ItemsList?.Sum(t => t.IsDeactivatedCount) ?? 0;
/// <summary>
/// Шаблонов назначенных на выходной день
/// </summary>
public int TemplatesInWeekendAllCount => ItemsList?.Sum(t => t.TemplatesInWeekendCount) ?? 0;
public List<StatDistributorItemResponse>? ItemsList { get; set; }
}
@@ -29,16 +34,19 @@
public int AllCount => Statistics?.Sum(t => t.AllCount) ?? 0;
public int IsActivatedCount => Statistics?.Sum(t => t.IsActivatedCount) ?? 0;
public int IsDeactivatedCount => Statistics?.Sum(t => t.IsDeactivatedCount) ?? 0;
public int TemplatesInWeekendCount => Statistics?.Sum(t => t.TemplatesInWeekendCount) ?? 0;
public List<StatTemplateDistributorDateStat>? Statistics { get; set; }
}
public class StatTemplateDistributorDateStat
{
public DateOnly Date { get; set; }
public DateTimeOffset Date { get; set; }
public bool IsWorkDay { get; set; }
public int AllCount { get; set; }
public int IsActivatedCount { get; set; }
public int IsDeactivatedCount { get; set; }
public int TemplatesInWeekendCount => !IsWorkDay && Templates != null ? Templates.Count : 0;
public List<StatTempleteDistribItem>? Templates { get; set; }
}