15 Commits

Author SHA1 Message Date
Andrey Epifancev
ec59fcc2eb R-35: граница 5% — строго больше, как у реального API
Фронт закладывал >= 5% (R-34, из неоднозначного текста контракта
«от 5% включительно»), а API 1540 (domain/corrections.py) считает
строго больше. Приведены к факту: живой контроль окна (editorModel),
подпись фильтра «Отклонение, %», тест на границе (ровно 5.00% больше
не красный, добавлен случай 5.01%).
2026-11-02 21:08:25 +04:00
Andrey Epifancev
d8af058f75 feat(web): таблица корректировок под ответы Лысенко 29.10 (#206)
- отзыв корректировки убран (RevokeModal, revokeCorrection, пункт меню агрегата);
  `status` из тела PUT убран — сервер сразу применяет (R-29, R-30);
- «Учитывать в КФО»: у агрегата отмечен и закреплён, у строк агрегата флажка нет,
  у нераспределённых — EXCLUDE/INCLUDE; `excluded` у строки агрегата убран (R-31, R-32);
- у нераспределённой — строка баланса владельца `line_code`, фильтр «Строка баланса»
  действует и на неё (R-33);
- фейк: ENTRY_ALLOCATED для EXCLUDE/INCLUDE строки агрегата, ENTRY_EXCLUDED для ASSIGN
  исключённой; «Убрать из правила» отдаёт строку с line_code;
- спека, design.md (R-29…R-34), tasks §9, план Task 9, README/ARCHITECTURE.

Источник: AURORA-1395 #9920570, WIP API arm-core #208.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-29 23:17:34 +04:00
Andrey Epifancev
753eccbd97 docs(openspec): рулинги R-27, R-28, чек-лист Task 8, уточнения по ревью ветки (#206)
I-4, M-3, M-9, M-10, M-11.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-28 22:16:14 +04:00
Andrey Epifancev
d43149022b docs(openspec): рулинги R-25, R-26 таблицы корректировок (#206)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-28 22:06:22 +04:00
Andrey Epifancev
b499787d10 docs(web): таблица корректировок — README, ARCHITECTURE, tasks (#206)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-28 22:05:02 +04:00
Andrey Epifancev
c1d402f0e3 fix(web): окно корректировки — пересборка состояния, клавиатура, доступность (#206)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-28 21:53:22 +04:00
Andrey Epifancev
c559dd321c feat(web): окно «Корректировка операции» с черновиком (#206)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-28 21:48:12 +04:00
Andrey Epifancev
c2cbbf5dfd fix(web): правки по ревью Task 5 — лимит комментария, подсказки, защита от двойного запроса (#206)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-28 21:39:26 +04:00
Andrey Epifancev
14cceb80be feat(web): решения по строкам и отмена корректировки (#206)
Флажок «Учитывать в КФО» и меню строк (перенести, убрать, вернуть к
автоматике) отправляют allocate; «Отменить корректировку» открывает окно
с обязательным комментарием и вызывает revoke. Ошибки — уведомление с
текстом сервера, 409 — ещё перечитывание таблицы. Подсказки режима только
чтения вынесены в readOnly.ts, подсказка «Недоступно» убрана (T4.14).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-28 21:35:44 +04:00
Andrey Epifancev
d98f264f90 feat(web): вкладка «Таблица корректировки» — таблица и панель (#206)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-28 21:22:56 +04:00
Andrey Epifancev
ec6ece127f fix(web): правки по ревью Task 3 — утилиты денег, разбор сумм, черновик (#206)
- Копейки, процент и порог 5 % вынесены из mockCalc в utils/money;
  editorModel больше не зависит от фейка, тесты перенесены.
- Один разбор суммы строки ввода для проверки, живого контроля и сравнения;
  некорректные строки в живой контроль не входят.
- isDirty сравнивает суммы копейками; комментарий — точно.
- Черновик: savedAt проверяется через Date.parse.
- Тесты границ порога, пустых сторон и неизвестного rule_id.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-28 21:12:53 +04:00
Andrey Epifancev
b8a7782eae feat(web): модель окна корректировки и черновик (#206)
Состояние окна «Корректировка операции», проверки ввода, живой контроль
(исходные суммы и распределение), кандидаты «Добавить строку ОСВ» и
черновик в localStorage. Деньги — строки, сложение через sumAmounts,
ввод через parseAmountInput; процент — percentOfSmaller из mockCalc.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-28 21:09:13 +04:00
Andrey Epifancev
c05830face feat(web): фейк контракта корректировок и модель таблицы (#206)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-28 21:02:47 +04:00
Andrey Epifancev
8eefa3ba02 feat(web): типы и клиент API таблицы корректировок (#206)
Типы 1:1 с components.schemas контракта корректировок, клиент API
(таблица, сохранение, отзыв, разнесение, экспорт), флаг
REACT_APP_CORRECTIONS_MOCK в Config. Ветка фейка пока бросает ошибку
(фейк — в следующей задаче). Строка R-1 в design.md.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-28 20:57:44 +04:00
Andrey Epifancev
31fb404b47 Дизайн экрана «Таблица корректировки» (#206)
OpenSpec change corrections-table-ui: proposal, design, спека
corrections-table-ui и дельта intercompany-matrix-ui (вкладка
доступна). AURORA-1541.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-28 20:47:50 +04:00