23 lines
632 B
Python
23 lines
632 B
Python
from datetime import datetime
|
|
from typing import Optional
|
|
|
|
from fastapi import APIRouter, Depends, Query
|
|
from sqlalchemy.orm import Session
|
|
|
|
from api.users import require_superuser
|
|
from db.database import get_db
|
|
from db.crud import get_usage_stats
|
|
from schemas.user import User
|
|
|
|
router = APIRouter(prefix="/admin", tags=["admin"])
|
|
|
|
|
|
@router.get("/usage")
|
|
async def get_usage_statistics(
|
|
date_from: Optional[datetime] = Query(None),
|
|
date_to: Optional[datetime] = Query(None),
|
|
db: Session = Depends(get_db),
|
|
_: User = Depends(require_superuser),
|
|
):
|
|
return get_usage_stats(db, date_from=date_from, date_to=date_to)
|