Compare commits

...
1 Commits
Author SHA1 Message Date
Danil Kislov e26ef9d7f4 Исправил Сообщения 2019-09-13 11:02:46 +03:00
7 changed files with 43 additions and 44 deletions
+1 -1
View File
@@ -1 +1 @@
1.0.67 1.0.68
+2 -2
View File
@@ -61,7 +61,7 @@ namespace JiraTimeBot.Configuration
var errors = new List<string>(); var errors = new List<string>();
message = null; message = null;
if (settings.RoundToMinutes == default(int)) if (settings.RoundToMinutes == default)
{ {
errors.Add("Укажите округление времени, например, 10 (минут)"); errors.Add("Укажите округление времени, например, 10 (минут)");
} }
@@ -137,7 +137,7 @@ namespace JiraTimeBot.Configuration
File.WriteAllText(settingsPath, settingsString); File.WriteAllText(settingsPath, settingsString);
} }
private static string _settingsFileName = "settings.json"; private static readonly string _settingsFileName = "settings.json";
} }
public enum WorkType public enum WorkType
+4 -4
View File
@@ -42,7 +42,7 @@ namespace JiraTimeBot.JiraIntegration
} }
} }
public List<Issue> GetIssuesByJQL(string jql, Settings settings, DateTime? date = null, CancellationToken cancellationToken = default(CancellationToken)) public List<Issue> GetIssuesByJQL(string jql, Settings settings, DateTime? date = null, CancellationToken cancellationToken = default)
{ {
var jira = Jira.CreateRestClient(settings.JiraUrl, settings.JiraUserName, settings.JiraPassword); var jira = Jira.CreateRestClient(settings.JiraUrl, settings.JiraUserName, settings.JiraPassword);
date = date.GetValueOrDefault(DateTime.Now.Date); date = date.GetValueOrDefault(DateTime.Now.Date);
@@ -69,14 +69,14 @@ namespace JiraTimeBot.JiraIntegration
} }
} }
public List<Issue> GetWorkloggedIssuesByDate(Settings settings, DateTime? date = null, CancellationToken cancellationToken = default(CancellationToken)) public List<Issue> GetWorkloggedIssuesByDate(Settings settings, DateTime? date = null, CancellationToken cancellationToken = default)
{ {
date = date.GetValueOrDefault(DateTime.Now.Date); date = date.GetValueOrDefault(DateTime.Now.Date);
var jql = "issueFunction in workLogged(\"on %DATE% by '%USER%'\")"; var jql = "issueFunction in workLogged(\"on %DATE% by '%USER%'\")";
return GetIssuesByJQL(jql, settings, date, cancellationToken); return GetIssuesByJQL(jql, settings, date, cancellationToken);
} }
private void RemoveWorklogsAddedByUser(List<TaskTimeItem> taskTimeItems, Settings settings, DateTime? date = null, bool dummy = false, CancellationToken cancellationToken = default(CancellationToken)) private void RemoveWorklogsAddedByUser(List<TaskTimeItem> taskTimeItems, Settings settings, DateTime? date = null, bool dummy = false, CancellationToken cancellationToken = default)
{ {
var alreadyLoggedToday = GetWorkloggedIssuesByDate(settings, date); var alreadyLoggedToday = GetWorkloggedIssuesByDate(settings, date);
foreach (var issue in alreadyLoggedToday) foreach (var issue in alreadyLoggedToday)
@@ -100,7 +100,7 @@ namespace JiraTimeBot.JiraIntegration
} }
} }
public void SetTodayWorklog(List<TaskTimeItem> taskTimeItems, Settings settings, DateTime? date = null, bool dummy = false, bool addCommentsToWorklog = false, CancellationToken cancellationToken = default(CancellationToken)) public void SetTodayWorklog(List<TaskTimeItem> taskTimeItems, Settings settings, DateTime? date = null, bool dummy = false, bool addCommentsToWorklog = false, CancellationToken cancellationToken = default)
{ {
date = date.GetValueOrDefault(DateTime.Now.Date).Date; date = date.GetValueOrDefault(DateTime.Now.Date).Date;
var jira = Jira.CreateRestClient(settings.JiraUrl, settings.JiraUserName, settings.JiraPassword); var jira = Jira.CreateRestClient(settings.JiraUrl, settings.JiraUserName, settings.JiraPassword);
@@ -13,7 +13,7 @@ namespace JiraTimeBot.JiraIntegration
{ {
List<TaskTimeItem> GetDayWorklogs(DateTime date, List<TaskTimeItem> GetDayWorklogs(DateTime date,
Settings settings, Settings settings,
CancellationToken cancellationToken = default(CancellationToken)); CancellationToken cancellationToken = default);
} }
public class JiraHistory: IJiraHistory public class JiraHistory: IJiraHistory
@@ -27,7 +27,7 @@ namespace JiraTimeBot.JiraIntegration
public List<TaskTimeItem> GetDayWorklogs(DateTime date, public List<TaskTimeItem> GetDayWorklogs(DateTime date,
Settings settings, Settings settings,
CancellationToken cancellationToken = default(CancellationToken)) CancellationToken cancellationToken = default)
{ {
var tasks = _jiraApi.GetIssuesByJQL("worklogDate = \"%DATE%\" and worklogAuthor='%USER%'", settings, date, cancellationToken); var tasks = _jiraApi.GetIssuesByJQL("worklogDate = \"%DATE%\" and worklogAuthor='%USER%'", settings, date, cancellationToken);
List<TaskTimeItem> resultItems = new List<TaskTimeItem>(); List<TaskTimeItem> resultItems = new List<TaskTimeItem>();
@@ -35,7 +35,6 @@ namespace JiraTimeBot.JiraIntegration
{ {
var workLogs = issue.GetWorklogsAsync(cancellationToken).Result; var workLogs = issue.GetWorklogsAsync(cancellationToken).Result;
var user = settings.JiraUserName; var user = settings.JiraUserName;
//user = "Zoya.Aleksandridi";
var userWorklogs = workLogs.Where(w => var userWorklogs = workLogs.Where(w =>
w.StartDate.GetValueOrDefault().Date == date && w.Author.Equals(user, w.StartDate.GetValueOrDefault().Date == date && w.Author.Equals(user,
StringComparison.InvariantCultureIgnoreCase)).ToList(); StringComparison.InvariantCultureIgnoreCase)).ToList();
@@ -46,7 +45,7 @@ namespace JiraTimeBot.JiraIntegration
var firstWorklog = userWorklogs.First(); var firstWorklog = userWorklogs.First();
var description = string.Join("\r\n", userWorklogs.Select(f => f.Comment).Distinct()); var description = string.Join(Environment.NewLine, userWorklogs.Select(f => f.Comment).Distinct());
var totalTime = TimeSpan.FromSeconds(userWorklogs.Sum(f => f.TimeSpentInSeconds)); var totalTime = TimeSpan.FromSeconds(userWorklogs.Sum(f => f.TimeSpentInSeconds));
var startDate = firstWorklog?.CreateDate ?? date; var startDate = firstWorklog?.CreateDate ?? date;
var commits = userWorklogs.Sum(f => f.Comment.Count(c => c == '\n')); var commits = userWorklogs.Sum(f => f.Comment.Count(c => c == '\n'));
+1 -1
View File
@@ -79,7 +79,7 @@ namespace JiraTimeBot
mercurial = _mercurialProviders.JiraCommitEmulator; mercurial = _mercurialProviders.JiraCommitEmulator;
} }
List<TaskTimeItem> taskTimes = null; List<TaskTimeItem> taskTimes;
if (!(tasksProcessor is MeetingProcessor)) if (!(tasksProcessor is MeetingProcessor))
{ {
List<TaskTimeItem> commits = mercurial.GetMercurialLog(settings, realDate, cancellationToken); List<TaskTimeItem> commits = mercurial.GetMercurialLog(settings, realDate, cancellationToken);
+1 -1
View File
@@ -24,7 +24,7 @@ namespace JiraTimeBot.Mercurial
_technicalInfoSkipper = technicalInfoSkipper; _technicalInfoSkipper = technicalInfoSkipper;
} }
public List<TaskTimeItem> GetMercurialLog(Settings settings, DateTime? date = null, CancellationToken cancellationToken = default(CancellationToken)) public List<TaskTimeItem> GetMercurialLog(Settings settings, DateTime? date = null, CancellationToken cancellationToken = default)
{ {
if (string.IsNullOrEmpty(settings.RepositoryPath) || !Directory.Exists(settings.RepositoryPath)) if (string.IsNullOrEmpty(settings.RepositoryPath) || !Directory.Exists(settings.RepositoryPath))
{ {
+31 -31
View File
@@ -1,31 +1,31 @@
using System.Reflection; using System.Reflection;
using System.Runtime.InteropServices; using System.Runtime.InteropServices;
// General Information about an assembly is controlled through the following // General Information about an assembly is controlled through the following
// set of attributes. Change these attribute values to modify the information // set of attributes. Change these attribute values to modify the information
// associated with an assembly. // associated with an assembly.
[assembly: AssemblyTitle("JiraTimeBot")] [assembly: AssemblyTitle("JiraTimeBot")]
[assembly: AssemblyDescription("")] [assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")] [assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")] [assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("JiraTimeBot")] [assembly: AssemblyProduct("JiraTimeBot")]
[assembly: AssemblyCopyright("Copyright © 2019")] [assembly: AssemblyCopyright("Copyright © 2019")]
[assembly: AssemblyTrademark("")] [assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")] [assembly: AssemblyCulture("")]
// Setting ComVisible to false makes the types in this assembly not visible // Setting ComVisible to false makes the types in this assembly not visible
// to COM components. If you need to access a type in this assembly from // to COM components. If you need to access a type in this assembly from
// COM, set the ComVisible attribute to true on that type. // COM, set the ComVisible attribute to true on that type.
[assembly: ComVisible(false)] [assembly: ComVisible(false)]
// The following GUID is for the ID of the typelib if this project is exposed to COM // The following GUID is for the ID of the typelib if this project is exposed to COM
[assembly: Guid("f3b89316-c38c-4ce6-9d88-0b1373cfba1a")] [assembly: Guid("f3b89316-c38c-4ce6-9d88-0b1373cfba1a")]
// Version information for an assembly consists of the following four values: // Version information for an assembly consists of the following four values:
// //
// Major Version // Major Version
// Minor Version // Minor Version
// Build Number // Build Number
// Revision // Revision
// //
// You can specify all the values or you can default the Build and Revision Numbers // You can specify all the values or you can default the Build and Revision Numbers
// by using the '*' as shown below: // by using the '*' as shown below:
[assembly: AssemblyVersion("1.0.67")] [assembly: AssemblyVersion("1.0.68")]
[assembly: AssemblyFileVersion("1.0.67")] [assembly: AssemblyFileVersion("1.0.68")]
[assembly: AssemblyInformationalVersion("1.0.67")] [assembly: AssemblyInformationalVersion("1.0.68")]