26 lines
973 B
Python
26 lines
973 B
Python
from fastapi import APIRouter, HTTPException, Depends
|
|
from sqlalchemy.orm import Session
|
|
from database import get_db
|
|
|
|
|
|
router_organizacao = APIRouter(prefix="/organizacoes", tags=["Organizacoes"])
|
|
|
|
@router_organizacao.post("/")
|
|
def criar_organizacao(nome: str, db: Session = Depends(get_db)):
|
|
organizacao = db.query(organizacao).filter(organizacao.nome == nome).first()
|
|
if organizacao:
|
|
raise HTTPException(status_code=400, detail="Organização já existe")
|
|
|
|
nova_organizacao = organizacao(nome=nome)
|
|
db.add(nova_organizacao)
|
|
db.commit()
|
|
db.refresh(nova_organizacao)
|
|
return nova_organizacao
|
|
|
|
@router_organizacao.get("/{organizacao_id}")
|
|
def obter_organizacao(organizacao_id: int, db: Session = Depends(get_db)):
|
|
organizacao = db.query(organizacao).filter(organizacao.id == organizacao_id).first()
|
|
if not organizacao:
|
|
raise HTTPException(status_code=404, detail="Organização não encontrada")
|
|
return organizacao
|