feat(dal): добавлены таблицы JobAutoControls, JobAutoCOntrolInEkStatuses, JobEkMasks. Сервисы.

This commit is contained in:
Mikhail Trubnikov
2024-09-09 10:08:07 +10:00
parent 2a774bc413
commit c74086412b
14 changed files with 3507 additions and 11 deletions

View File

@@ -0,0 +1,71 @@
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; }
/// <summary>
/// Создавать новые РР (из настроке РР)
/// </summary>
public bool CreateNew { get; set; }
/// <summary>
/// Деактивировать не актуальные согласно ЭК (обратные статусы ЭК)
/// </summary>
public bool Deactivate { get; set; }
/// <summary>
/// Активировать РР после смены ЭК (согласно настройкам статусов ЭК)
/// </summary>
public bool Activate { get; set; }
/// <summary>
/// Состояние для активированных РР, шаблоны
/// </summary>
public bool OnTemplateIsActive { get; set; }
/// <summary>
/// Состояние для активированных РР, расписания
/// </summary>
public bool OnScheduleIsActive { get; set; }
/// <summary>
/// Состояние для деактивированных РР, шаблоны
/// </summary>
public bool OffTemplateIsActive { get; set; }
/// <summary>
/// Состояние для деактивированных РР, расписания
/// </summary>
public bool OffScheduleIsActive { get; set; }
/// <summary>
/// Список масок ЭК, или ЭК
/// </summary>
public ICollection<JobEkMask> JobEkMasks { get; set; } = new HashSet<JobEkMask>();
/// <summary>
/// Список статусов ЭК для которых создавать/активировать шаблоны/расписания
/// </summary>
public ICollection<JobAutoControlInEkStatus> JobAutoControlInEkStatuses { get; set; } = new HashSet<JobAutoControlInEkStatus>();
}
}