27 lines
741 B
Python
27 lines
741 B
Python
|
|
|
||
|
|
|
||
|
|
from fastapi import APIRouter, Depends, HTTPException, Path, Query
|
||
|
|
from sqlmodel import select
|
||
|
|
|
||
|
|
from ..model import Status, get_session
|
||
|
|
|
||
|
|
router = APIRouter(
|
||
|
|
prefix="/status",
|
||
|
|
tags=["status"],
|
||
|
|
)
|
||
|
|
|
||
|
|
@router.get("/", response_model=list[Status])
|
||
|
|
async def get_statuses(session=Depends(get_session)):
|
||
|
|
"""List of Statuses"""
|
||
|
|
return session.exec(select(Status)).all()
|
||
|
|
|
||
|
|
@router.get("/{status}", response_model=Status, responses={404: {"description": "Not found"}})
|
||
|
|
async def get_status(
|
||
|
|
status: str,
|
||
|
|
session=Depends(get_session)):
|
||
|
|
"""Get a Status"""
|
||
|
|
result = session.get(Status, status)
|
||
|
|
if not result:
|
||
|
|
raise HTTPException(status_code=404, detail=f"Status {status!r} not found")
|
||
|
|
return result
|