Moving ledger route conversion to resource

This commit is contained in:
2025-02-16 23:13:56 +01:00
parent a83711315f
commit ab4ee7492f
2 changed files with 15 additions and 10 deletions

View File

@@ -3,16 +3,23 @@ from datetime import date
from sqlalchemy import and_, select
from sqlalchemy.orm import aliased
from ledger.schema import TransactionLedgerRead
from transaction.models import Split, Transaction
class LedgerResource:
@classmethod
def get_ledger(cls, session, account_id):
split_account = aliased(Split)
return session.exec(
select(Transaction, split_account).join(split_account, and_(
split_account.account_id == account_id,
Transaction.id == split_account.transaction_id
))).all()
stmt = select(Transaction, split_account).join(
split_account,
and_(Transaction.id == split_account.transaction_id, split_account.account_id == account_id)
)
result = []
for transaction, split in session.exec(stmt).all():
result.append(TransactionLedgerRead(transaction=transaction, account_split=split))
return result