from fastapi import APIRouter, Depends
from sqlmodel import Session, select
from app.db import get_session
from app.models import Supplier, User
from app.schemas import SupplierCreate
from app.security import get_current_user, require_roles, WRITE_ROLES
router=APIRouter(prefix="/suppliers", tags=["suppliers"])
@router.get("")
def list_suppliers(user:User=Depends(get_current_user), session:Session=Depends(get_session)):
    return session.exec(select(Supplier).where(Supplier.tenant_id==user.tenant_id)).all()
@router.post("")
def create_supplier(data:SupplierCreate, user:User=Depends(require_roles(*WRITE_ROLES)), session:Session=Depends(get_session)):
    s=Supplier(tenant_id=user.tenant_id, **data.model_dump()); session.add(s); session.commit(); session.refresh(s); return s
