Объекты АЛСЕКО
Договорные нагрузки АЛСЕКО: договорные объекты, здания без потребителя, сверка и привязка к зданиям на карте. Адреса и владельцы на снимке скрыты.
Возможности
- Три режима окна: «Договорные объекты», «Здания без потребителя», «Сверка и привязка».
- «Договорные объекты» — договорные нагрузки АЛСЕКО. Плитки «Объектов», «Найдено по адресу», «Не найдено», «МЖД», «Прочие»; поиск по адресу, договору, владельцу и объекту; фильтры «Связь со зданием», «Группа», «Район эксплуатации», «Административный район», «Источник», «Температурный график».
- «Здания без потребителя» — здания с записанной нагрузкой АЛСЕКО, у которых не указан потребитель сети; поиск по адресу.
- Карточка объекта: адрес, адрес в источнике, вид объекта, владелец, договор, номер в реестре, сколько зданий найдено и сколько из них уже с потребителем; нагрузки в ккал/ч; район, участок, источник, температурный график; ниже — здания и другие договоры по этому адресу. Карточка здания — адрес, потребитель, этажность, год постройки, схемы отопления и ГВС, нагрузки в Гкал/ч.
- «На карте» — переход к зданию; «Привязка к адресу» из карточки здания открывает «Сверку и привязку» с этим зданием.
- «Сверка и привязка» — семь видов несоответствий с числом записей, список по каждому, «Отчёт Excel»; привязка здания к адресу АЛСЕКО и зданий к потребителю с предпросмотром «было → станет».
Как это работает
Откуда данные. Договорные нагрузки — таблица nagruzki (выгрузка АЛСЕКО: адрес по частям, вид объекта, владелец, договор, номер в реестре, район, участок, источник, температурный график, нагрузки отопления, ГВС, вентиляции и пара в ккал/ч). Здания — слой zdaniya_2: геоадрес, адрес АЛСЕКО, записанные нагрузки в Гкал/ч, потребитель «код узел».
Сопоставление. Договор находит здание, если совпадают микрорайон и улица, а номер дома — без учёта пробелов и регистра. Группа «МЖД» — вид объекта «МЖД», «Прочие» — все остальные. Если по адресу нашлось несколько зданий, в карточке: «По адресу найдено несколько зданий: N. Связь неоднозначна и требует ручной проверки.»
Сверка — панель «Сверка данных АЛСЕКО и зданий» (как отчёты десктопа nenaid1–nenaid3, и три проверки веба):
| Вид | Что значит |
|---|---|
| «Ненайденные МЖД (нагрузка без здания)» | договор МЖД без здания по адресу (nenaid1.sql) |
| «Ненайденные прочие объекты» | прочий договор без здания (nenaid2.sql) |
| «Здания с нагрузкой без потребителя» | здание с адресом АЛСЕКО без потребителя сети (nenaid3.sql) |
| «Адрес АЛСЕКО привязан к нескольким зданиям» | неоднозначный адрес |
| «Здание привязано к адресу, которого нет в данных АЛСЕКО» | устаревшая привязка |
| «Нагрузки здания расходятся с данными АЛСЕКО» | записанные в здание суммы не равны текущим договорам |
| «Потребитель здания («код узел») не найден среди узлов сети» | потребитель указан, узла нет |
Привязка здания к адресу. Как диалог десктопа: в здание записываются адрес АЛСЕКО и суммы нагрузок всех договоров адреса, ккал/ч переводятся в Гкал/ч делением на 1 000 000. Сначала «Предпросмотр», потом «Применить»; «Снять привязку…» готовит предпросмотр очистки адреса здания. Здания → потребитель: выбранным зданиям (до 500) записывается потребитель «код узел», прежние здания этого потребителя отвязываются; нагрузки в карточку потребителя переносятся вручную по сводке предпросмотра. Каждая запись — одна транзакция и строка журнала действий.
Отчёт Excel — alseko_reconciliation_‹дата›.xlsx: лист «Сводка» (вид, количество, отчёт десктопа) и по листу на каждый вид. Колонки листов названы именами полей базы (id, source_address, owner, contract_number, …).
Персональные данные. Среди владельцев есть ИП и физические лица. Пользователь без права «Персональные данные потребителей полностью» видит у владельца-человека первую букву фамилии со звёздочками и инициалы (названия организаций не меняются), у договора — только последние 4 цифры; в отчёте Excel — так же. Поиск при этом идёт по полным значениям владельца и договора у любого пользователя: запись находится и по полному ФИО, хотя в списке оно замаскировано.
Что нужно для работы
- Таблицы
nagruzkiиzdaniya_2в базе города — они есть только в Алматы. - Просмотр, сверка, отчёт Excel — любой вошедший пользователь.
- Предпросмотр привязки — право «Журналы: ремонты, ПТС, акты, ТУ, привязки»; без него — «Привязка доступна роли «Редактор» и выше.». «Применить» — ещё включённая запись (
MUTATIONS_ENABLED=true), иначе — «Запись выключена на сервере (MUTATIONS_ENABLED).» - Владелец и договор полностью — право «Персональные данные потребителей полностью (ФИО, телефоны, счета)».
Шаги
Откройте «Инструменты» и наберите в поиске «Объекты АЛСЕКО» — пункт выделен рамкой.

