using PARR.Domain.Enums; using PARR.EsppSync; using PARR.EsppSync.Attributes; namespace PARR.EsppScheduleSync.Domain { internal class EsppObjectSchedule : IEsppObject { //Все поля описаны в документации по роботам: http://gitlab.dvgd.oao.rzd/devptk/parr/parr_api/-/wikis/EsppRobots public RobotsEnum Robot => RobotsEnum.ScheduleOrder; public required string TemplateName { get; set; } /// /// ИД расписания /// Не сраваниваем ЕСПП ИД, потому что У НАС РЕАЛЬНЫЙ ЕСПП ИД И ЕСПП ИД В БД МОГУ РАСХОДИТЬСЯ!!! УЖАССС!!! /// [SkipComparison] public string Code { get; set; } = string.Empty; [SkipComparison] public string ScheduleName { get; set; } = string.Empty; public bool IsActive { get; set; } [SkipComparison] public string ResponseArea { get; set; } = string.Empty; [SkipComparison] public string WorkGroup { get; set; } = string.Empty; /// /// Тип повторения: Регулярно, Ежегодно... /// public EsppSchTypeScheduleEnum TypeSchedule { get; set; } /// /// Интервал времени: Ежедневно, 1 00:00:00 /// public string Interval { get; set; } = string.Empty; /// /// Еженедельно: Каждый понедельник /// public string Dayofweek { get; set; } = string.Empty; /// /// Ежемесячно: Каждое 23 /// public string Dayofmonth { get; set; } = string.Empty; /// /// Ежемесячно-2: Каждый Первый /// public string Md1 { get; set; } = string.Empty; /// /// Ежемесячно-2: Каждый Понедельник /// public string Md2 { get; set; } = string.Empty; /// /// Ежегодно: Каждый Январь /// public string Annualm { get; set; } = string.Empty; /// /// Ежегодно: Каждый 12 /// public string Annualday { get; set; } = string.Empty; /// /// Ежегодно-2: Каждый Первый /// public string An1 { get; set; } = string.Empty; /// /// Ежегодно-2: Каждый Понедельник /// public string An2 { get; set; } = string.Empty; /// /// Ежегодно-2: Каждый Января /// public string An3 { get; set; } = string.Empty; /// /// Тип исключения: Нет исключений /// public string TypeV60calendar { get; set; } = string.Empty; /// /// Следующее срабатывание: 16/10/23 17:00:00 /// public required string Scheduled { get; set; } /// /// В каком часовом поясе: Greenwich/Universal /// public required string Timezone { get; set; } /// /// Тип прекращения, Отсутствует дата завершения: Выбран radio button forever /// public required string TerminationType { get; set; } /// /// Завершение после: 0 /// [SkipComparison] public string CompleteAfter { get; set; } = string.Empty; /// /// Рабочий график /// public string V60calendar { get; set; } = string.Empty; /// /// Время создания наряда (чч:мм:сс) /// public string BasisTime { get; set; } } }