using System.ComponentModel.DataAnnotations;

namespace AsbCloudApp.Data.SAUB
{
    /// <summary>
    /// Описание шаблона события панели оператора
    /// </summary>
    public class EventDto : IId
    {
        /// <summary>
        /// id события
        /// </summary>
        
        public int Id { get; set; }

        /// <summary>
        /// шаблон текста сообщения
        /// </summary>
        public string Message { get; set; } = string.Empty;

        /// <summary>
        /// id категории события
        /// </summary>
        [Range(1, int.MaxValue, ErrorMessage = "Id категории события не может быть отрицательным")]
        public int IdCategory { get; set; }

        /// <summary>
        /// переменная сервера обмена информацией с полевым оборудованием
        /// </summary>
        public string Tag { get; set; } = string.Empty;
        
        /// <summary>
        /// тип определения наступления события
        /// </summary>
        [Range(1, int.MaxValue, ErrorMessage = "Id типа события не может быть отрицательным")]
        public int EventType { get; set; }

        /// <summary>
        /// флаг, следует ли воспроизводить звук при наступлении события
        /// </summary>
        public int IdSound { get; set; }
    }
}