Files
asuinventory/backend/routers/components.py
2025-11-10 11:28:49 +03:00

20 lines
714 B
Python

from fastapi import APIRouter, Depends
from sqlalchemy.orm import Session
from .. import models, schemas, database
from ..security import require_roles
components = APIRouter(prefix="/components", tags=["components"])
@components.post("/", response_model=schemas.ComponentRead, dependencies=[Depends(require_roles(["admin", "editor"]))])
def create_component(item: schemas.ComponentCreate, db: Session = Depends(database.get_db)):
obj = models.Component(**item.dict())
db.add(obj)
db.commit()
db.refresh(obj)
return obj
@components.get("/", response_model=list[schemas.ComponentRead])
def list_components(db: Session = Depends(database.get_db)):
return db.query(models.Component).all()