from fastapi import APIRouter,Depends from sqlalchemy.orm import Session from app.db.session import SessionLocal from app.services.service import log_event,get_all_events,get_event_stats from app.schemas.schema import DrowsinessEventCreate,DrowsinessEventRead router=APIRouter() def get_db(): db=SessionLocal() try: yield db finally: db.close() @router.post("/detect",response_model=DrowsinessEventRead) def detect_event(event:DrowsinessEventCreate,db:Session=Depends(get_db)): return log_event(db,event=event) @router.get("/events",response_model=list[DrowsinessEventRead]) def list_events(db:Session=Depends(get_db),): return get_all_events(db) @router.get("/stats") def stats(db:Session=Depends(get_db)): return get_event_stats(db)