diff --git a/Marco.Pms.Services/Service/DirectoryService.cs b/Marco.Pms.Services/Service/DirectoryService.cs index 7da15ea..e2c07ac 100644 --- a/Marco.Pms.Services/Service/DirectoryService.cs +++ b/Marco.Pms.Services/Service/DirectoryService.cs @@ -1026,7 +1026,7 @@ namespace Marco.Pms.Services.Service Body = $"New Contact \"{contact.Name}\" is created by {name} in your bucket" }; - await _firebase.SendContactAsync(contactVM.BucketIds, notification, tenantId); + await _firebase.SendContactAsync(contact.Id, contactVM.BucketIds, notification, tenantId); }); @@ -1496,7 +1496,7 @@ namespace Marco.Pms.Services.Service Body = $"Contact \"{contact.Name}\" is updated by {name} in your bucket" }; - await _firebase.SendContactAsync(contactVM.BucketIds, notification, tenantId); + await _firebase.SendContactAsync(updateContact.Id, contactVM.BucketIds, notification, tenantId); } }); @@ -1591,7 +1591,7 @@ namespace Marco.Pms.Services.Service }; } - await _firebase.SendContactAsync(bucketIds, notification, tenantId); + await _firebase.SendContactAsync(contact.Id, bucketIds, notification, tenantId); } }); @@ -2074,7 +2074,7 @@ namespace Marco.Pms.Services.Service Body = $"New note added at Contact \"{contact.Name}\" by {name} in your bucket" }; - await _firebase.SendContactNoteAsync(bucketIds, notification, tenantId); + await _firebase.SendContactNoteAsync(contact.Id, bucketIds, notification, tenantId); }); @@ -2207,7 +2207,7 @@ namespace Marco.Pms.Services.Service Body = $"Note updated at Contact \"{contact.Name}\" by {name} in your bucket" }; - await _firebase.SendContactNoteAsync(bucketIds, notification, tenantId); + await _firebase.SendContactNoteAsync(contact.Id, bucketIds, notification, tenantId); }); @@ -2346,7 +2346,7 @@ namespace Marco.Pms.Services.Service Body = $"Note deleted at Contact \"{contact.Name}\" by {name} in your bucket" }; } - await _firebase.SendContactNoteAsync(bucketIds, notification, tenantId); + await _firebase.SendContactNoteAsync(contact.Id, bucketIds, notification, tenantId); }); diff --git a/Marco.Pms.Services/Service/FirebaseService.cs b/Marco.Pms.Services/Service/FirebaseService.cs index b17a665..c031c70 100644 --- a/Marco.Pms.Services/Service/FirebaseService.cs +++ b/Marco.Pms.Services/Service/FirebaseService.cs @@ -1624,7 +1624,7 @@ namespace Marco.Pms.Services.Service } // Directory Controller - public async Task SendContactAsync(List bucketIds, Notification notification, Guid tenantId) + public async Task SendContactAsync(Guid contactId, List bucketIds, Notification notification, Guid tenantId) { await using var _context = await _dbContextFactory.CreateDbContextAsync(); using var scope = _serviceScopeFactory.CreateScope(); @@ -1660,14 +1660,15 @@ namespace Marco.Pms.Services.Service var data = new Dictionary() { - { "Keyword", "Contact_Modified" } + { "Keyword", "Contact_Modified" }, + { "ContactId", contactId.ToString() } }; var registrationTokensForNotification = await _context.FCMTokenMappings.Where(ft => assignedEmployeeIds.Contains(ft.EmployeeId) && ft.ExpiredAt >= DateTime.UtcNow).Select(ft => ft.FcmToken).ToListAsync(); await SendMessageToMultipleDevicesWithDataAsync(registrationTokensForNotification, notification, data); } - public async Task SendContactNoteAsync(List bucketIds, Notification notification, Guid tenantId) + public async Task SendContactNoteAsync(Guid contactId, List bucketIds, Notification notification, Guid tenantId) { await using var _context = await _dbContextFactory.CreateDbContextAsync(); using var scope = _serviceScopeFactory.CreateScope(); @@ -1703,7 +1704,8 @@ namespace Marco.Pms.Services.Service var data = new Dictionary() { - { "Keyword", "Contact_Note_Modified" } + { "Keyword", "Contact_Note_Modified" }, + { "ContactId", contactId.ToString() } }; var registrationTokensForNotification = await _context.FCMTokenMappings.Where(ft => assignedEmployeeIds.Contains(ft.EmployeeId) && ft.ExpiredAt >= DateTime.UtcNow).Select(ft => ft.FcmToken).ToListAsync(); diff --git a/Marco.Pms.Services/Service/ServiceInterfaces/IFirebaseService.cs b/Marco.Pms.Services/Service/ServiceInterfaces/IFirebaseService.cs index 1f57ef0..64aaa9a 100644 --- a/Marco.Pms.Services/Service/ServiceInterfaces/IFirebaseService.cs +++ b/Marco.Pms.Services/Service/ServiceInterfaces/IFirebaseService.cs @@ -24,8 +24,8 @@ namespace Marco.Pms.Services.Service.ServiceInterfaces Task SendModifyProjectMessageAsync(Project project, string name, bool IsExist, Guid tenantId); Task SendExpenseMessageAsync(Expenses expenses, string name, Guid tenantId); - Task SendContactAsync(List bucketIds, Notification notification, Guid tenantId); - Task SendContactNoteAsync(List bucketIds, Notification notification, Guid tenantId); + Task SendContactAsync(Guid contactId, List bucketIds, Notification notification, Guid tenantId); + Task SendContactNoteAsync(Guid contactId, List bucketIds, Notification notification, Guid tenantId); Task SendBucketAsync(Guid bucketId, Notification notification, Guid tenantId); Task SendAssignBucketAsync(List employeeIds, Notification notification, Guid tenantId);