From 23b18ff30ca152eb433364f0f480c52cf584b173 Mon Sep 17 00:00:00 2001 From: looccasgtr Date: Thu, 8 May 2025 17:00:12 -0400 Subject: [PATCH] Refeita todas as rotas com FLASK2 --- app/routes/doc_tag_routes.py | 36 +++++++++++++++--------------------- app/routes/tag_routes.py | 35 ++++++++++++++--------------------- 2 files changed, 29 insertions(+), 42 deletions(-) diff --git a/app/routes/doc_tag_routes.py b/app/routes/doc_tag_routes.py index 6225de2..c9798c8 100644 --- a/app/routes/doc_tag_routes.py +++ b/app/routes/doc_tag_routes.py @@ -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 diff --git a/app/routes/tag_routes.py b/app/routes/tag_routes.py index 55519bb..36c124d 100644 --- a/app/routes/tag_routes.py +++ b/app/routes/tag_routes.py @@ -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 \ No newline at end of file