Вид потребителей ЭЭ (сущность)

Доменная сущность Версия: 1.0 accepted

Алиасы: Вид потребителей ЭЭ (сущность). parents: [ee-consumers-model-diagram].

⟨/⟩ Исходник

Связи

classDiagram
    direction LR
    class EEConsumersKind {
        +Guid id
        +Guid ais_id
        +String name
        +EEConsumersModel ee_consumers_model_id
        +EEConsumersType ee_consumers_type_id
        +Int32 ee_consumers_amount
        +Decimal ee_consumers_power_kwt
        +Decimal operating_time_hour_per_day
        +Decimal operating_time_days_per_year
        +Decimal ee_consumers_energy_k_kwt_h
    }
    class EEConsumersModel
    class EEConsumersType
    EEConsumersKind "1" --> "1" EEConsumersModel : ee_consumers_model_id
    EEConsumersKind "0..1" --> "1" EEConsumersType : ee_consumers_type_id

Структура

НаименованиеАтрибутТипОбязательно для созданияТребуется для расчётаВычисляемый, методикаЕИДиапазон / форматНеизменяемость
Идентификатор записиidGuidДаUUIDДа
ais_consumers_ee_idais_idGuidНет
НаименованиеnameStringНетДа, вычисляется при чтении / на UI; не хранится. Формула: $"{Тип потребителей ЭЭ. Наименование} ({Количество потребителей, шт.}, {Мощность потребителей, кВт})"
Модель потребителей ЭЭee_consumers_model_idEEConsumersModelДаДа
Тип потребителей ЭЭee_consumers_type_idEEConsumersTypeНет
Количество потребителей, шт.ee_consumers_amountInt32НетДашт.> 0
Мощность потребителей, кВтee_consumers_power_kwtDecimalНетДакВт> 0
Время работы в сутках, час. в сут.operating_time_hour_per_dayDecimalНетДачас. в сут.(0; 24]
Время работы в году, дней в годoperating_time_days_per_yearDecimalНетДадней в год(0; 366]
Годовое потребление, ·кВт·чee_consumers_energy_k_kwt_hDecimalНетДаДакВт·ч> 0

Исходник

    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; }
    }