⟨/⟩ Ntr/50_Domain/Reference/HeatingType.cs

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

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

namespace Rugrid.Sdaid.Epas.Ntr.Domain.Reference
{
    /// <summary>
    /// Доменная сущность. Перенесено дословно из ntr-01/domain/reference/heating-type.md.
    /// </summary>
    public class DOC_HeatingType : IDomainEntityDocument, IFolder<NtrDomainFolder>
    {
        public static string _refName = "Тип системы отопления";

        public string Name => "Тип системы отопления";

        public string Description => "Алиасы: Тип системы отопления. parents: [operating-conditions].";

        public string Version => "1.0";
        public string Status => "accepted";
        public string[] Comments => new string[0];

                public Type Entity => typeof(HeatingType);

        public static string Body = """"
==Надо вместо сущности PowerSuplyType["Тип энергоснабжения"] сделать HeatingType["Тип системы отопления"]. Загружается из АИС как в МВЭР ==

**Наполнение:**

| Наименование                            | Код  |
| --------------------------------------- | ---- |
| Газовое                                 | s600 |
| Централизованное с независимым графиком | s200 |
| Нет                                     | s000 |
| Собственная котельная                   | s500 |
| Электрическое ТСО                       | s400 |
| Электрическое (ТСН)                     | s300 |
| Централизованное с зависимым графиком   | s100 |
"""";
    }

    /// <summary>
    /// Доменная сущность «Тип системы отопления».
    /// Класс — источник структуры: таблица свойств и диаграмма связей на странице документа
    /// строятся генератором по нему. Прозу и разбор ведёт документ DOC_HeatingType.
    /// </summary>
    [DomainEntity]
    public class HeatingType
    {
        /// <summary>Идентификатор записи</summary>
        [DomainField(Alias = "id", RequiredOnCreate = true)]
        public Guid Id { get; set; }

        /// <summary>ИД объекта в АИС</summary>
        [DomainField(Alias = "ais_id", RequiredOnCreate = true, Description = "ИД объекта в АИС ОИА ПЭО", Immutable = true)]
        public Guid AisId { get; set; }

        /// <summary>Наименование</summary>
        [DomainField(Alias = "name", RequiredOnCreate = true)]
        public string? Name { get; set; }

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

}