using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;

namespace PARR.AIHITLoader.Models
{
    public class EK
    {
        [Column("IP_АДРЕС")]
        public string? IP { get; set; }
        [Column("МЕТКА")]
        public string? Metka { get; set; }
        [Column("АКТИВЕН")]
        public string? IsActive { get; set; }
        [Column("ВАЖНЫЙ_ЭК")]
        public string? IsImportant { get; set; }
        [Column("ВРЕМЯ_СОЗДАНИЯ")]
        public DateTime? CreateTime { get; set; }
        [Column("ДОПОЛНИТЕЛЬНАЯ_ИНФОРМАЦИЯ")]
        public string? AdditionalInfo { get; set; }
        [Column("ЗОНА_ОТВЕТСТВЕННОСТИ")]
        public string? ResponseArea { get; set; }
        [Column("КАТЕГОРИЯ_ЭК")]
        public string? EKCategory { get; set; }
        [Column("КОД_ПОИСКА_ЭК")]
        public string? EKFindCode { get; set; }
        [Column("КОД_ПРОДУКТА")]
        public string? ProductCode { get; set; }
        [Column("КОД_УСЛУГИ")]
        public string? ServiceCode { get; set; }
        [Column("КРАТКОЕ_НАИМЕНОВАНИЕ")]
        public string? ShortName { get; set; }
        [Column("ОТВЕТСТВЕННЫЙ_ЗА_ЭК")]
        public string? ResponsibleByEK { get; set; }
        [Column("ПЛАНОВОЕ_ВРЕМЯ_ВОССТАНОВЛЕНИЯ")]
        public DateTime? PlannedTimeToRepair { get; set; }
        [Column("ПОДКАТЕГОРИЯ_ЭК")]
        public string? EKSubCategory { get; set; }
        [Column("ПОЛНОЕ_НАИМЕНОВАНИЕ")]
        public string? FullName { get; set; }
        [Column("ПРЕДПИСАНИЕ")]
        public string? Prescription { get; set; }
        [Column("ПРЕДПРИЯТИЕ")]
        public string? Company { get; set; }
        [Column("РАБОЧАЯ_ГР_ОТВ_ЗА_ЭК")]
        public string? WorkGroup { get; set; }
        [Column("РАСПОЛОЖЕНИЕ")]
        public string? Location { get; set; }
        [Column("РЕВИЗОР_ЭК")]
        public string? EKRevizor { get; set; }
        [Column("РЕГИСТРАТОР_ЭК")]
        public string? EKRegister { get; set; }
        [Column("СЕТЕВОЕ_ИМЯ")]
        public string? NetworkName { get; set; }
        [Column("СТАТУС")]
        public string? Status { get; set; }
        [Column("ТИП_ЭК")]
        public string? EKType { get; set; }
        [Column("ФАКТИЧЕСКОЕ_ЗАВЕРШЕНИЕ_ЭКСПЛУАТАЦИИ")]
        public DateTime? EndExplotationDate { get; set; }
        [Column("ФАКТИЧЕСКОЕ_НАЧАЛО_ЭКСПЛУАТАЦИИ")]
        public DateTime? StartExplotationDate { get; set; }
        [Column("ЦЕЛЕВОЕ_ВРЕМЯ_ВОССТАНОВЛЕНИЯ")]
        public string? TargetRepairTime { get; set; }
        [Column("SYSMODTIME")]
        public DateTime? SysModTime { get; set; }
        [Column("SYSMODUSER")]
        public string? SysModUser { get; set; }
        [Column("НОВЫЙ_КОД_ПОИСКА")]
        public string? NewEKFindCode { get; set; }
        [Column("СТАРЫЙ_КОД_ПОИСКА")]
        public string? OldEKFindCode { get; set; }
        [Column("НАПРАВЛЕНИЕ_ЦТС_ЦК")]
        public string? CTSDirection { get; set; }
        [Key]
        [Column("ID")]
        public int? AIHID { get; set; }
        [Column("недостоверные_данные")]
        public char? IsUnreliableData { get; set; }
        [Column("РГ_смены")]
        public string? ShiftWorkGroup { get; set; }
        [Column("Клиентское_ПО")]
        public string? ClientSoftware { get; set; }
        [Column("Клиентская_ОС")]
        public string? ClientOS { get; set; }
        [Column("Тип СУБД")]
        public string? DBType { get; set; }
        [Column("Тип сервера приложений")]
        public string? APPType { get; set; }
        [Column("Тип сервера ЦК БС")]
        public string? CKBSServerType { get; set; }
        [Column("Тип сервера ИБ")]
        public string? IBServerType { get; set; }
        [Column("Тип сервера инфраструктуры")]
        public string? InfrastructureServerType { get; set; }
        [Column("Тип сервера мониторинга")]
        public string? MonitoringServerType { get; set; }
        [Column("ОС")]
        public string? OSType { get; set; }
        [Column("ЗО_РГ")]
        public string? WorkGroupResponseArea { get; set; }
    }
}
