85 строк · в начало
using System;
using Rugrid.Sdaid.Notation.Documents;
using EEConsumersType = Rugrid.Sdaid.Epas.Ntr.Domain.Reference.EEConsumersType;
namespace Rugrid.Sdaid.Epas.Ntr.Domain.ConsumptionModel
{
/// <summary>
/// Доменная сущность. Перенесено дословно из ntr-01/domain/consumption-model/ee-consumers-kind.md.
/// </summary>
public class DOC_EEConsumersKind : IDomainEntityDocument, IHasStructuralLinks, IFolder<NtrDomainFolder>
{
public SdaidLink[] Links => new[]
{
Rel.Uses<Rugrid.Sdaid.Epas.Ntr.Domain.ConsumptionModel.DOC_EEConsumersModel>(),
Rel.Uses<Rugrid.Sdaid.Epas.Ntr.Domain.Reference.DOC_EEConsumersType>(),
};
public static string _refName = "Вид потребителей ЭЭ (сущность)";
public string Name => "Вид потребителей ЭЭ (сущность)";
public string Description => "Алиасы: Вид потребителей ЭЭ (сущность). parents: [ee-consumers-model-diagram].";
public string Version => "1.0";
public string Status => "accepted";
public string[] Comments => new string[0];
public Type Entity => typeof(EEConsumersKind);
}
/// <summary>
/// Доменная сущность «Вид потребителей ЭЭ (сущность)».
/// Класс — источник структуры: таблица свойств и диаграмма связей на странице документа
/// строятся генератором по нему. Прозу и разбор ведёт документ DOC_EEConsumersKind.
/// </summary>
[DomainEntity]
public class EEConsumersKind
{
/// <summary>Идентификатор записи</summary>
[DomainField(Alias = "id", RequiredOnCreate = true, Range = "UUID", Immutable = true)]
public Guid Id { get; set; }
/// <summary>ais_consumers_ee_id</summary>
[DomainField(Alias = "ais_id")]
public Guid AisId { get; set; }
/// <summary>Наименование</summary>
[DomainField(
Alias = "name",
Calculated = "Да, вычисляется при чтении / на UI; не хранится. Формула: $\"{Тип потребителей ЭЭ. Наименование} ({Количество потребителей, шт.}, {Мощность потребителей, кВт})\""
)]
public string? Name { get; set; }
/// <summary>Модель потребителей ЭЭ</summary>
[Relation]
[DomainField(Alias = "ee_consumers_model_id", RequiredOnCreate = true, Immutable = true)]
public EEConsumersModel? EeConsumersModel { get; set; }
/// <summary>Тип потребителей ЭЭ</summary>
[Relation]
[DomainField(Alias = "ee_consumers_type_id")]
public EEConsumersType? EeConsumersType { get; set; }
/// <summary>Количество потребителей, шт.</summary>
[DomainField(Alias = "ee_consumers_amount", RequiredForCalc = "Да", Unit = "шт.", Range = "> 0")]
public int EeConsumersAmount { get; set; }
/// <summary>Мощность потребителей, кВт</summary>
[DomainField(Alias = "ee_consumers_power_kwt", RequiredForCalc = "Да", Unit = "кВт", Range = "> 0")]
public decimal EeConsumersPowerKwt { get; set; }
/// <summary>Время работы в сутках, час. в сут.</summary>
[DomainField(Alias = "operating_time_hour_per_day", RequiredForCalc = "Да", Unit = "час. в сут.", Range = "(0; 24]")]
public decimal OperatingTimeHourPerDay { get; set; }
/// <summary>Время работы в году, дней в год</summary>
[DomainField(Alias = "operating_time_days_per_year", RequiredForCalc = "Да", Unit = "дней в год", Range = "(0; 366]")]
public decimal OperatingTimeDaysPerYear { get; set; }
/// <summary>Годовое потребление, ·кВт·ч</summary>
[DomainField(Alias = "ee_consumers_energy_k_kwt_h", RequiredForCalc = "Да", Calculated = "Да", Unit = "кВт·ч", Range = "> 0")]
public decimal EeConsumersEnergyKKwtH { get; set; }
}
}