feat(dal): Созданы таблицы схемы Job
This commit is contained in:
34
PARR.DAL/Models/Job/FieldFilter.cs
Normal file
34
PARR.DAL/Models/Job/FieldFilter.cs
Normal file
@@ -0,0 +1,34 @@
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
using PARR.DAL.Context;
|
||||
using PARR.DAL.Models.Base;
|
||||
using PARR.DAL.Models.Unit;
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
|
||||
namespace PARR.DAL.Models.Job
|
||||
{
|
||||
[Table("FieldFilters", Schema = DataContextSettings.Job)]
|
||||
[Comment("Таблица описания критериев выборки аттрибутов ЭК")]
|
||||
public class FieldFilter : IBase
|
||||
{
|
||||
[Key]
|
||||
public Guid Id { get; set; }
|
||||
|
||||
public DateTimeOffset DateCreated { get; set; }
|
||||
|
||||
public DateTimeOffset? DateModified { get; set; }
|
||||
|
||||
public Guid JobDetailsId { get; set; }
|
||||
|
||||
public Guid FieldId { get; set; }
|
||||
|
||||
public required string ValueMask { get; set; }
|
||||
|
||||
|
||||
[ForeignKey(nameof(FieldId))]
|
||||
public UnitField? Field { get; set; }
|
||||
|
||||
[ForeignKey(nameof(JobDetailsId))]
|
||||
public JobDetails? JobDetails { get; set; }
|
||||
}
|
||||
}
|
||||
52
PARR.DAL/Models/Job/Job.cs
Normal file
52
PARR.DAL/Models/Job/Job.cs
Normal file
@@ -0,0 +1,52 @@
|
||||
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; }
|
||||
|
||||
/// <summary>
|
||||
/// Наименование работ
|
||||
/// </summary>
|
||||
public required string Name { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Связана ли работа с групповыми ЭК(зонтами)
|
||||
/// </summary>
|
||||
public bool? IsUmbrella { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Минимальное значение дочерних связей группового ЭК
|
||||
/// </summary>
|
||||
public int? MinValueRelationships { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Максимальное значение дочерних связей группового ЭК
|
||||
/// </summary>
|
||||
public int? MaxValueRelationships { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Маска для динамического формирования имени шаблона
|
||||
/// </summary>
|
||||
public string? TemplateNameMask { get; set; }
|
||||
|
||||
public Guid TnkId { get; set; }
|
||||
|
||||
[ForeignKey(nameof(TnkId))]
|
||||
public Tnk? Tnk { get; set; }
|
||||
|
||||
public ICollection<JobDetails> JobDetails { get; set; }= new HashSet<JobDetails>();
|
||||
}
|
||||
}
|
||||
54
PARR.DAL/Models/Job/JobDetails.cs
Normal file
54
PARR.DAL/Models/Job/JobDetails.cs
Normal file
@@ -0,0 +1,54 @@
|
||||
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("JobDetails", Schema = DataContextSettings.Job)]
|
||||
[Comment("Таблица описания критериев выборки ЭК, описание полей в АСУ ЕСПП")]
|
||||
public class JobDetails : IBase
|
||||
{
|
||||
[Key]
|
||||
public Guid Id { get; set; }
|
||||
|
||||
public DateTimeOffset DateCreated { get; set; }
|
||||
|
||||
public DateTimeOffset? DateModified { get; set; }
|
||||
public required string UnitFilter { get; set; }
|
||||
|
||||
public Guid JobId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Поле Короткое описания шаблона АСУ ЕСПП
|
||||
/// </summary>
|
||||
public required string ShortDescription { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Поле Подробное описания шаблона АСУ ЕСПП
|
||||
/// </summary>
|
||||
public required string FullDescription { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Поле Решение описания шаблона АСУ ЕСПП
|
||||
/// </summary>
|
||||
public required string Solution { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Поле Длительность описания шаблона АСУ ЕСПП
|
||||
/// </summary>
|
||||
public required string Duration { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Дата начала работ или дата для отсчёта периода следующего выполнения
|
||||
/// </summary>
|
||||
public DateTimeOffset ReferenceDate { get; set; }
|
||||
|
||||
|
||||
[ForeignKey(nameof(JobId))]
|
||||
public Job? Job { get; set; }
|
||||
|
||||
public ICollection<FieldFilter> fieldFilters { get; set; } = new HashSet<FieldFilter>();
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user