2025-05-14 15:13:30 +10:00
|
|
|
|
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.Unit
|
|
|
|
|
|
{
|
|
|
|
|
|
[Table("Units", Schema = DataContextSettings.Unit)]
|
|
|
|
|
|
[Comment("Таблица с ЭК")]
|
|
|
|
|
|
[Index(nameof(Name), IsUnique = true)]
|
|
|
|
|
|
public class Unit : 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; }
|
|
|
|
|
|
|
|
|
|
|
|
//статус ЭК
|
|
|
|
|
|
|
|
|
|
|
|
// todo: добавить еще поля??? (которые есть у всех ЭК)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
public ICollection<UnitInField> UnitFields { get; set; } = new HashSet<UnitInField>();
|
|
|
|
|
|
|
2025-05-21 11:53:07 +10:00
|
|
|
|
public ICollection<UnitInValue> UnitValues { get; set; } = new HashSet<UnitInValue>();
|
2025-05-27 11:32:05 +10:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
|
/// Получить всех родителей
|
|
|
|
|
|
/// </summary>
|
|
|
|
|
|
[InverseProperty(nameof(UnitInUnit.ChildUnit))]
|
|
|
|
|
|
public ICollection<UnitInUnit> ParentUnits { get; set; } = new HashSet<UnitInUnit>();
|
|
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
|
/// Получить детей
|
|
|
|
|
|
/// </summary>
|
|
|
|
|
|
[InverseProperty(nameof(UnitInUnit.ParentUnit))]
|
|
|
|
|
|
public ICollection<UnitInUnit> ChildUnits { get; set; } = new HashSet<UnitInUnit>();
|
2025-05-14 15:13:30 +10:00
|
|
|
|
}
|
|
|
|
|
|
}
|