Организационный объект (сущность)
Алиасы: Организационный объект (сущность), Организационный объект. parents: [org-object-model].
Связи
classDiagram
direction LR
class OrgObject {
+Guid id
+Guid ais_id
+String name
+String nav_type_eid
+Guid nav_type_id
+Company company_id
+ExecutiveApparatus ia_id
+MES mes_id
+PMES pmes_id
+Substation substation_id
+Guid parent_id
}
class Company
class ExecutiveApparatus
class MES
class PMES
class Substation
OrgObject "1" --> "1" Company : company_id
OrgObject "0..1" --> "1" ExecutiveApparatus : ia_id
OrgObject "0..1" --> "1" MES : mes_id
OrgObject "0..1" --> "1" PMES : pmes_id
OrgObject "0..1" --> "1" Substation : substation_id
Структура
| Наименование | Атрибут | Тип | Обязательно для создания | Диапазон / формат | Неизменяемость | Описание |
|---|---|---|---|---|---|---|
| Идентификатор записи | id | Guid | Да | Да | ||
| ИД объекта в АИС | ais_id | Guid | Нет | Да | ИД объекта в АИС ОИА ПЭО | |
| Наименование | name | String | Да | |||
| Тип организационного объекта | nav_type_eid | String | Да | {Company; Ia; Mes; Pmes; Substation} | ||
| Тип организационного объекта (ссылка) | nav_type_id | Guid | Да | Ссылка на запись типа оргобъекта; nav_type_eid — её дискриминатор | ||
| Компания | company_id | Company | Да | |||
| ИА | ia_id | ExecutiveApparatus | Нет | |||
| МЭС | mes_id | MES | Нет | |||
| ПМЭС | pmes_id | PMES | Нет | |||
| Подстанция | substation_id | Substation | Нет | |||
| Вышестоящий организационный объект | parent_id | Guid | Нет | Ссылка на вышестоящий оргобъект в иерархии |
Исходник
public class OrgObject
{
/// <summary>Идентификатор записи</summary>
[DomainField(Alias = "id", RequiredOnCreate = true, Immutable = true)]
public Guid Id { get; set; }
/// <summary>ИД объекта в АИС</summary>
[DomainField(Alias = "ais_id", Description = "ИД объекта в АИС ОИА ПЭО", Immutable = true)]
public Guid AisId { get; set; }
/// <summary>Наименование</summary>
[DomainField(Alias = "name", RequiredOnCreate = true)]
public string? Name { get; set; }
/// <summary>Тип организационного объекта</summary>
[DomainField(Alias = "nav_type_eid", RequiredOnCreate = true, Range = "{Company; Ia; Mes; Pmes; Substation}")]
public string? NavTypeEid { get; set; }
/// <summary>Тип организационного объекта (ссылка)</summary>
[DomainField(
Alias = "nav_type_id",
RequiredOnCreate = true,
Description = "Ссылка на запись типа оргобъекта; `nav_type_eid` — её дискриминатор"
)]
public Guid NavTypeId { get; set; }
/// <summary>Компания</summary>
[Relation]
[DomainField(Alias = "company_id", RequiredOnCreate = true)]
public Company? Company { get; set; }
/// <summary>ИА</summary>
[Relation]
[DomainField(Alias = "ia_id")]
public ExecutiveApparatus? Ia { get; set; }
/// <summary>МЭС</summary>
[Relation]
[DomainField(Alias = "mes_id")]
public MES? Mes { get; set; }
/// <summary>ПМЭС</summary>
[Relation]
[DomainField(Alias = "pmes_id")]
public PMES? Pmes { get; set; }
/// <summary>Подстанция</summary>
[Relation]
[DomainField(Alias = "substation_id")]
public Substation? Substation { get; set; }
/// <summary>Вышестоящий организационный объект</summary>
[DomainField(Alias = "parent_id", Description = "Ссылка на вышестоящий оргобъект в иерархии")]
public Guid ParentId { get; set; }
}Структурные связи
Использует
- Доменная сущность Исполнительный аппарат (сущность)
- Доменная сущность Компания (сущность)
- Доменная сущность МЭС (сущность)
- Доменная сущность ПМЭС (сущность)
- Доменная сущность Подстанция (сущность)
Используется
- Доменная сущность Задание на сбор энергопрофиля (сущность)
- Доменная сущность Здание (сущность)
- Компонент Вкладки «Расход ЭЭ» и «Расход ТЭ»
- Компонент Карточка Здания
- Прикладной сервис Эталоны и нормативы потребления ТЭР зданиями
- Экран Главная страница
- Handler Хендлер запроса расхода энергии от сторонних источников
- Use Case Загрузка данных учёта и их просмотр