From e84d5413cd2583e3b5c077d9333da4b34c3d15e3 Mon Sep 17 00:00:00 2001 From: Danil Kislov Date: Fri, 15 Mar 2019 13:59:53 +0300 Subject: [PATCH] =?UTF-8?q?=D0=9A=D0=BE=D0=BC=D0=BC=D0=B8=D1=82=D1=8B=20?= =?UTF-8?q?=D0=BE=D1=82=D1=81=D0=BE=D1=80=D1=82=D0=B8=D1=80=D0=BE=D0=B2?= =?UTF-8?q?=D0=B0=D0=BD=D1=8B=20=D0=BF=D0=BE=20=D0=B2=D1=80=D0=B5=D0=BC?= =?UTF-8?q?=D0=B5=D0=BD=D0=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- JiraTimeBotForm/JiraIntegration/JiraApi.cs | 2 +- JiraTimeBotForm/TaskTime/TaskTimeDiscoverer.cs | 10 ++++++++-- JiraTimeBotForm/TaskTime/TaskTimeItem.cs | 3 +++ 3 files changed, 12 insertions(+), 3 deletions(-) diff --git a/JiraTimeBotForm/JiraIntegration/JiraApi.cs b/JiraTimeBotForm/JiraIntegration/JiraApi.cs index bf37a8c..599fe53 100644 --- a/JiraTimeBotForm/JiraIntegration/JiraApi.cs +++ b/JiraTimeBotForm/JiraIntegration/JiraApi.cs @@ -93,7 +93,7 @@ namespace JiraTimeBotForm.JiraIntegration { var timeSpentJira = $"{taskTimeItem.Time.TotalMinutes}m"; - var comment = _dummyComments.OrderBy(x => Guid.NewGuid()).FirstOrDefault(); + var comment = _dummyComments.ElementAt(new Random(DateTime.Now.Millisecond).Next(_dummyComments.Count)); if (addCommentsToWorklog) { comment = taskTimeItem.Description; diff --git a/JiraTimeBotForm/TaskTime/TaskTimeDiscoverer.cs b/JiraTimeBotForm/TaskTime/TaskTimeDiscoverer.cs index fcb71a1..f70aa73 100644 --- a/JiraTimeBotForm/TaskTime/TaskTimeDiscoverer.cs +++ b/JiraTimeBotForm/TaskTime/TaskTimeDiscoverer.cs @@ -72,6 +72,8 @@ namespace JiraTimeBotForm.TaskTime Description = commitMessage, Branch = changeset.Branch, Commits = 1, + StartTime = changeset.Timestamp, + EndTime = changeset.Timestamp }); _log?.Trace($" - Найден changeset: {changeset.Timestamp} - {changeset.Branch} - {changeset.AuthorEmailAddress} - {commitMessage}"); } @@ -91,8 +93,9 @@ namespace JiraTimeBotForm.TaskTime int currentTaskTime = (int)RoundTo(settings.MinuterPerWorkDay / totalCommitsCount * currentTaskCommits); remainMinutes = remainMinutes - currentTaskTime; + var orderedTasks = taskGroup.OrderBy(f => f.StartTime).ToArray(); StringBuilder sb = new StringBuilder(); - foreach (var task in taskGroup) + foreach (var task in orderedTasks) { sb.AppendLine($"- {task.Description}"); } @@ -102,7 +105,10 @@ namespace JiraTimeBotForm.TaskTime Branch = taskGroup.Key, Time = TimeSpan.FromMinutes(currentTaskTime), Commits = taskGroup.Count(), - Description = sb.ToString() + Description = sb.ToString(), + + StartTime = orderedTasks.First().StartTime, + EndTime = orderedTasks.Last().StartTime }; workTimeItems.Add(taskTimeItem); diff --git a/JiraTimeBotForm/TaskTime/TaskTimeItem.cs b/JiraTimeBotForm/TaskTime/TaskTimeItem.cs index 8e8ad77..9b48d1c 100644 --- a/JiraTimeBotForm/TaskTime/TaskTimeItem.cs +++ b/JiraTimeBotForm/TaskTime/TaskTimeItem.cs @@ -8,5 +8,8 @@ namespace JiraTimeBotForm.TaskTime public string Branch { get; set; } public TimeSpan Time { get; set; } public int Commits { get; set; } + + public DateTime StartTime { get; set; } + public DateTime EndTime { get; set; } } }