feat(dal): DistributionPeriods
This commit is contained in:
@@ -15,14 +15,14 @@ namespace PARR.BLL.Services.Implementations
|
||||
var endPeriod = GetEndPeriodDate(startPeriod, distributionPeriod);
|
||||
|
||||
//не получилось сделать асинхронным
|
||||
var weekends = getWeekends.Invoke(startPeriod, endPeriod).ToList(); //.ToListAsync();
|
||||
var weekends = getWeekends.Invoke(startPeriod, endPeriod).ToList(); //.ToListAsync();
|
||||
|
||||
|
||||
//TODO: переделать метод получения рабочих дней, получать актуальные рабочие дни за период
|
||||
//не стали реализовывать сразу, так как повысится нагрузка на робота
|
||||
//TODO: метод получения рабочих дней, получать актуальные рабочие дни за период
|
||||
//не стали добавлять праздничные и выходные дни сразу, так как повысится нагрузка на робота
|
||||
// на следующий месяц будет много изменений
|
||||
//временно сделаем список руками рабочих дней
|
||||
var workDays = GetMockWorkDays(startPeriod, endPeriod);
|
||||
var workDays = GetDatesForPeriod(startPeriod, endPeriod);
|
||||
|
||||
workDays = workDays.Where(t => weekends.Any(x => x != t)).ToList();
|
||||
|
||||
@@ -36,7 +36,7 @@ namespace PARR.BLL.Services.Implementations
|
||||
/// <param name="startPeriod"></param>
|
||||
/// <param name="EndPeriod"></param>
|
||||
/// <returns></returns>
|
||||
private List<DateOnly> GetMockWorkDays(DateOnly startPeriod, DateOnly EndPeriod)
|
||||
private List<DateOnly> GetDatesForPeriod(DateOnly startPeriod, DateOnly EndPeriod)
|
||||
{
|
||||
var workDaysList = new List<DateOnly>();
|
||||
|
||||
@@ -44,9 +44,8 @@ namespace PARR.BLL.Services.Implementations
|
||||
while (currentDay <= EndPeriod)
|
||||
{
|
||||
// 29 дней, потому что в феврале 28, чтоб не париться, сделали так
|
||||
if (currentDay.Day < 29)
|
||||
workDaysList.Add(currentDay);
|
||||
|
||||
//if (currentDay.Day < 29) - не делаем, так как в таблице DistributionPeriods указали 28 дней
|
||||
workDaysList.Add(currentDay);
|
||||
|
||||
currentDay = currentDay.AddDays(1);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user