Files
aidoit.top/apps/api/app/modules/projects/router.py
T
Pavel Kerndl c0b013f067
CI / frontend (push) Canceled after 0s
CI / api (push) Canceled after 0s
Initialize Aidoit v0.1 monorepo
2026-07-27 18:27:37 +02:00

29 lines
855 B
Python

from fastapi import APIRouter, HTTPException, status
from app.modules.projects.schemas import ProjectCreate, ProjectRead
from app.modules.projects.service import project_service
router = APIRouter(prefix="/projects", tags=["projects"])
@router.get("", response_model=list[ProjectRead])
async def list_projects() -> list[ProjectRead]:
return project_service.list()
@router.post(
"",
response_model=ProjectRead,
status_code=status.HTTP_201_CREATED,
)
async def create_project(payload: ProjectCreate) -> ProjectRead:
return project_service.create(payload)
@router.get("/{project_id}", response_model=ProjectRead)
async def get_project(project_id: int) -> ProjectRead:
project = project_service.get(project_id)
if project is None:
raise HTTPException(status_code=404, detail="Project not found")
return project