Compare commits

...

5 Commits

Author SHA1 Message Date
5ec2f8119e Revert "DB 서비스 사용 방식 변경"
This reverts commit 4cb7797314.
2025-12-12 10:20:12 +09:00
4cb7797314 DB 서비스 사용 방식 변경 2025-12-12 10:19:41 +09:00
9b66273d20 코드 정리 2025-12-12 10:19:23 +09:00
b904fa8b2d 이름 정리 기능 추가. 2025-12-12 10:19:00 +09:00
92a5195183 로그 추가 2025-12-12 10:18:43 +09:00
3 changed files with 20 additions and 18 deletions

View File

@@ -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}");

View File

@@ -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();
}
} }

View File

@@ -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");
} }
} }