using Rugrid.Sdaid.Notation.Documents;
namespace Rugrid.Sdaid.Epas.Ntr.Ui.Pages
{
/// <summary>
/// Перенесено дословно из ntr-01/ui/main-page.md.
/// </summary>
public class DOC_MainPage : IPageDocument, IHasStructuralLinks, IFolder<NtrUiFolder>
{
public SdaidLink[] Links => new[]
{
Rel.Uses<Rugrid.Sdaid.Epas.Ntr.Domain.BuildingModel.DOC_Building>(),
Rel.Uses<Rugrid.Sdaid.Epas.Ntr.Domain.OrgObjectModel.DOC_OrgObject>(),
Rel.Uses<Rugrid.Sdaid.Epas.Ntr.Ui.Componetns.DOC_ActualConsumptionTab>(),
Rel.Uses<Rugrid.Sdaid.Epas.Ntr.Ui.Componetns.DOC_ColorBadge>(),
Rel.Uses<Rugrid.Sdaid.Epas.Ntr.Ui.Componetns.DOC_ConsumptionModelRegistryTab>(),
Rel.Uses<Rugrid.Sdaid.Epas.Ntr.Ui.Componetns.DOC_EnergyProfileCollectionTaskRegistryTab>(),
Rel.Uses<Rugrid.Sdaid.Epas.Ntr.Ui.Componetns.DOC_EnergyProfileRegistryTab>(),
Rel.Uses<Rugrid.Sdaid.Epas.Ntr.Ui.Componetns.DOC_NavObjectCard>(),
Rel.Uses<Rugrid.Sdaid.Epas.Ntr.Ui.Componetns.DOC_ReportsRegistryTab>(),
Rel.Uses<Rugrid.Sdaid.Epas.Ntr.Ui.Pages.DOC_EnergyProfileCard>(),
};
public static string _refName = "Главная страница";
public string Name => "Главная страница";
public string Description => "Алиасы: Главная страница. parents: [ui].";
public string Version => "1.1";
public string Status => "changed";
public string[] Comments => new[]
{
"2026-09-22: в состав вкладок формы объекта добавлены «Расход ЭЭ» и «Расход ТЭ» "
+ "(эпик «Учёт фактического потребления ТЭР»).",
};
/// <summary>Макет экрана: страница прототипа Сервиса.</summary>
public static string Wireframe = $""""
## Макет
{SdaidHtml.IframeOf<DOC_MainPage>("main-page.html", 620)}
{SdaidHtml.LinkTo<DOC_MainPage>("main-page.html", "Открыть макет в отдельной вкладке")}
"""";
public static string Body = """"
## Главная страница
Главная страница включает блоки:
**Элементы:**
- 1. [[#Главное меню]];
- 2. [[#Блок навигации]] - для отображения иерархической структуры орг. объектов и их зданий;
- 3. [[#Рабочая область]] - область справа от блока навигации со статичной "Информационная страница" (пока не выбран объект в блоке навигации).
### Главное меню
**Размещение:** полоска с верху страницы по ширине всей страницы.
**Элементы:**
- Наименование сервиса: "ЭНЗС"
- Пункты меню:
- Администрирование:
- Интеграция;
- Пакетный расчёт моделей потребления;
- Документация;
- Пользователь.
**Поведение:**
- Наименование сервиса - переход на главную страницу, в блоке навигации ничего не выбрано - в рабочей области "Информационная страница".
- Администрирование - выпадающее меню:
- Справочники - переход на страницу "Справочники";
- Документация - переход на страницу "Документация"
- Пользователь - выпадающее меню:
- Мой профиль - переход на страницу "Мой профиль";
- Выйти.
#### Пакетный расчёт моделей потребления
Операция массового запуска расчёта по выборке моделей потребления. Фильтрация выборки по параметрам:
- Организационный объект - корневой организационный объект, по умолчанию Компания;
- Базовая модель: Да; Нет; Не выбрано, если не выбрано - не фильтруется по параметру;
- Вид расчёта: список с множественным выбором, по умолчанию не выбрано ничего, если не выбрано - не фильтруется по параметру.
### Блок навигации
В блоке навигации отображается дерево иерархической структуры [[../ntr-01/domain/org-object-model/org-object-model|Организационных объектов]] компании ПАО «Россети» и [[../ntr-01/domain/building-model/building-diaram|Здания]] во владении организационных объектов.
**Элементы:**
1. Заголовок "Навигация"
2. Поле поиска для быстрого нахождения объектов в дереве
3. Дерево организационной структуры с возможностью раскрытия/свертки узлов
4. Иконка pin, определяющая режим отображения блока навигации (показывать всегда/скрывать если не в фокусе указателя).
**Поведение:**
- По умолчанию детали скрыты
- Раскрытие/свертка узлов: клик на иконке раскрытия (▼/▶) слева от узла
- Выбор объекта: клик на названии объекта:
- Выделение выбранного объекта;
- Выбор объекта в блоке (организационного объекта или здания) → вывод в рабочей области формы "[[#Сведения об объекте и составе подчинённых объектов]]" по выбранному объекту.
### Рабочая область
Область страницы справа от блока навигации, в область выводится:
- "" - если объект выбран в блоке навигации;
- Статичная "Информационная страница" - если объект не выбран.
#### Сведения об объекте и составе подчинённых объектов
Форма содержит сведения о выбранном в блоке навигации объекте (об организационном объекте или здании) и составе подчинённых объектов (моделей потребления, профилей потребления и т.д.).
**Состав формы**:
- Путь к объекту начиная с главной страницы: Главная / Компания / ....
- Вкладки:
- [[nav-object-card|Вкладка "Сведения"]];
- [[consumption-model-registry-tab|Вкладка "Реестр моделей потребления"]];
- [[energy-profile-registry-tab|Вкладка «Реестр энергопрофилей»]];
- [[energy-profile-collection-task-registry-tab|Вкладка «Реестр заданий на сбор энергопрофилей»]];
- [[actual-consumption-tab|Вкладка «Расход ЭЭ»]];
- [[actual-consumption-tab|Вкладка «Расход ТЭ»]];
- [[reports-registry-tab|Вкладка «Отчёты»]]
**Связи**:
"""";
}
}