using Microsoft.EntityFrameworkCore;
using PARR.DAL.Context;
using PARR.DAL.Models.Base;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
namespace PARR.DAL.Models.Job
{
[Table("Jobs", Schema = DataContextSettings.Job)]
[Comment("Таблица видов работ")]
public class Job : IBase
{
[Key]
public Guid Id { get; set; }
public DateTimeOffset DateCreated { get; set; }
public DateTimeOffset? DateModified { get; set; }
///
/// Наименование работ для интерфеса в ПАРР
///
public required string Name { get; set; }
///
/// Наименование работ для поля Работа в шаблоне АСУ ЕСПП, может быть динамическое
///
public required string WorkName { get; set; }
///
/// Минимальное значение дочерних связей группового ЭК
///
public int? MinValueRelationships { get; set; }
///
/// Максимальное значение дочерних связей группового ЭК
///
public int? MaxValueRelationships { get; set; }
///
/// Маска для динамического формирования имени шаблона
///
public string? TemplateNameMask { get; set; }
public Guid TnkId { get; set; }
public Guid GroupId { get; set; }
[ForeignKey(nameof(GroupId))]
public JobGroup? Group { get; set; }
[ForeignKey(nameof(TnkId))]
public Tnk? Tnk { get; set; }
public ICollection UnitFilters { get; set; } = new HashSet();
public ICollection Templates { get; set; } = new HashSet();
}
}