🐛 Fix chat notification and listing members
This commit is contained in:
		@@ -181,19 +181,12 @@ public class NotificationService
 | 
			
		||||
    {
 | 
			
		||||
        if (save)
 | 
			
		||||
        {
 | 
			
		||||
            // Create new notification objects for each account instead of reusing
 | 
			
		||||
            var notifications = accounts.Select(x => new Notification
 | 
			
		||||
            var notifications = accounts.Select(x =>
 | 
			
		||||
            {
 | 
			
		||||
                Topic = notification.Topic,
 | 
			
		||||
                Title = notification.Title,
 | 
			
		||||
                Subtitle = notification.Subtitle,
 | 
			
		||||
                Content = notification.Content,
 | 
			
		||||
                Meta = notification.Meta != null ? new Dictionary<string, object>(notification.Meta) : null,
 | 
			
		||||
                Priority = notification.Priority,
 | 
			
		||||
                Account = x,
 | 
			
		||||
                AccountId = x.Id
 | 
			
		||||
                notification.Account = x;
 | 
			
		||||
                notification.AccountId = x.Id;
 | 
			
		||||
                return notification;
 | 
			
		||||
            }).ToList();
 | 
			
		||||
 | 
			
		||||
            await _db.BulkInsertAsync(notifications);
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
@@ -201,20 +194,12 @@ public class NotificationService
 | 
			
		||||
        var subscribers = await _db.NotificationPushSubscriptions
 | 
			
		||||
            .Where(s => accountsId.Contains(s.AccountId))
 | 
			
		||||
            .ToListAsync();
 | 
			
		||||
 | 
			
		||||
        var tasks = (from subscriber in subscribers
 | 
			
		||||
            let notificationCopy = new Notification
 | 
			
		||||
            {
 | 
			
		||||
                Id = notification.Id,
 | 
			
		||||
                Topic = notification.Topic,
 | 
			
		||||
                Title = notification.Title,
 | 
			
		||||
                Subtitle = notification.Subtitle,
 | 
			
		||||
                Content = notification.Content,
 | 
			
		||||
                Meta = notification.Meta != null ? new Dictionary<string, object>(notification.Meta) : null,
 | 
			
		||||
                Priority = notification.Priority,
 | 
			
		||||
                AccountId = subscriber.AccountId
 | 
			
		||||
            }
 | 
			
		||||
            select _PushSingleNotification(notificationCopy, subscriber)).ToList();
 | 
			
		||||
        var tasks = new List<Task>();
 | 
			
		||||
        foreach (var subscriber in subscribers)
 | 
			
		||||
        {
 | 
			
		||||
            notification.AccountId = subscriber.AccountId;
 | 
			
		||||
            tasks.Add(_PushSingleNotification(notification, subscriber));
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        await Task.WhenAll(tasks);
 | 
			
		||||
    }
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user