2025-06-04 11:55:23 +10:00
|
|
|
|
using Microsoft.EntityFrameworkCore;
|
2026-04-15 09:35:03 +10:00
|
|
|
|
using PARR.Domain.Constants;
|
2026-04-13 16:58:30 +10:00
|
|
|
|
using PARR.Domain.Entities.Base;
|
2026-06-15 16:56:23 +10:00
|
|
|
|
using PARR.Domain.Entities.JobGroupEntities;
|
2025-06-04 11:55:23 +10:00
|
|
|
|
using System.ComponentModel.DataAnnotations;
|
|
|
|
|
|
using System.ComponentModel.DataAnnotations.Schema;
|
|
|
|
|
|
|
2026-07-03 11:17:48 +10:00
|
|
|
|
namespace PARR.Domain.Entities.JobEntities
|
2025-06-04 11:55:23 +10:00
|
|
|
|
{
|
2026-04-15 09:35:03 +10:00
|
|
|
|
[Table("Jobs", Schema = DatabaseSchemas.Job)]
|
2025-06-04 11:55:23 +10:00
|
|
|
|
[Comment("Таблица видов работ")]
|
2026-04-13 16:58:30 +10:00
|
|
|
|
public class Job : IBaseEntity
|
2025-06-04 11:55:23 +10:00
|
|
|
|
{
|
|
|
|
|
|
[Key]
|
|
|
|
|
|
public Guid Id { get; set; }
|
|
|
|
|
|
|
|
|
|
|
|
public DateTimeOffset DateCreated { get; set; }
|
|
|
|
|
|
|
|
|
|
|
|
public DateTimeOffset? DateModified { get; set; }
|
|
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
2025-06-11 11:14:27 +10:00
|
|
|
|
/// Наименование работ для интерфеса в ПАРР
|
2025-06-04 11:55:23 +10:00
|
|
|
|
/// </summary>
|
|
|
|
|
|
public required string Name { get; set; }
|
|
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
2025-06-11 11:14:27 +10:00
|
|
|
|
/// Наименование работ для поля Работа в шаблоне АСУ ЕСПП, может быть динамическое
|
2025-06-04 11:55:23 +10:00
|
|
|
|
/// </summary>
|
2025-06-11 11:14:27 +10:00
|
|
|
|
public required string WorkName { get; set; }
|
|
|
|
|
|
|
2025-06-04 11:55:23 +10:00
|
|
|
|
/// <summary>
|
2025-08-22 11:25:51 +10:00
|
|
|
|
/// Минимальное значение дочерних или родительских связей группового ЭК
|
2025-06-04 11:55:23 +10:00
|
|
|
|
/// </summary>
|
|
|
|
|
|
public int? MinValueRelationships { get; set; }
|
|
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
2025-08-22 11:25:51 +10:00
|
|
|
|
/// Максимальное значение дочерних или родительских связей группового ЭК
|
2025-06-04 11:55:23 +10:00
|
|
|
|
/// </summary>
|
|
|
|
|
|
public int? MaxValueRelationships { get; set; }
|
|
|
|
|
|
|
2025-08-22 11:25:51 +10:00
|
|
|
|
/// <summary>
|
|
|
|
|
|
/// Для подсчёта связей групового ЭК использовать родительсике или дочерние связи
|
|
|
|
|
|
/// </summary>
|
|
|
|
|
|
/// <value>
|
|
|
|
|
|
/// true - диапазон связей относится к родительским связям<br/>
|
|
|
|
|
|
/// false, null - диапазон относится к дочерним связям
|
|
|
|
|
|
/// </value>
|
2025-11-14 14:48:56 +10:00
|
|
|
|
public bool? IsParentRelationships { get; set; }
|
2025-08-22 11:25:51 +10:00
|
|
|
|
|
2025-06-04 11:55:23 +10:00
|
|
|
|
/// <summary>
|
|
|
|
|
|
/// Маска для динамического формирования имени шаблона
|
|
|
|
|
|
/// </summary>
|
2025-08-22 11:25:51 +10:00
|
|
|
|
public required string TemplateNameMask { get; set; }
|
|
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
|
/// Маска для динамического формирования рабочей группы исполнителей шаблона
|
|
|
|
|
|
/// </summary
|
|
|
|
|
|
public required string WorkGroupMask { get; set; }
|
2025-06-04 11:55:23 +10:00
|
|
|
|
|
2026-01-13 14:36:07 +10:00
|
|
|
|
/// <summary>
|
|
|
|
|
|
/// Зона ответственности
|
|
|
|
|
|
/// </summary>
|
|
|
|
|
|
public required string ResponseAreaMask { get; set; }
|
|
|
|
|
|
|
2025-06-04 11:55:23 +10:00
|
|
|
|
public Guid TnkId { get; set; }
|
|
|
|
|
|
|
2025-06-11 11:14:27 +10:00
|
|
|
|
public Guid GroupId { get; set; }
|
|
|
|
|
|
|
2025-07-01 17:20:48 +10:00
|
|
|
|
|
2025-06-11 11:14:27 +10:00
|
|
|
|
[ForeignKey(nameof(GroupId))]
|
|
|
|
|
|
public JobGroup? Group { get; set; }
|
|
|
|
|
|
|
2025-06-04 11:55:23 +10:00
|
|
|
|
[ForeignKey(nameof(TnkId))]
|
|
|
|
|
|
public Tnk? Tnk { get; set; }
|
|
|
|
|
|
|
2025-07-01 17:20:48 +10:00
|
|
|
|
|
|
|
|
|
|
public ICollection<JobUnitFilter> UnitFilters { get; set; } = new HashSet<JobUnitFilter>();
|
|
|
|
|
|
|
|
|
|
|
|
public ICollection<Template> Templates { get; set; } = new HashSet<Template>();
|
2025-12-05 14:07:48 +10:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
public JobAutoControl? AutoControl { get; set; }
|
2025-06-04 11:55:23 +10:00
|
|
|
|
}
|
|
|
|
|
|
}
|