using System.ComponentModel.DataAnnotations;

namespace DD.Persistence.Models;

/// <summary>
/// Модель параметра
/// </summary>
public class ParameterDto
{
    /// <summary>
    /// Дискриминатор системы
    /// </summary>
    public Guid DiscriminatorId { get; set; }

    /// <summary>
    /// Id параметра
    /// </summary>
    [Range(0, int.MaxValue, ErrorMessage = "Id параметра не может быть меньше 0")]
    public int ParameterId { get; set; }

    /// <summary>
    /// Значение параметра в виде строки
    /// </summary>
    [StringLength(256, MinimumLength = 1, ErrorMessage = "Допустимая длина значения параметра от 1 до 256 символов")]
    public required string Value { get; set; }

    /// <summary>
    /// Временная отметка
    /// </summary>
    public DateTimeOffset Timestamp { get; set; }
}