Диагностика расчётов
Диагностика расчётов: история последних 20 гидравлических расчётов и раскраска участков на карте по результату любого из них — падение давления или скорость воды.
Возможности
- Список последних 20 расчётов всех фрагментов города: номер, название, дата и время. Сверху — самый свежий.
- Раскраска участков на карте по результату выбранного расчёта: «Падение давления» или «Скорость воды». Показатель переключается без повторной загрузки.
- Щелчок по раскрашенному участку открывает карточку с результатами расчёта этого участка.
- «Скачать результаты в Excel» (значок таблицы у показанного расчёта) — все участки расчёта с расходом, скоростью, потерями и напорами по подаче и обратке.
- «Оставить на карте» — закрыть окно и продолжить работу с раскраской; шкала остаётся в легенде внизу слева.
Как это работает
Список берётся из таблицы calculation по дате расчёта, без отбора по фрагменту. Фрагмент в списке не подписан — ориентируйтесь по номеру и времени.
«Показать» загружает результаты участков из ut_out: одна строка на участок, значения — по подаче, а у участков только с обраткой — по обратке. На карту не идут участки внутренних схем узлов (они нарисованы в условных координатах) и участки без геометрии.
Цвет меняется плавно между четырьмя опорными точками: 0 — зелёный, 20 % максимума шкалы — жёлтый, 60 % — красный, максимум и выше — тёмно-красный.
| Показатель | Что красится | Опорные точки |
|---|---|---|
| Падение давления | общие потери напора на участке (ut_out.a17), м вод. ст. |
0 · 1 · 3 · 5 |
| Скорость воды | скорость в трубе (ut_out.a10), м/с |
0 · 0,6 · 1,8 · 3 |
Шкала одна для слоя карты, подсказки в окне и легенды: utils/calculationScale.ts. «Падение давления» — потери напора на участке в метрах водяного столба: участок с потерями 5 м и больше — тёмно-красный.
На карте одновременно показан один расчёт. Закрыли окно крестиком или «Закрыть» — раскраска снимается; после «Оставить на карте» — остаётся, пока не нажмёте «Убрать с карты».
Excel-файл calculation_<номер>_results.xlsx содержит все участки расчёта, включая участки внутренних схем: длина, внутренний диаметр, расход, скорость, удельные (мм/м) и полные (м) потери, пьезометрический и располагаемый напор в конце участка — по подаче и по обратке.
Что нужно для работы
- Хотя бы один выполненный гидравлический расчёт («Расчёт» в панели инструментов).
- Окно доступно всем, кто вошёл; отдельного права не нужно.
Шаги
Откройте «Инструменты» и наберите в поиске «Диагностика расчётов» — пункт выделен рамкой.

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

«Показать» у расчёта (последний — сверху) раскрашивает участки сети по его результату; кнопка меняется на «Убрать с карты». Раскрашивать можно один расчёт за раз.

Переключатель «Падение давления» / «Скорость воды» меняет показатель раскраски — шкала в подсказке рядом и в легенде карты.

«Оставить на карте» закрывает окно, раскраска остаётся: видно, где сеть работает на пределе. Снять её — снова открыть окно и нажать «Убрать с карты».

Примеры
Плановый расчёт 808, фрагмент 74, −25 °C (копия базы Алматы): на карту выходят 1686 участков.
- «Падение давления»: у 1570 участков потери меньше 1 м, у 102 — от 1 до 3 м, у 10 — от 3 до 5 м, у 4 — больше 5 м. Самый тёмный — участок 325697: 197,8 м, внутренний диаметр 100 мм, 43,3 т/ч, скорость 1,53 м/с, потери 8,6 м. Такой участок — первый кандидат на проверку диаметра в паспорте.
- «Скорость воды»: 746 участков медленнее 0,6 м/с, 896 — от 0,6 до 1,8 м/с, 43 — от 1,8 до 3 м/с, 1 — быстрее 3 м/с (4,5 м/с — максимум расчёта).
Если не получается
- «Расчётов нет» — в базе города нет ни одного расчёта; выполните расчёт фрагмента.
- «Не удалось загрузить историю расчётов» — API недоступен; нажмите «Повторить» или значок обновления.
- «Расчёт №… не загрузился на карту» — ошибка при загрузке результатов; прежняя раскраска при этом снимается.
- Расчёт показан, но на карте ничего нет — у расчёта нет строк в
ut_out(расчёт не завершился) или его фрагмент далеко от текущего вида: найдите фрагмент на карте. - «Ошибка выгрузки Excel» — результаты расчёта удалены или API недоступен.
Для администратора
- Данные:
calculation,ut_out,us_outбазы города. Удаление расчёта (окно «Расчёты») убирает его и из этого списка. - Маршруты окна не проверяют роль сами: при выключенном
AUTH_REQUIRED_GETрезультаты читаются без входа.
Для разработчика
- API:
GET /api/calculations/latest?limit=20,GET /api/calculations/{id}/results/geojson(участки и узлы со сводкойsummary),GET /api/calculations/{id}/results/excel. Код —routers/calc.py,database/calculations.py; колонкиut_out—database/ut_out_columns.py. - Веб:
components/CalculationDiagnosticsModal.vue; слойcalculation-lines-layerиloadCalculation—stores/mapStore.ts; шкала —utils/calculationScale.ts; снятие слоя при закрытии —composables/useDialogMapOverlay.ts. - Тесты:
tests/utils/calculationScale.spec.ts; API —test_hydraulic_thematic.py(GeoJSON результатов),test_backend_contracts.py.
