"""Transactions router.""" from typing import Optional from fastapi import APIRouter, Depends, Query from sqlalchemy.orm import Session from app.auth import get_current_user, AdminUser from app.database import get_db from app.services import airwallex_service router = APIRouter(prefix="/api", tags=["transactions"]) @router.get("/transactions") def list_transactions( page_num: int = Query(0, ge=0), page_size: int = Query(20, ge=1, le=100), card_id: Optional[str] = None, from_created_at: Optional[str] = None, to_created_at: Optional[str] = None, db: Session = Depends(get_db), user: AdminUser = Depends(get_current_user), ): """List transactions.""" return airwallex_service.list_transactions( db, page_num, page_size, card_id, from_created_at, to_created_at ) @router.get("/authorizations") def list_authorizations( page_num: int = Query(0, ge=0), page_size: int = Query(20, ge=1, le=100), card_id: Optional[str] = None, status: Optional[str] = None, from_created_at: Optional[str] = None, to_created_at: Optional[str] = None, db: Session = Depends(get_db), user: AdminUser = Depends(get_current_user), ): """List authorizations.""" return airwallex_service.list_authorizations( db, page_num, page_size, card_id, status, from_created_at, to_created_at )