fix(web): шахматка красит и пару без встречной стороны (one_sided), как API и xlsx (AURORA-1651, ревью #158)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
parent
2812897858
commit
814929819a
@ -25,7 +25,8 @@
|
||||
Экран SHALL загружать матрицу при открытии вкладки (`GET /consolidations/versions/{id}/intercompany-matrix/all`) и показывать
|
||||
таблицу: первая колонка «ДБ / КТ» (закреплена слева) — компании периметра в порядке ответа (`companies[]`), остальные колонки —
|
||||
те же компании. В ячейке пары (строка A, колонка Б) SHALL быть три числа друг под другом: сумма `amount_a`, сумма `amount_b`
|
||||
и расхождение `variance_amount` в скобках; расхождение выделяется красным, если `exceeds_threshold = true`. Если у пары есть
|
||||
и расхождение `variance_amount` в скобках; расхождение выделяется красным, если `exceeds_threshold = true` или
|
||||
`one_sided = true` (пара без встречной стороны; правило подсветки — как в API и xlsx, AURORA-1651). Если у пары есть
|
||||
строки ОСВ без сопоставленного счёта (`skipped_osv_entry_count > 0`), рядом с первым числом SHALL показываться значок
|
||||
предупреждения с подсказкой «Строк ОСВ без сопоставленного счёта: N; в суммы не вошли». Если ячейки пары в ответе нет
|
||||
(в том числе на диагонали), SHALL показываться прочерк «—» на приглушённом фоне. Ниже таблицы закреплена строка «Итого»: до
|
||||
@ -38,6 +39,10 @@
|
||||
- **WHEN** для пары `(A, Б)` сервер вернул `exceeds_threshold = true`
|
||||
- **THEN** третье число ячейки (расхождение) показано красным, первые два — обычным цветом
|
||||
|
||||
#### Scenario: Пара без встречной стороны
|
||||
- **WHEN** для пары `(A, Б)` сервер вернул `amount_b = 0`, `one_sided = true`, `exceeds_threshold = false`
|
||||
- **THEN** третье число ячейки (расхождение) показано красным
|
||||
|
||||
#### Scenario: Пары нет в ответе
|
||||
- **WHEN** в `cells[]` нет ячейки для пары компаний
|
||||
- **THEN** на их пересечении показан прочерк «—»
|
||||
|
||||
@ -79,7 +79,8 @@ export const ConsolidationChessTable: React.FC<ConsolidationChessTableI> = ({
|
||||
{chessTableCellFormatValue(cell.amount_a, units, decimals)}
|
||||
</span>
|
||||
<span>{chessTableCellFormatValue(cell.amount_b, units, decimals)}</span>
|
||||
<span style={{ color: cell.exceeds_threshold ? 'red' : 'inherit' }}>
|
||||
{/* подсветка как в API и xlsx: порог > 5 % или пара без встречной стороны (AURORA-1651) */}
|
||||
<span style={{ color: cell.exceeds_threshold || cell.one_sided ? 'red' : 'inherit' }}>
|
||||
({chessTableCellFormatValue(cell.variance_amount, units, decimals)})
|
||||
</span>
|
||||
</div>
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user