Нажмите пункт — откроется окно.

Примеры
Копия Алматы: договорные объекты. 30 511 договоров: найдено по адресу 23 750, не найдено 6 761; МЖД — 8 387, прочих — 22 124. В «Зданиях без потребителя» — 11 256 зданий.
Копия Алматы: сверка. «договоров 30 511, зданий с адресом АЛСЕКО 11 261, с потребителем 8». Ненайденные МЖД — 1578, ненайденные прочие — 5176, здания с нагрузкой без потребителя — 11 256, неоднозначных адресов — 154, устаревших привязок — 574, расхождений нагрузок — 28, неизвестных потребителей — 0. Отчёт Excel повторяет эти числа: на листах 1–6 под заголовком и строкой имён полей — 1578, 5176, 11 256, 154, 574 и 28 строк.
Если не получается
- «В базе нет записей АЛСЕКО» — таблица
nagruzkiпуста. - «Не удалось загрузить АЛСЕКО», «Не удалось открыть объект АЛСЕКО», «Не удалось открыть здание АЛСЕКО» — ошибка API; в городе без таблиц АЛСЕКО окно не работает.
- «Справочники не загрузились — плитки и фильтры могут быть неполными» — список работает, плиток и фильтров может не быть.
- «Не удалось выполнить сверку», «Не удалось загрузить несоответствия», «Не удалось сформировать отчёт» — сбой сверки на сервере.
- «Адреса не найдены.» — измените строку поиска (улица, дом); пустая строка ищет по геоадресу здания.
- «Изменений нет — здание уже в этом состоянии.» — привязка уже такая.
- «Адрес не найден в данных АЛСЕКО» — по выбранному адресу нет ни одного договора; выберите адрес из списка найденных.
- «Предпросмотр не удался», «Привязка не записана» с текстом сервера — нет права, выключена запись или здание не найдено.
- Вместо кнопки перехода к зданию — «Карта недоступна» с подсказкой «У здания нет координат»: у здания нет геометрии.
Для администратора
- Таблицы
nagruzki,zdaniya_2,generalizedconsumers,nodes,externalcodes; веб их не создаёт. Запись привязок —MUTATIONS_ENABLED=trueи правоjournals, всё пишется вaudit_log. - Маскирование:
PII_MASKING(по умолчанию включено), правоpii_view. Подробно —itwin-api/docs/pii.md.
Для разработчика
- API (чтение):
GET /api/alseko/lookups(справочники и плиткиcounts),GET /api/alseko/loads,GET /api/alseko/loads/{load_id},GET /api/alseko/buildings/unassigned,GET /api/alseko/buildings/{building_id}—routers/registries.py,database/alseko.py. - Сверка и привязка:
GET /api/alseko/reconciliation,GET /api/alseko/reconciliation/issues?kind=&limit=&offset=,GET /api/alseko/reconciliation/report.xlsx?kinds=,GET /api/alseko/addresses?q=&building_id=,POST /api/alseko/buildings/{building_id}/addressиPOST /api/alseko/consumers/{node_id}/buildings(dry_run) —routers/alseko_binding.py,database/alseko_binding.py(KCAL_TO_GCAL,MAX_CONSUMER_BUILDINGS = 500,EXCEL_ROW_LIMIT = 100 000). - Веб:
components/AlsekoJournalDialog.vue(ключalseko),components/AlsekoReconciliationPanel.vue. - Тесты: веб —
tests/utils/alsekoReconciliation.spec.ts; API —tests/test_alseko_binding.py,tests/test_pii.py.
