Refeita todas as rotas com FLASK2

This commit is contained in:
looccasgtr 2025-05-08 17:00:12 -04:00
parent 318e5353e7
commit 23b18ff30c
2 changed files with 29 additions and 42 deletions

View File

@ -1,26 +1,20 @@
from fastapi import APIRouter, Depends
from sqlalchemy.orm import Session
from flask import Blueprint, request, jsonify
from models.doc_tag import DocTag
from database import SessionLocal
from models.base import db
import uuid
router = APIRouter(prefix="/doc-tags", tags=["DocTag"])
doc_tag_routes = Blueprint("doc_tag_routes", __name__, url_prefix="/doc-tags")
def get_db():
db = SessionLocal()
try:
yield db
finally:
db.close()
@doc_tag_routes.route("/", methods=["POST"])
def create_doc_tag():
documento_id = request.json.get("documento_id")
tag_id = request.json.get("tag_id")
new_doc_tag = DocTag(documento_id=documento_id, tag_id=tag_id)
db.session.add(new_doc_tag)
db.session.commit()
return jsonify({"id": new_doc_tag.id, "documento_id": new_doc_tag.documento_id, "tag_id": new_doc_tag.tag_id}), 201
@router.post("/")
def create_doc_tag(documento_id: uuid.UUID, tag_id: uuid.UUID, db: Session = Depends(get_db)):
dt = DocTag(documento_id=documento_id, tag_id=tag_id)
db.add(dt)
db.commit()
db.refresh(dt)
return dt
@router.get("/")
def list_doc_tags(db: Session = Depends(get_db)):
return db.query(DocTag).all()
@doc_tag_routes.route("/", methods=["GET"])
def list_doc_tags():
doc_tags = DocTag.query.all()
return jsonify([{"id": dt.id, "documento_id": dt.documento_id, "tag_id": dt.tag_id} for dt in doc_tags]), 200

View File

@ -1,25 +1,18 @@
from fastapi import APIRouter, Depends
from sqlalchemy.orm import Session
from flask import Blueprint, request, jsonify
from models.tag import Tag
from database import SessionLocal
from models.base import db
router = APIRouter(prefix="/tags", tags=["Tags"])
tag_routes = Blueprint("tag_routes", __name__, url_prefix="/tags")
def get_db():
db = SessionLocal()
try:
yield db
finally:
db.close()
@tag_routes.route("/", methods=["POST"])
def create_tag():
nome = request.json.get("nome")
new_tag = Tag(nome=nome)
db.session.add(new_tag)
db.session.commit()
return jsonify({"id": new_tag.id, "nome": new_tag.nome}), 201
@router.post("/")
def create_tag(nome: str, db: Session = Depends(get_db)):
tag = Tag(nome=nome)
db.add(tag)
db.commit()
db.refresh(tag)
return tag
@router.get("/")
def list_tags(db: Session = Depends(get_db)):
return db.query(Tag).all()
@tag_routes.route("/", methods=["GET"])
def list_tags():
tags = Tag.query.all()
return jsonify([{"id": tag.id, "nome": tag.nome} for tag in tags]), 200