forked from ddrilling/AsbCloudServer
Степанов Дмитрий Александрович
4b2d4f1bba
1. Адаптировал EmailService под сервис транспорта отправки уведомлений по Email 2. Заменил использование EmailService на NotificationService 3. Поправил тесты 4. Создал запрос для отправки уведомлений
81 lines
1.7 KiB
C#
81 lines
1.7 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>
|
|
/// Email получателя уведомления
|
|
/// </summary>
|
|
public string? UserEmail { 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
|
|
/// 1 - Email
|
|
/// </summary>
|
|
public int IdTransportType { get; set; }
|
|
|
|
/// <summary>
|
|
/// DTO категории уведомления
|
|
/// </summary>
|
|
public NotificationCategoryDto NotificationCategory { get; set; } = null!;
|
|
} |