Andrey Epifancev 5f2b0e890f Гудвилл: UI-спека goodwill-ui, правки по проверке на стенде
OpenSpec change goodwill-ui (таблица, редактирование, переключатель/фильтр/экспорт;
вкладка «Гудвилл» в intercompany-matrix-ui больше не заглушка; R-1…R-3). По стенду:
стрелка раскрытия блока — у названия, «Выделить все» в одну строку, текст пустой таблицы.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-06 18:44:02 +04:00

27 lines
2.7 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

## Context
Экран — по контракту `../docs/dev/api-contract-goodwill.md`, DOC-259025 §4–§6 и макету `[31-03]`, `[31-03-01]`. Суммы —
строки, арифметика только в копейках (`utils/money.ts`), чистые функции вкладки — `utils/goodwill.ts` с vitest.
## Decisions
- Итоги «Всего» и «Итого по листу» берутся из ответа (`groups[].totals`, `totals`), фронт их не считает.
- В режиме редактирования P и G строки — предпросмотр (`previewAmounts`, та же формула и округление, что на бэке).
- Сохранение — один `PUT …/goodwill` с изменёнными строками (`changedRows`); ошибка строки (422 с ключом пары)
подсвечивает поле этой строки, режим не закрывается.
- Переключатель `goodwill_enabled` меняется вне режима редактирования, отдельным запросом.
## Decisions made without discussion
Ревью arm-core #220 (06.11.2026, владелец: «давай всё сделаем сами»).
- **R-1 (2026-11-06). Правки вне задачи в PR откатены к `main`.** Обработка ошибок в 8 файлах справочников, `Alert` в
`CatalogueJurTable`, удалённые комментарии в `types/api.ts`, шахматке и корректировках. Обоснование: не относятся к
AURORA-1544, давали ложный тост на незаполненной форме (`validateFields` бросает не `Error`) и конфликтовали с #219/#221.
Оставлены общий фильтр единиц и `useFullscreen` (используется только вкладкой гудвилла). Цена ошибки: если правки нужны —
отдельной задачей.
- **R-2 (2026-11-06). Итоги — только с бэка** (правило владельца «агрегаты отдаёт бэк»). Цена ошибки: нет.
- **R-3 (2026-11-06). Предпросмотр — только у строк;** «Всего» и «Итого по листу» в режиме правки показывают сохранённое
и обновляются после «Сохранить». Обоснование: агрегаты не считаем на фронте (R-2). Цена ошибки: аналитик видит итог
после сохранения, а не во время ввода (DOC-259025 §5.1 п. 3 говорит «предварительные … итоги»).