DD.WellWorkover.Cloud/AsbCloudApp/Repositories/INotificationRepository.cs
Степанов Дмитрий Александрович 635e4cd7fc Правки после ревью
1. Поправил обновление отправленных уведомлений.
2. Поправил ConnectionManager. Переименовал сервис, удалил абстракцию, так как предполагается только одна реализация.
3. При маппинге из dto в сущность для уведомления добавил игнорирование категории и пользователя.
4. Изменил жизенный цикл зависимости для отправителя.
5. Добавил в репозиторий метод для обновления коллекции уведомлений.
6. Поправил Hub, Id пользователя можно получать внутри хаба.
7. Поправил NotificationRequest + метод BuildQuery в NotificationRepository
2023-07-14 11:40:57 +05:00

34 lines
1.1 KiB
C#

using System.Collections.Generic;
using System.Threading;
using System.Threading.Tasks;
using AsbCloudApp.Data;
using AsbCloudApp.Requests;
using AsbCloudApp.Services;
namespace AsbCloudApp.Repositories;
/// <summary>
/// Репозиторий для уведомлений
/// </summary>
public interface INotificationRepository : ICrudRepository<NotificationDto>
{
/// <summary>
/// Обновление изменённых уведомлений
/// </summary>
/// <param name="notifications"></param>
/// <param name="cancellationToken"></param>
/// <returns></returns>
Task<int> UpdateRangeAsync(IEnumerable<NotificationDto> notifications,
CancellationToken cancellationToken);
/// <summary>
/// Получение уведомлений по параметрам
/// </summary>
/// <param name="idUser"></param>
/// <param name="request"></param>
/// <param name="cancellationToken"></param>
/// <returns></returns>
Task<PaginationContainer<NotificationDto>> GetNotificationsAsync(int idUser,
NotificationRequest request,
CancellationToken cancellationToken);
}