34 lines
2.7 KiB
Markdown
34 lines
2.7 KiB
Markdown
## Why
|
||
|
||
Шахматка ВГО (ТЗ §6) считалась только по всем счетам (ALL) или по счетам, выбранным вручную (MANUAL). Аналитику нужен
|
||
режим «пресет»: счета и показатель берутся из правила элиминации (Прил. 3) и со
|
||
списком строк сводной ОСВ без пары. Реализация — PR RSHB/arm-core#141 (ветка `add-preset-shahmatka`, автор — Потапова).
|
||
Требования оформлены как дельты этого change'а при ревью (решение владельца 21.10.2026); спорное поведение вынесено в
|
||
`design.md`, `## Known issues`, и в спеке не закреплено как окончательное.
|
||
|
||
## What Changes
|
||
|
||
- Режим PRESET шахматки: `GET …/intercompany-matrix/preset/{rule_id}`, выгрузка `…/preset/{rule_id}/export`, список
|
||
строк без пары `…/preset/{rule_id}/unpaired-osv`.
|
||
- Показатель пресета (`closing` / `turnover`) берётся из правила.
|
||
- `GET …/elimination-rules` возвращает объект `{version_no, is_version_fixed, rules}` вместо массива; у правила есть
|
||
`id`. Для версии без зафиксированного `elimination_rules_version` отдаются открытые правила (`valid_to IS NULL`).
|
||
- xlsx: для PRESET имя файла с `_preset-<rule_id>`, в шапке строка «Показатель»; audit `EXPORT` пишет `mode`
|
||
`ALL`/`MANUAL`/`PRESET` и `rule_id`.
|
||
|
||
## Capabilities
|
||
|
||
### New Capabilities
|
||
Нет.
|
||
|
||
### Modified Capabilities
|
||
- `consolidations-api`: ответ правил элиминации версии.
|
||
- `consolidated-osv`: режим PRESET шахматки, строки без пары, xlsx пресета.
|
||
- `audit-trail`: аудит экспорта шахматки (режим PRESET).
|
||
|
||
## Impact
|
||
|
||
Только `arm-core` (API, сервисы, схемы), таблицы и DBML не меняются. Ломающее изменение контракта
|
||
`GET …/elimination-rules` (массив → объект); поле `as_of` в ответ не входит. Потребителей старого формата в этом репозитории не проверялось — проверить при слиянии. Non-goals: фиксация версии правил, расчёт «актуальных» правил на отчётную дату, создание и применение корректировок,
|
||
исправление `one_sided` (AURORA-1651).
|