Andrey Epifancev 0e95f95c71 docs(openspec): change intercompany-matrix-presets + README (ревью #141)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-21 14:08:08 +04:00

2.0 KiB
Raw Blame History

MODIFIED Requirements

Requirement: Правила элиминации версии

GET /api/v1/consolidations/versions/{version_id}/elimination-rules (CONSOLIDATION_VIEW, policy по ГК) SHALL возвращать объект {version_no, is_version_fixed, rules}. Если у версии задан consolidation_version.elimination_rules_version, version_no SHALL равняться ему, is_version_fixed = true, а rules — правилами этой версии. Если он не задан, version_no = null, is_version_fixed = false, а rules — открытые правила (valid_to IS NULL); при их отсутствии rules = []. Каждое правило SHALL содержать id, rule_no, version_no, statement_type, side_1 (D/K), measure (closing/turnover), company_1, company_2; каждая сторона SHALL содержать accounts: UUID[] и excluded: UUID[] до раскрытия иерархии счетов. Невидимая и несуществующая версия SHALL отвечать одинаковым 404 NOT_FOUND.

Scenario: Правило с исключением

  • WHEN у правила первая сторона включает счёт 76 и исключает 76.07.5
  • THEN ID 76 находится в company_1.accounts, ID 76.07.5 — в company_1.excluded

Scenario: Версия правил зафиксирована

  • WHEN у версии консолидации elimination_rules_version = 1
  • THEN ответ содержит is_version_fixed = true, version_no = 1 и только правила с version_no = 1

Scenario: Версия правил не зафиксирована

  • WHEN у версии консолидации elimination_rules_version пуст
  • THEN ответ содержит is_version_fixed = false, version_no = null и открытые правила с valid_to IS NULL