2.5 KiB
2.5 KiB
Context
AURORA-1682, RSHB/arm-core#197. Панель «Первичные документы» открывалась локальным состоянием ConsolidationPage
(drawerOpen), ЮЛ панели — в сторе (current_legal_entity_id). «Назад» из документа (navigate(-1)) монтирует страницу
консолидации заново, и панель закрыта.
Decisions made without discussion
- 2026-10-27, R-1. Открытая панель хранится в адресе (
?entity=<legal_entity_id>), а не в сторе или sessionStorage. Обоснование: выбранная версия уже живёт в?version=(ConsoleTable), история браузера сама возвращает адрес с панелью, а ссылку с панелью можно переслать. Цена ошибки: если параметр не нужен в адресе — заменить на состояние в сторе (правка вConsolidationsList.tsxи двух функцияхutils/consolidations.ts). - 2026-10-27, R-2. Открытие и закрытие панели заменяют запись истории (
replace: true), как выбор версии. Обоснование: иначе «Назад» браузера после закрытия панели снова открывал бы её. Цена ошибки: низкая — одна опцияsetSearchParams. - 2026-10-27, R-3. Режим «Все документы организации» в адрес не входит: после «Назад» панель открыта столом консолидации. Обоснование: в задаче речь о возврате к панели организации; переключатель и без того сбрасывается при каждом открытии панели. Цена ошибки: низкая — добавить второй параметр адреса.
- 2026-10-27, R-4. Панель открывается, только когда ЮЛ из адреса уже в сторе (
current_legal_entity_id === entity). Обоснование: стор обновляется эффектом после первого рендера — без условия панель на мгновение показала бы прежнее ЮЛ и запросила бы его файлы. Цена ошибки: нет (поведение для пользователя то же).