| 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) |
|
|