1.7 KiB
Raw Blame History

ADDED Requirements

Requirement: Итог элиминации тройки независимо от упаковки

Для (rule_id, company_a_id, company_b_id) API SHALL возвращать суммы всех выбранных строк ОСВ обеих сторон, абсолютное расхождение elimination_amount, процент расхождения к меньшей сумме, exceeds_threshold и отдельное eliminated_amount. При расхождении не более 5 % eliminated_amount SHALL равняться min(amount_a, amount_b); при превышении порога, нулевой стороне или elimination_mode = manual SHALL равняться нулю. Упаковка строк не меняет этот итог.

Scenario: Точная строка среди несопоставленных остатков

  • WHEN правило № 6 для Счастливочной и АО «Русский бисквит» даёт суммы 110 429 113,15 и 106 311 116,46 руб., а точная группа 62.01 ↔ 60.01 составляет 106 311 116,46 руб.
  • THEN точная группа присутствует в matched, остальные три строки стороны A — в unpaired, eliminated_amount = 106311116.46, расхождение округляется до 3,87 %.

Scenario: Ручное правило и превышение порога

  • WHEN правило ручное либо расхождение больше 5 %
  • THEN eliminated_amount = 0, независимо от результата упаковки.