from fastapi import APIRouter, Depends from sqlalchemy.orm import Session from .. import models, schemas, database from ..security import require_roles owners = APIRouter(prefix="/owners", tags=["owners"]) @owners.post("/", response_model=schemas.OwnerRead, dependencies=[Depends(require_roles(["admin", "editor"]))]) def create_owner(item: schemas.OwnerCreate, db: Session = Depends(database.get_db)): obj = models.Owner(**item.dict()) db.add(obj) db.commit() db.refresh(obj) return obj @owners.get("/", response_model=list[schemas.OwnerRead]) def list_owners(db: Session = Depends(database.get_db)): return db.query(models.Owner).all()