DD.WellWorkover.Cloud/AsbCloudApp/Data/NotificationDto.cs
Степанов Дмитрий Александрович b1d3da5f80 Рефакториг после ревью
1. Обновил классы модели и dto уведомления.
2. Удалил лишние сервисы.
3. Накатил новую миграцию.
4. Поправил репозиторий.
5. Поправил сервис уведомлений.
2023-07-13 14:44:40 +05:00

75 lines
1.6 KiB
C#

using System;
namespace AsbCloudApp.Data;
/// <summary>
/// DTO уведомления
/// </summary>
public class NotificationDto : IId
{
/// <summary>
/// Id уведомления
/// </summary>
public int Id { get; set; }
/// <summary>
/// Id получателя уведомления
/// </summary>
public int IdUser { get; set; }
/// <summary>
/// Id категории уведомления
/// </summary>
public int IdNotificationCategory { get; set; }
/// <summary>
/// Заголовок уведомления
/// </summary>
public string Title { get; set; } = null!;
/// <summary>
/// Сообщение уведомления
/// </summary>
public string Message { get; set; } = null!;
/// <summary>
/// Дата отправки уведомления
/// </summary>
public DateTime? SentDate { get; set; }
/// <summary>
/// Дата прочтения уведомления
/// </summary>
public DateTime? ReadDate { get; set; }
/// <summary>
/// Состояние уведомления
/// 0 - Зарегистрировано,
/// 1 - Отправлено,
/// 2 - Прочитано
/// </summary>
public int IdState
{
get
{
if (SentDate is not null && ReadDate is not null)
return 2;
if (SentDate is not null)
return 1;
return 0;
}
}
/// <summary>
/// Id типа доставки уведомления
/// 0 - SignalR
/// </summary>
public int IdTransportType { get; set; }
/// <summary>
/// DTO категории уведомления
/// </summary>
public NotificationCategoryDto NotificationCategory { get; set; } = null!;
}