25 lines
828 B
Python
25 lines
828 B
Python
"""Ручные назначения строк ОСВ в версии консолидации."""
|
||
|
||
import uuid
|
||
|
||
from sqlalchemy import select
|
||
from sqlalchemy.ext.asyncio import AsyncSession
|
||
|
||
from src.models.enums import StatementType
|
||
from src.models.kfo import VgoAssignment
|
||
|
||
|
||
async def list_assignments(
|
||
session: AsyncSession, version_id: uuid.UUID, statement_type: StatementType
|
||
) -> list[VgoAssignment]:
|
||
"""Все ручные решения для версии и типа отчётности."""
|
||
stmt = (
|
||
select(VgoAssignment)
|
||
.where(
|
||
VgoAssignment.consolidation_version_id == version_id,
|
||
VgoAssignment.statement_type == statement_type,
|
||
)
|
||
.order_by(VgoAssignment.created_at, VgoAssignment.id)
|
||
)
|
||
return list((await session.scalars(stmt)).all())
|