|
1 | | -from fastapi import APIRouter, Depends, HTTPException |
| 1 | +from fastapi import HTTPException |
2 | 2 | from sqlmodel import select |
3 | 3 | from sqlmodel.ext.asyncio.session import AsyncSession |
4 | 4 | from app.models.overlay import Overlay |
5 | | -from app.db.session import get_db |
| 5 | +from app.schemas.overlay import OverlayCreate |
6 | 6 |
|
7 | | -router = APIRouter() |
8 | | - |
9 | | -async def get_overlays(session: AsyncSession = Depends(get_db)) -> list[Overlay]: |
| 7 | +async def get_overlays(session: AsyncSession) -> list[Overlay]: |
10 | 8 | result = await session.execute(select(Overlay)) |
11 | 9 | overlays = result.scalars().all() |
12 | 10 | return overlays |
13 | 11 |
|
14 | | -async def get_overlay(overlay_id: str, session: AsyncSession = Depends(get_db)) -> Overlay: |
15 | | - result = await session.execute(select(Overlay).where(Overlay.uuid == overlay_id)) |
16 | | - overlay = result.scalars().first() |
| 12 | +async def get_overlay(overlay_id: str, session: AsyncSession) -> Overlay: |
| 13 | + overlay = await session.get(Overlay, overlay_id) |
17 | 14 | if overlay is None: |
18 | 15 | raise HTTPException(status_code=404, detail="Overlay not found") |
19 | 16 | return overlay |
20 | 17 |
|
21 | | -async def add_overlay(overlay_data: Overlay, session: AsyncSession = Depends(get_db)) -> Overlay: |
22 | | - new_overlay = Overlay(**overlay_data.dict(exclude_unset=True)) |
| 18 | +async def add_overlay(overlay_data: OverlayCreate, session: AsyncSession) -> Overlay: |
| 19 | + new_overlay = Overlay(**overlay_data.dict()) |
23 | 20 | session.add(new_overlay) |
24 | 21 | await session.commit() |
25 | 22 | await session.refresh(new_overlay) |
|
0 commit comments