Adding sorting to Accounts

This commit is contained in:
2025-02-02 23:40:19 +01:00
parent fb7e46efdb
commit a33f84c5b4
6 changed files with 51 additions and 38 deletions

View File

@@ -1,10 +1,11 @@
from uuid import UUID
from fastapi import APIRouter, HTTPException, Depends
from fastapi_filter import FilterDepends
from fastapi_pagination import Page
from fastapi_pagination.ext.sqlmodel import paginate
from account.models import Account, AccountCreate, AccountRead, AccountUpdate
from account.models import Account, AccountCreate, AccountRead, AccountUpdate, AccountFilters
from db import SessionDep
from user.manager import get_current_user
@@ -16,16 +17,22 @@ def create_account(account: AccountCreate, session: SessionDep, current_user=Dep
return result
@router.get("")
def read_accounts(session: SessionDep, current_user=Depends(get_current_user)) -> Page[AccountRead]:
return paginate(session, Account.list_accounts())
def read_accounts(session: SessionDep,
filters: AccountFilters = FilterDepends(AccountFilters),
current_user=Depends(get_current_user)) -> Page[AccountRead]:
return paginate(session, Account.list_accounts(filters))
@router.get("")
def read_assets(session: SessionDep, current_user=Depends(get_current_user)) -> Page[AccountRead]:
return paginate(session, Account.list_assets())
@router.get("/assets")
def read_assets(session: SessionDep,
filters: AccountFilters = FilterDepends(AccountFilters),
current_user=Depends(get_current_user)) -> Page[AccountRead]:
return paginate(session, Account.list_assets(filters))
@router.get("")
def read_liabilities(session: SessionDep, current_user=Depends(get_current_user)) -> Page[AccountRead]:
return paginate(session, Account.list_liabilities())
@router.get("/liabilities")
def read_liabilities(session: SessionDep,
filters: AccountFilters = FilterDepends(AccountFilters),
current_user=Depends(get_current_user)) -> Page[AccountRead]:
return paginate(session, Account.list_liabilities(filters))
@router.get("/{account_id}")
def read_account(account_id: UUID, session: SessionDep, current_user=Depends(get_current_user)) -> AccountRead: