⟨/⟩ Nts/50_Domain/Reference/Subject.cs

43 строк · в начало

using System;
using Rugrid.Sdaid.Notation.Documents;

namespace Rugrid.Sdaid.Epas.Nts.Domain
{
    /// <summary>
    /// Справочник «Субъекты Российской Федерации»: собственный справочник модуля. Субъект —
    /// общий ключ для привязки организационного объекта и записи справочника зимних надбавок.
    /// </summary>
    public class DOC_Subject : IDomainEntityDocument, IFolder<NtsDomainFolder>
    {
        public static string _refName = "Субъект РФ";

        public string Name => "Субъект РФ";

        public string Description =>
            @"Субъект Российской Федерации (или его часть): код и наименование. Используется для привязки организационного объекта и зимней надбавки.";

        public string Version => "0.1";
        public string Status => "draft";
        public string[] Comments => new string[0];
        public Type Entity => typeof(Subject);
    }

    /// <summary>Доменная сущность «Субъект РФ».</summary>
    [DomainEntity]
    public class Subject
    {
        /// <summary>Идентификатор записи</summary>
        [DomainField(Alias = "id", RequiredOnCreate = true, Range = "UUID", Immutable = true)]
        public Guid Id { get; set; }

        /// <summary>Код</summary>
        [DomainField(Alias = "code", RequiredOnCreate = true)]
        public string? Code { get; set; }

        /// <summary>Наименование</summary>
        [DomainField(Alias = "name", RequiredOnCreate = true,
            Description = "Как в справочнике «Предельные значения зимних надбавок»")]
        public string? Name { get; set; }
    }
}