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

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

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

namespace Rugrid.Sdaid.Epas.Nts.Domain
{
    /// <summary>
    /// Справочник «Статус загрузки» ЭНТС: достаточность данных, загруженных из АИС ОИА ПЭО,
    /// для выполнения расчёта. Устанавливается процедурой приёма данных
    /// (<see cref="Rugrid.Sdaid.Epas.Nts.Infrastructure.AisOiaPeo.DOC_NtsAisImport"/>), хранится
    /// в расчёте ТС — вход политики статуса обработки.
    /// </summary>
    public class DOC_NtsAisLoadStatus : 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(NtsAisLoadStatus);
    }

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

        /// <summary>Наименование</summary>
        [DomainField(Alias = "name", RequiredOnCreate = true,
            Range = "{Не выполнена; Данных мало; Загрузка выполнена}")]
        public string? Name { get; set; }

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