Merge branch 'master' of https://github.com/aeroclub-monster/JiraTimeBot
This commit is contained in:
Binary file not shown.
|
Before Width: | Height: | Size: 170 KiB |
@@ -62,24 +62,43 @@ namespace JiraTimeBotForm.TaskTime
|
|||||||
_log?.Trace($" - Найден changeset: {changeset.Timestamp} - {changeset.Branch} - {changeset.AuthorEmailAddress}");
|
_log?.Trace($" - Найден changeset: {changeset.Timestamp} - {changeset.Branch} - {changeset.AuthorEmailAddress}");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if (!workTasks.Any())
|
||||||
|
{
|
||||||
|
return new List<TaskTimeItem>();
|
||||||
|
}
|
||||||
|
|
||||||
|
int remainMinutes = settings.MinuterPerWorkDay;
|
||||||
|
|
||||||
//Нам нужно раскидать 480 минут в день.
|
//Нам нужно раскидать 480 минут в день.
|
||||||
foreach (var taskGroup in workTasks.GroupBy(f => f))
|
foreach (var taskGroup in workTasks.GroupBy(f => f))
|
||||||
{
|
{
|
||||||
var minutesPerTime = settings.MinuterPerWorkDay / workTasks.Count;
|
int currentTaskCommits = taskGroup.Count();
|
||||||
var minutesForCurrentTaskGroup = minutesPerTime * taskGroup.Count();
|
int currentTaskTime = (int)RoundTo15(settings.MinuterPerWorkDay / workTasks.Count * currentTaskCommits);
|
||||||
|
remainMinutes = remainMinutes - currentTaskTime;
|
||||||
|
|
||||||
var taskTimeItem = new TaskTimeItem
|
var taskTimeItem = new TaskTimeItem
|
||||||
{
|
{
|
||||||
Branch = taskGroup.Key,
|
Branch = taskGroup.Key,
|
||||||
Time = TimeSpan.FromMinutes(minutesForCurrentTaskGroup),
|
Time = TimeSpan.FromMinutes(currentTaskTime),
|
||||||
Commits = taskGroup.Count(),
|
Commits = taskGroup.Count(),
|
||||||
};
|
};
|
||||||
|
|
||||||
workTimeItems.Add(taskTimeItem);
|
workTimeItems.Add(taskTimeItem);
|
||||||
}
|
}
|
||||||
|
workTimeItems.First().Time += TimeSpan.FromMinutes(remainMinutes);
|
||||||
|
|
||||||
return workTimeItems;
|
return workTimeItems;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private decimal RoundTo15(decimal value, bool up = true)
|
||||||
|
{
|
||||||
|
if ((value % 15) == 0)
|
||||||
|
return value;
|
||||||
|
if (up)
|
||||||
|
return (value - (value % 15) + 15);
|
||||||
|
|
||||||
|
return (value - (value % 15));
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Generated
+1
-1
@@ -171,7 +171,7 @@
|
|||||||
// tmrStart
|
// tmrStart
|
||||||
//
|
//
|
||||||
this.tmrStart.Enabled = true;
|
this.tmrStart.Enabled = true;
|
||||||
this.tmrStart.Interval = 1000;
|
this.tmrStart.Interval = 1500;
|
||||||
this.tmrStart.Tick += new System.EventHandler(this.tmrStart_Tick);
|
this.tmrStart.Tick += new System.EventHandler(this.tmrStart_Tick);
|
||||||
//
|
//
|
||||||
// txtDummyMode
|
// txtDummyMode
|
||||||
|
|||||||
@@ -1 +1,7 @@
|
|||||||
# JiraTimeBot
|
# JiraTimeBot
|
||||||
|
Приложение для автоматического добавления Jira Worklog'ов исходя из количества коммитов в ветку.
|
||||||
|
|
||||||
|
# Предположения
|
||||||
|
- Предполагается что все Ваши репозитории находятся в одной папке (к которой вы указываете путь в настройках).
|
||||||
|
- Предполагается что ветки в JIRA имеют название эквивалентное имени бранча в Mercurial.
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user