diff --git a/api/src/repositories/elimination_rules.py b/api/src/repositories/elimination_rules.py index 16b4b95..7087e45 100644 --- a/api/src/repositories/elimination_rules.py +++ b/api/src/repositories/elimination_rules.py @@ -1,7 +1,6 @@ """Чтение версионированных правил элиминации и счетов их сторон.""" import uuid -from collections.abc import Collection from datetime import date from sqlalchemy import func, select @@ -52,21 +51,6 @@ async def list_rules(session: AsyncSession, version_no: int) -> list[Elimination return list((await session.scalars(stmt)).all()) -async def list_rule_accounts( - session: AsyncSession, rule_ids: Collection[uuid.UUID] -) -> list[tuple[EliminationRuleAccount, str]]: - """Счета правил §4 с кодами из плана счетов; `company_no` задаёт сторону, `is_excluded` — исключение.""" - if not rule_ids: - return [] - stmt = ( - select(EliminationRuleAccount, ChartOfAccount.code) - .join(ChartOfAccount, ChartOfAccount.id == EliminationRuleAccount.account_id) - .where(EliminationRuleAccount.rule_id.in_(rule_ids)) - .order_by(EliminationRuleAccount.rule_id, EliminationRuleAccount.company_no, ChartOfAccount.code) - ) - return [(account, code) for account, code in (await session.execute(stmt)).all()] - - async def rule_with_account( session: AsyncSession, rule_id: uuid.UUID ) -> tuple[EliminationRule | None, list[EliminationRuleAccount]]: diff --git a/api/src/services/intercompany_matrix.py b/api/src/services/intercompany_matrix.py index 8e70e49..1ddf739 100644 --- a/api/src/services/intercompany_matrix.py +++ b/api/src/services/intercompany_matrix.py @@ -609,15 +609,6 @@ class IntercompanyMatrixService: items = calculate_rule_total_items(osv_result.consolidated.rows, rules, list(osv_result.members)) return EliminationTotalsOut(version_no=version.elimination_rules_version, items=items) - async def build( - self, - version_id: uuid.UUID, - selection: MatrixSelection, - ) -> IntercompanyMatrixOut: - """Счета принимает готовыми; выбор режима ALL/MANUAL выполняется вызывающим кодом.""" - result = await self._osv_service.build_with_members(version_id) - return self._calculate(result.consolidated.rows, result.members, selection) - def _calculate( self, rows: Iterable[ConsolidatedRow], members: dict[uuid.UUID, Entity], selection: MatrixSelection ) -> IntercompanyMatrixOut: