using System;
using Rugrid.Sdaid.Notation.Documents;
namespace Rugrid.Sdaid.Epas.Ntr.Domain.Reference
{
/// <summary>
/// Доменная сущность. Перенесено дословно из ntr-01/domain/reference/building-purpose.md.
/// </summary>
public class DOC_BuildingPurpose : 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(BuildingPurpose);
}
/// <summary>
/// Доменная сущность «Назначение зданий».
/// Класс — источник структуры: таблица свойств и диаграмма связей на странице документа
/// строятся генератором по нему. Прозу и разбор ведёт документ DOC_BuildingPurpose.
/// </summary>
[DomainEntity]
public class BuildingPurpose
{
/// <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 = "ais_modified",
RequiredOnCreate = true,
Description = "Служебное поле. Момент последнего изменения записи в АИС ОИА ПЭО"
)]
public DateTime AisModified { 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; }
/// <summary>Удельный расход воздуха, м³/чел.·ч</summary>
[DomainField(
Alias = "specific_air_consumption_m3per_human_hour",
RequiredForCalc = "Да",
Unit = "м³/чел.·ч",
Range = "Вещественное (0; 100]"
)]
public decimal SpecificAirConsumptionM3perHumanHour { get; set; }
/// <summary>Источник мастер-данных</summary>
[DomainField(Alias = "source_system_alias", RequiredOnCreate = true, Default = "\"service_ntr\"")]
public string? SourceSystemAlias { get; set; }
}
}