Освещение (сущность)
Алиасы: Освещение (сущность). parents: [lighting-model-diagram].
Связи
classDiagram
direction LR
class Lighting {
+Guid id
+Guid ais_id
+String name
+LightingModel lighting_model_id
+Boolean is_internal_lighting
+Int32 lamp_per_illuminator
+Int32 lighting_amount
+Decimal lamp_power_wt
+Decimal operating_time_hour_per_day
+Decimal operating_time_days_per_year
+Decimal ee_receiver_power_kw
+Decimal ee_receiver_energy_kwh
}
class LightingModel
Lighting "1" --> "1" LightingModel : lighting_model_id
Структура
| Наименование | Атрибут | Тип | Обязательно для создания | Требуется для расчёта | Вычисляемый, методика | ЕИ | Диапазон / формат | Неизменяемость |
|---|---|---|---|---|---|---|---|---|
| Идентификатор записи | id | Guid | Да | UUID | Да | |||
| ais_lightings_id | ais_id | Guid | Нет | Да | ||||
| Наименование | name | String | Нет | Да, вычисляется при чтении / на UI; не хранится. Формула: $"{lighting_type} ({Количество ламп в светильнике, шт} * {Количество светильников, шт.} * {Мощность одной лампы, Вт})", где lighting_type: "Внутреннее" — если is_internal_lighting=true, иначе "Наружное" | ||||
| Модель освещения | lighting_model_id | LightingModel | Да | Да | ||||
| Внутреннее освещение | is_internal_lighting | Boolean | Нет | |||||
| Количество ламп в светильнике, шт | lamp_per_illuminator | Int32 | Нет | Да | > 0 | |||
| Количество светильников, шт. | lighting_amount | Int32 | Нет | Да | > 0 | |||
| Мощность одной лампы, Вт | lamp_power_wt | Decimal | Нет | Да | > 0 | |||
| Время работы в сутках, час. в сут. | operating_time_hour_per_day | Decimal | Нет | Да | (0; 24] | |||
| Время работы в году, дней в год | operating_time_days_per_year | Decimal | Нет | Да | (0; 366] | |||
| Установленная мощность, кВт | ee_receiver_power_kw | Decimal | Нет | Да | кВт | > 0 | ||
| Годовое потребление, кВт·ч | ee_receiver_energy_kwh | Decimal | Нет | Да | кВт·ч | > 0 |
Исходник
public class Lighting
{
/// <summary>Идентификатор записи</summary>
[DomainField(Alias = "id", RequiredOnCreate = true, Range = "UUID", Immutable = true)]
public Guid Id { get; set; }
/// <summary>ais_lightings_id</summary>
[DomainField(Alias = "ais_id", Immutable = true)]
public Guid AisId { get; set; }
/// <summary>Наименование</summary>
[DomainField(
Alias = "name",
Calculated = "Да, вычисляется при чтении / на UI; не хранится. Формула: $\"{lighting_type} ({Количество ламп в светильнике, шт} * {Количество светильников, шт.} * {Мощность одной лампы, Вт})\", где lighting_type: \"Внутреннее\" — если is_internal_lighting=true, иначе \"Наружное\""
)]
public string? Name { get; set; }
/// <summary>Модель освещения</summary>
[Relation]
[DomainField(Alias = "lighting_model_id", RequiredOnCreate = true, Immutable = true)]
public LightingModel? LightingModel { get; set; }
/// <summary>Внутреннее освещение</summary>
[DomainField(Alias = "is_internal_lighting")]
public bool IsInternalLighting { get; set; }
/// <summary>Количество ламп в светильнике, шт</summary>
[DomainField(Alias = "lamp_per_illuminator", RequiredForCalc = "Да", Range = "> 0")]
public int LampPerIlluminator { get; set; }
/// <summary>Количество светильников, шт.</summary>
[DomainField(Alias = "lighting_amount", RequiredForCalc = "Да", Range = "> 0")]
public int LightingAmount { get; set; }
/// <summary>Мощность одной лампы, Вт</summary>
[DomainField(Alias = "lamp_power_wt", RequiredForCalc = "Да", Range = "> 0")]
public decimal LampPowerWt { get; set; }
/// <summary>Время работы в сутках, час. в сут.</summary>
[DomainField(Alias = "operating_time_hour_per_day", RequiredForCalc = "Да", Range = "(0; 24]")]
public decimal OperatingTimeHourPerDay { get; set; }
/// <summary>Время работы в году, дней в год</summary>
[DomainField(Alias = "operating_time_days_per_year", RequiredForCalc = "Да", Range = "(0; 366]")]
public decimal OperatingTimeDaysPerYear { get; set; }
/// <summary>Установленная мощность, кВт</summary>
[DomainField(Alias = "ee_receiver_power_kw", Calculated = "Да", Unit = "кВт", Range = "> 0")]
public decimal EeReceiverPowerKw { get; set; }
/// <summary>Годовое потребление, кВт·ч</summary>
[DomainField(Alias = "ee_receiver_energy_kwh", Calculated = "Да", Unit = "кВт·ч", Range = "> 0")]
public decimal EeReceiverEnergyKwh { get; set; }
}Структурные связи
Использует
- Доменная сущность Модель освещения (сущность)
Используется
- Компонент Блок "Виды светильников
- Компонент Вкладка "Освещение