using Microsoft.EntityFrameworkCore; using PARR.DAL.Models.Base; using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations.Schema; namespace PARR.DAL.Models { [Table("JobAutoControls")] [Index(nameof(ApplicationInWorkId), IsUnique = true)] public class JobAutoControl : IBase { [Key] public Guid Id { get; set; } public DateTimeOffset DateCreated { get; set; } public DateTimeOffset? DateModified { get; set; } public Guid ApplicationInWorkId { get; set; } [ForeignKey(nameof(ApplicationInWorkId))] public ApplicationsInWork? ApplicationsInWork { get; set; } /// /// Создавать новые РР (из настроке РР) /// public bool CreateNew { get; set; } /// /// Деактивировать не актуальные согласно ЭК (обратные статусы ЭК) /// public bool Deactivate { get; set; } /// /// Активировать РР после смены ЭК (согласно настройкам статусов ЭК) /// public bool Activate { get; set; } /// /// Состояние для активированных РР, шаблоны /// public bool OnTemplateIsActive { get; set; } /// /// Состояние для активированных РР, расписания /// public bool OnScheduleIsActive { get; set; } /// /// Состояние для деактивированных РР, шаблоны /// public bool OffTemplateIsActive { get; set; } /// /// Состояние для деактивированных РР, расписания /// public bool OffScheduleIsActive { get; set; } /// /// Список масок ЭК, или ЭК /// public ICollection JobEkMasks { get; set; } = new HashSet(); /// /// Список статусов ЭК для которых создавать/активировать шаблоны/расписания /// public ICollection JobAutoControlInEkStatuses { get; set; } = new HashSet(); } }