DD.WellWorkover.Cloud/AsbCloudApp/Data/MessageDto.cs

48 lines
1.5 KiB
C#

using System;
using System.ComponentModel.DataAnnotations;
namespace AsbCloudApp.Data
{
/// <summary>
/// Сообщение для frontend
/// </summary>
public class MessageDto : IId
{
/// <inheritdoc/>
[Required]
public int Id { get; set; }
/// <summary>
/// дата появления события
/// </summary>
[Required]
public DateTimeOffset DateTime { get; set; }
/// <summary>
/// категория события
/// </summary>
[Required]
[Range(1, int.MaxValue, ErrorMessage = "Id категории не может быть ниже 1")]
public int CategoryId { get; set; }
/// <summary>
/// глубина забоя, при котором событие возникло
/// </summary>
[Required]
[Range(-1, int.MaxValue, ErrorMessage = "Id скважины не может быть ниже 1")]
public double WellDepth { get; set; }
/// <summary>
/// пользователь панели оператора
/// </summary>
public string? User { get; set; }
/// <summary>
/// текст сообщения
/// </summary>
[Required]
[StringLength(400, MinimumLength = 1, ErrorMessage = "Допустимая длина текста сообщения от 1 до 400 символов")]
public string Message { get; set; } = string.Empty;
}
}