AllocationIn получил side: строка с дебетовым и кредитовым сальдо даёт
две позиции, решение касается одной. Флажок, меню строки, окно
корректировки и фейк передают и ищут позицию по строке и стороне.
Контракт — docs PR #184.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
I-2: sourceDiff = суммы сторон, отклонение и порог из агрегата; diffOf только для распределения.
M-1: целая часть суммы не более 16 цифр («Слишком большая сумма»). M-6, M-7: комментарий, один percentText.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
I-1: локальный notification.useNotification с getContainer на бокс вкладки; M-6, M-8: комментарии.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
T6.11: при пересборке окна из нового агрегата (правок не было) база черновика
обновляется до текущей редакции корректировки, иначе при следующем открытии
показывалась ложная плашка об изменении.
T6.12: подпись кнопки «Выбрать» называет контрагента; ошибки полей статьи
объявляются role=alert.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Флажок «Учитывать в КФО» и меню строк (перенести, убрать, вернуть к
автоматике) отправляют allocate; «Отменить корректировку» открывает окно
с обязательным комментарием и вызывает revoke. Ошибки — уведомление с
текстом сервера, 409 — ещё перечитывание таблицы. Подсказки режима только
чтения вынесены в readOnly.ts, подсказка «Недоступно» убрана (T4.14).
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- Копейки, процент и порог 5 % вынесены из mockCalc в utils/money;
editorModel больше не зависит от фейка, тесты перенесены.
- Один разбор суммы строки ввода для проверки, живого контроля и сравнения;
некорректные строки в живой контроль не входят.
- isDirty сравнивает суммы копейками; комментарий — точно.
- Черновик: savedAt проверяется через Date.parse.
- Тесты границ порога, пустых сторон и неизвестного rule_id.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Состояние окна «Корректировка операции», проверки ввода, живой контроль
(исходные суммы и распределение), кандидаты «Добавить строку ОСВ» и
черновик в localStorage. Деньги — строки, сложение через sumAmounts,
ввод через parseAmountInput; процент — percentOfSmaller из mockCalc.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Стороны нового агрегата по знаку строки, RULE_REQUIRED, ENTRY_NOT_IN_VERSION,
атомарность allocate, возврат прежнего правила в кандидаты, тесты.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Типы 1:1 с components.schemas контракта корректировок, клиент API
(таблица, сохранение, отзыв, разнесение, экспорт), флаг
REACT_APP_CORRECTIONS_MOCK в Config. Ветка фейка пока бросает ошибку
(фейк — в следующей задаче). Строка R-1 в design.md.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- список ГК в сторе снова общий и полный (с архивными); «Архив» фильтрует только список справочника,
выбор ГК — первая показанная, пустой список — «Группа компаний не выбрана»
- перенос ЮЛ и новая консолидация не предлагают архивные ГК
- «Входит в ГСК/ГСЗ» — поля строки in_gsk/in_gsz, колонки только в карточке ГК (не в «ЮЛ вне ГК»)
- «Архивировать» красным, а не «Разархивировать»; тексты модалки и кнопка «Сохранить» в изменении ГК
- вернул поясняющие комментарии; поиск ГК не сжимается галочкой «Архив»
- тесты: selectors (видимые ГК, выбор ГК), toCatalogueJurRow
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Решение владельца после показа на стенде: «Указать» во «Встречных записях»
открывает список из одного участника пары; «Показать все организации» —
обычный список. Чистая pairCandidateRows + vitest, спека и design.md.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Открытая панель «Первичные документы» живёт в адресе экрана консолидации (?entity=<id ЮЛ> рядом с ?version=),
открытие и закрытие заменяют запись истории. «Назад» из документа, открытого из панели, возвращает на консолидацию
с той же версией и панелью той же организации; переключатель документа (AURORA-1692) и прямая ссылка — как прежде.
- utils/consolidations.ts: panelEntity / withPanelEntity + тест;
- ConsolidationsList: панель открыта по ?entity=, когда ЮЛ из адреса уже в сторе (без мелькания прежнего ЮЛ);
- ConsoleLegalEntities: onDrawerOpen(id ЮЛ строки);
- change back-to-primary-docs: MODIFIED document-review-ui «Переключатель документа», ADDED primary-files-ui
«Открытая панель в адресе экрана консолидации».
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Тело режима прокручивается внутри карточки; ключ и страница — одно состояние (currentPage);
запасная горизонтальная прокрутка таблиц на узком окне.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Подпись пары без служебных слов, тест пары на фикстурах РБ, модалка при уходе с «ОСВ» на любую вкладку,
без «Экспорт» в режиме пар, README и ARCHITECTURE, таблица решений design.md.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
reportTabNavigation: адрес новой вкладки и replace; OsvTabs переходит через неё (и после модалки [31-00]).
Change report-tabs-history: MODIFIED «Вкладки страницы отчёта по версии» (intercompany-matrix-ui).
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
GET /me дополнен role_details [{code, name}] (аддитивно), фронт показывает
названия ролей, при их отсутствии — коды. Требования внесены в спеки
authn-authz и consolidations-ui, change 184-user-role удалён.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
I-1: обёртка со stopPropagation вокруг всего Popover (CommentsPopover и FileWarningsPopover);
I-2, M-2: key={doc.id} на боковой панели комментариев; решения R-5…R-12 в design.md.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>