Compare commits
5 Commits
cf0b6907f7
...
5ec2f8119e
| Author | SHA1 | Date | |
|---|---|---|---|
| 5ec2f8119e | |||
| 4cb7797314 | |||
| 9b66273d20 | |||
| b904fa8b2d | |||
| 92a5195183 |
@@ -24,6 +24,7 @@ public class JiraService
|
|||||||
+ $"AND updated >= \"{lastFetchTime.ToString("yyyy-MM-dd HH:mm")}\" "
|
+ $"AND updated >= \"{lastFetchTime.ToString("yyyy-MM-dd HH:mm")}\" "
|
||||||
+ $"&fields={_configs.AppSettings.Jira.SearchFields}"
|
+ $"&fields={_configs.AppSettings.Jira.SearchFields}"
|
||||||
+ $"&startAt={startAt}&maxResults=50";
|
+ $"&startAt={startAt}&maxResults=50";
|
||||||
|
Log.Verbose("Jira API Request URI: {uri}", uri);
|
||||||
var request = new HttpRequestMessage(HttpMethod.Get, uri);
|
var request = new HttpRequestMessage(HttpMethod.Get, uri);
|
||||||
request.Headers.Add("Accept", "application/json");
|
request.Headers.Add("Accept", "application/json");
|
||||||
request.Headers.Add("Authorization", $"Bearer {_configs.AppSettings.Jira.AccessToken}");
|
request.Headers.Add("Authorization", $"Bearer {_configs.AppSettings.Jira.AccessToken}");
|
||||||
|
|||||||
@@ -1,10 +1,13 @@
|
|||||||
using TriliumMind.Data.Entities;
|
using System;
|
||||||
|
using TriliumMind.Data.Entities;
|
||||||
using TriliumMind.Models;
|
using TriliumMind.Models;
|
||||||
|
|
||||||
namespace TriliumMind.Services.Mappers;
|
namespace TriliumMind.Services.Mappers;
|
||||||
|
|
||||||
public static class JiraIssueMapper
|
public static class JiraIssueMapper
|
||||||
{
|
{
|
||||||
|
private static readonly char[] _specialCharacters = ['(', '/'];
|
||||||
|
|
||||||
public static JiraIssue ToEntity(this Issue issue)
|
public static JiraIssue ToEntity(this Issue issue)
|
||||||
{
|
{
|
||||||
return new JiraIssue
|
return new JiraIssue
|
||||||
@@ -13,9 +16,9 @@ public static class JiraIssueMapper
|
|||||||
Summary = issue.fields.summary ?? string.Empty,
|
Summary = issue.fields.summary ?? string.Empty,
|
||||||
Parent = issue.fields.parent?.key ?? issue.fields.customfield_10808,
|
Parent = issue.fields.parent?.key ?? issue.fields.customfield_10808,
|
||||||
Type = issue.fields.issuetype?.name ?? string.Empty,
|
Type = issue.fields.issuetype?.name ?? string.Empty,
|
||||||
Status = issue.fields.status?.description ?? string.Empty,
|
Status = issue.fields.status?.name ?? string.Empty,
|
||||||
Assignee = issue.fields.assignee?.displayName ?? string.Empty,
|
Assignee = CleanDisplayName(issue.fields.assignee?.displayName),
|
||||||
Manager = issue.fields.reporter?.displayName ?? string.Empty,
|
Manager = CleanDisplayName(issue.fields.reporter?.displayName),
|
||||||
Due = issue.fields.duedate?.ToUniversalTime() ?? DateTimeOffset.MinValue.ToUniversalTime(),
|
Due = issue.fields.duedate?.ToUniversalTime() ?? DateTimeOffset.MinValue.ToUniversalTime(),
|
||||||
Updated = issue.fields.UpdatedAt.ToUniversalTime(),
|
Updated = issue.fields.UpdatedAt.ToUniversalTime(),
|
||||||
Published = DateTimeOffset.MinValue.ToUniversalTime(),
|
Published = DateTimeOffset.MinValue.ToUniversalTime(),
|
||||||
@@ -23,4 +26,16 @@ public static class JiraIssueMapper
|
|||||||
NeedNotify = 0
|
NeedNotify = 0
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private static string CleanDisplayName(string? displayName)
|
||||||
|
{
|
||||||
|
if (string.IsNullOrWhiteSpace(displayName))
|
||||||
|
return string.Empty;
|
||||||
|
|
||||||
|
var specialCharIndex = displayName.IndexOfAny(_specialCharacters);
|
||||||
|
if (specialCharIndex >= 0)
|
||||||
|
displayName = displayName[..specialCharIndex];
|
||||||
|
|
||||||
|
return displayName.Trim();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
@@ -108,20 +108,6 @@ public class AppDbWorker : BackgroundService
|
|||||||
{
|
{
|
||||||
_log.Error(ex, "Fatal error in JiraDbWorker");
|
_log.Error(ex, "Fatal error in JiraDbWorker");
|
||||||
}
|
}
|
||||||
|
|
||||||
//await foreach (var issue in _issueChannel.Reader.ReadAllAsync(stoppingToken))
|
|
||||||
//{
|
|
||||||
// try
|
|
||||||
// {
|
|
||||||
// var jiraIssue = issue.ToEntity();
|
|
||||||
// await _db.UpsertJiraIssueAsync(jiraIssue, stoppingToken);
|
|
||||||
// _log.Debug("Processed Jira issue: {key}", issue.key);
|
|
||||||
// }
|
|
||||||
// catch (Exception ex)
|
|
||||||
// {
|
|
||||||
// _log.Error(ex, "Failed to process Jira issue: {key}", issue.key);
|
|
||||||
// }
|
|
||||||
//}
|
|
||||||
_log.Information("AppDbWorker stopped");
|
_log.Information("AppDbWorker stopped");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user