Конфликты после #158 (страница отчёта с вкладками по адресу): - layouts/ConsolidationReportPage: пояснение статуса, тег, «Изменить статус» и модалка [33-01] из ConsolidatedOsvPage; - widgets/ConsolidatedOsvContent: «Единицы / Знаков» и onUnmappedChange (unmapped_total наверх); - OsvTabs: вкладки по адресу из main + модалка [31-00] при уходе с «ОСВ»; - types/api.ts: обе части. Спека consolidations-ui: решение (ц), Known issues 11 и 15 (lucide-react в зеркале есть), tasks 2.5, 2.8; ARCHITECTURE.md и web/CLAUDE.md — новая страница отчёта. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
7.5 KiB
Why
В ветке AURORA-1589 (PR RSHB/arm-core#166, автор — Степанов, задача AURORA-1589) фронт доводит экраны консолидаций до
макета: список консолидаций ГК [34] с «Взять в работу» и перехватом [35], модалку «Новая консолидация» [42] и кнопку
«Изменить статус» в карточке версии [30] с модалкой [33-01]. Бэкенд этих действий уже в main (consolidations-api:
список с in_work_only, блокировка и перехват, ручная смена статуса). У экранов нет UI-спеки. Спеку, документацию и тесты
ведёт ревьюер коммитами в ветку автора (правило владельца). После ревью раунда 1 владелец решил (23.10.2026) довести PR
самим в этой же ветке: расхождения кода с целевой спекой (бывшие «Known issues» design.md) исправлены ревьюером, коммит
71ef633 («Единицы» сводной ОСВ) остаётся в PR и тоже исправлен.
What Changes
Репозиторий — только arm-core (web/). Эндпоинты arm-core (без изменений): GET /company-groups/{id}/consolidations
(in_work_only), GET /consolidations/versions/{id}, POST /consolidations/versions/{id}/lock (takeover_reason),
POST /consolidations/versions/{id}/status, POST /consolidations.
- Список консолидаций [34]: колонки, дерево версий с номером только у версий 2+, фильтр «Только в работе» (выключен по умолчанию), «Взять в работу» с подтверждением [35] и перехватом с причиной, неактивные пункты меню «⋯».
- Панель «Организации» без выбранной консолидации и серый статус «Отсутствует».
- Подписи статусов версии («Корректировка данных», «Отменена») и пояснение статуса под заголовком карточки.
- Модалка «Новая консолидация» [42]: ИНН отдельной колонкой, «+ Создать», без звёздочек обязательности.
- «Изменить статус» [33-01]: допустимые переходы — зеркало
MANUAL_TRANSITIONSбэка, по умолчанию ничего не выбрано, кнопка доступна только владельцу блокировки и при наличии ручных переходов. - Модалка [31-00] «Остались неуказанные ИНН» при уходе со «Сводной ОСВ» на другую вкладку отчёта.
- Предупреждение браузера о несохранённых правках в модалках этих экранов («Взять в работу» с причиной, «Изменить статус», «Новая консолидация»).
- Сводная ОСВ [30]: «Единицы» (руб. / тыс. руб. / млн руб. / млрд руб.) и «Знаков после запятой» (0–3) — масштаб на строках без float, ноль — «—».
- Новая спека
consolidations-ui(ADDED Requirements), дельтаconsolidated-osv-ui(ADDED). - Чистые правила экранов —
web/src/utils/consolidations.ts, масштаб сумм —formatScaledAmountвweb/src/utils/money.ts, тесты vitest. - Документация фронта:
web/CLAUDE.md(вторая библиотека иконокlucide-react),web/ARCHITECTURE.md(новые виджеты).
Non-goals
- Полный маршрут согласования (переходы Среза 7), «Добавить версию», «Отключить подтверждение КФО», «История изменений», «Редактировать состав», «Импорт», «Дата верификации», «Утверждён в РФ» / «Верифицирован в ГО» — зонтичная задача AURORA-1416.
- ГСК консолидации в API списка и карточки (колонка «ГСК») — отдельная задача ядра; до неё колонка пустая.
- Список допустимых переходов из API (
allowed_transitions) — с маршрутом согласования; до него фронт держит зеркало. - Предупреждение браузера о несохранённых правках в формах вне экранов консолидаций (справочники, проверка документов) и
при переходе по меню приложения — открытый вопрос владельцу (
design.md, «Открытые вопросы»). - «Настройка таблицы», «На весь экран», фильтры по суммам в сводной ОСВ — задача «Сводная ОСВ: UI по макету».
- Изменения бэкенда и DBML.
Capabilities
New Capabilities
consolidations-ui: список консолидаций ГК, взятие в работу и перехват, модалка новой консолидации (вид), смена статуса версии и шапка карточки версии.
Modified Capabilities
consolidated-osv-ui: ADDED требование «Единицы и знаки после запятой» (коммит71ef633остаётся в PR, решение владельца 23.10.2026).consolidation-setup(состав модалки [42], создание, «К отчётности») не правится — вид модалки и шапка карточки описаны в новой спеке (design.md, решение без обсуждения (а)).
Impact
web/src/utils/consolidations.ts(+ тест),web/src/utils/money.ts(formatScaledAmount, + тест),web/src/hooks/useBeforeUnload.ts,web/src/widgets/ConsolidatedOsv/(OsvTabs.tsx— модалка [31-00],useNumberDisplay.tsx,OsvTable.tsx),web/src/widgets/ConsoleTable/(ConsoleTable.tsx,LockModal.tsx,config.tsx,consts.ts,flatten.ts),web/src/widgets/StatusChangeModal/ChangeStatusModal.tsx,web/src/widgets/NewConsoleModal/(NewConsoleModal.tsx,CompanyOptionRow.tsx),web/src/widgets/ConsoleLegalEntities/,web/src/layouts/ConsolidationReportPage.tsx(шапка, после влива #158),web/src/widgets/ConsolidatedOsvContent/(«Единицы»),web/src/layouts/ConsolidationsList.tsx,web/src/services/api/consolidations.ts,web/src/store/slices/consolidations/thunks.ts,web/src/types/,web/src/widgets/Sidebar/(иконки),web/package.json(lucide-react).- Права: действия требуют
CONSOLIDATION_EDITна сервере; меню по правам не скрывается. - Гайд фронта по API (
docs/dev/frontend-api-guide.md§5.7): заметка о зеркале ручных переходов — PR в RSHB/arm-ka-docs, сливать вместе с этим PR.