File size: 779 Bytes
a40adc0
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
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)