75 строк · в начало
using System;
using Rugrid.Sdaid.Notation.Documents;
namespace Rugrid.Sdaid.Epas.Ntr.Domain.ConsumptionModel
{
/// <summary>
/// Доменная сущность. Перенесено дословно из ntr-01/domain/consumption-model/windows-model.md.
/// </summary>
public class DOC_WindowsModel : IDomainEntityDocument, IHasStructuralLinks, IFolder<NtrDomainFolder>
{
public SdaidLink[] Links => new[]
{
Rel.Uses<Rugrid.Sdaid.Epas.Ntr.Domain.ConsumptionModel.DOC_ConsumptionModel>(),
};
public static string _refName = "Модель окон";
public string Name => "Модель окон";
public string Description => "Алиасы: Модель окон. parents: [windows-model-diagram].";
public string Version => "1.0";
public string Status => "accepted";
public string[] Comments => new string[0];
public Type Entity => typeof(WindowsModel);
}
/// <summary>
/// Доменная сущность «Модель окон».
/// Класс — источник структуры: таблица свойств и диаграмма связей на странице документа
/// строятся генератором по нему. Прозу и разбор ведёт документ DOC_WindowsModel.
/// </summary>
[DomainEntity]
public class WindowsModel
{
/// <summary>Идентификатор записи</summary>
[DomainField(Alias = "id", RequiredOnCreate = true, Range = "UUID", Immutable = true)]
public Guid Id { get; set; }
/// <summary>Модель потребления</summary>
[Relation]
[DomainField(Alias = "consumption_model_id", RequiredOnCreate = true)]
public ConsumptionModel? ConsumptionModel { get; set; }
/// <summary>==Надо добавить==<br>Энергия теплопоступлений от солнечной радиации, кВт·ч</summary>
[DomainField(Alias = "solar_heat_gains_energy_kwt_h", RequiredForCalc = "Да", Calculated = "Да", Unit = "кВт·ч")]
public decimal SolarHeatGainsEnergyKwtH { get; set; }
/// <summary>Энергия теплопотерь, кВт·ч</summary>
[DomainField(Alias = "heat_loss_energy_k_kwt_h", RequiredForCalc = "Да", Calculated = "Да", Unit = "кВт·ч")]
public decimal HeatLossEnergyKKwtH { get; set; }
/// <summary>Приведённое сопротивление теплопередаче окон, м²·°C/Вт</summary>
[DomainField(
Alias = "thermal_resistance_m2c_per_wt",
RequiredForCalc = "Да",
Calculated = "Да, `methodSectionId: te.window_thermal_resistance`",
Unit = "м²·°C/Вт"
)]
public decimal ThermalResistanceM2cPerWt { get; set; }
/// <summary>Площадь окон, м²</summary>
[DomainField(Alias = "windows_area_m2", RequiredForCalc = "Да", Calculated = "Да, `methodSectionId: te.windows_area_total`", Unit = "м²")]
public decimal WindowsAreaM2 { get; set; }
/// <summary>Количество инфильтрующегося воздуха, кг/ч</summary>
[DomainField(Alias = "air_infiltrating_flow_kg_per_hour", RequiredForCalc = "Да", Calculated = "Да", Unit = "кг/ч")]
public decimal AirInfiltratingFlowKgPerHour { get; set; }
}
}