2.0 KiB
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