diff --git a/JiraTimeBotForm/TaskTime/TaskTimeDiscoverer.cs b/JiraTimeBotForm/TaskTime/TaskTimeDiscoverer.cs index 49d4e07..5fc2219 100644 --- a/JiraTimeBotForm/TaskTime/TaskTimeDiscoverer.cs +++ b/JiraTimeBotForm/TaskTime/TaskTimeDiscoverer.cs @@ -55,12 +55,17 @@ namespace JiraTimeBotForm.TaskTime } } + int remainMinutes = settings.MinuterPerWorkDay; + float fifteenMinIntervals = settings.MinuterPerWorkDay / 15; + float intervalPerCommit = fifteenMinIntervals / workTasks.Count; + //Нам нужно раскидать 480 минут в день. var workTimeItems = new List(); foreach (var taskGroup in workTasks.GroupBy(f=>f)) { - var minutesPerTime = settings.MinuterPerWorkDay / workTasks.Count; - var minutesForCurrentTaskGroup = minutesPerTime * taskGroup.Count(); + int currentIntervalsCount = (int)(intervalPerCommit * taskGroup.Count()); + var minutesForCurrentTaskGroup = currentIntervalsCount * 15; + remainMinutes = remainMinutes - minutesForCurrentTaskGroup; workTimeItems.Add(new TaskTimeItem { @@ -70,6 +75,11 @@ namespace JiraTimeBotForm.TaskTime }); } + if (workTimeItems.Any()) + { + workTimeItems.First().Time += TimeSpan.FromMinutes(remainMinutes); + } + return workTimeItems; } }