diff --git a/src/lib/database/card.py b/src/lib/database/card.py new file mode 100644 index 0000000..8a88dd7 --- /dev/null +++ b/src/lib/database/card.py @@ -0,0 +1,20 @@ +from models.card import Card +from lib.database.database import get_db + + +def get_all_cards() -> list[Card]: + sql = "SELECT * FROM cards" + with get_db() as conn: + result = conn.execute(sql).fetchall() + cards: list[Card] = [] + for row in result: + card = Card( + id=str(row[0]), + title=row[1], + description=row[2], + point_value=row[3], + created_at=row[4], + updated_at=row[5], + ) + cards.append(card) + return cards diff --git a/src/routes/card.py b/src/routes/card.py index 3319706..a85f376 100644 --- a/src/routes/card.py +++ b/src/routes/card.py @@ -1,7 +1,16 @@ from fastapi import APIRouter +from models.card import Card +from lib.database.card import get_all_cards + router = APIRouter( prefix="/card", tags=["card"], responses={404: {"description": "Not found"}}, ) + + +@router.get("/", response_model=list[Card]) +async def get_cards() -> list[Card]: + """Get all cards""" + return get_all_cards()