from typing import List, Dict, Any from fastapi import APIRouter, Depends from sqlalchemy.orm import Session from models.currency import Currency from routes.dependencies import get_db router = APIRouter(prefix="/api/currencies", tags=["Currencies"]) @router.get("/", response_model=List[Dict[str, Any]]) def list_currencies(db: Session = Depends(get_db)): results = [] for c in db.query(Currency).filter_by(is_active=True).order_by(Currency.code).all(): results.append({"id": c.code, "name": f"{c.name} ({c.code})", "symbol": c.symbol}) if not results: results.append({"id": "USD", "name": "US Dollar (USD)", "symbol": "$"}) return results