diff --git a/FabApprovalWorkerService/Workers/ApprovalNotificationWorker.cs b/FabApprovalWorkerService/Workers/ApprovalNotificationWorker.cs index 139b35f..277ea4c 100644 --- a/FabApprovalWorkerService/Workers/ApprovalNotificationWorker.cs +++ b/FabApprovalWorkerService/Workers/ApprovalNotificationWorker.cs @@ -58,6 +58,8 @@ public class ApprovalNotificationWorker : IJob { IEnumerable approvals = await _approvalService.GetActiveApprovalsWithNotificationOlderThanFiveDays(); + HashSet issueAndUserIds = new(); + foreach (Approval approval in approvals) { bool isEcn = false; bool isCa = false; @@ -113,7 +115,8 @@ public class ApprovalNotificationWorker : IJob { if ((isEcn || isCa || isMrb || isPcrb) && !string.IsNullOrWhiteSpace(title) && - !string.IsNullOrWhiteSpace(url)) { + !string.IsNullOrWhiteSpace(url) && + !issueAndUserIds.Contains($"{approval.IssueID}{approval.UserID}")) { User user = await _userService.GetUserById(approval.UserID); @@ -139,6 +142,8 @@ public class ApprovalNotificationWorker : IJob { approval.NotifyDate = DateTime.Now; await _approvalService.UpdateApproval(approval); + + issueAndUserIds.Add($"{approval.IssueID}{approval.UserID}"); } } } catch (Exception ex) {