Compare commits

..

No commits in common. "23b18ff30ca152eb433364f0f480c52cf584b173" and "29b7b3918452c3663a92fff0ecd774510544b30f" have entirely different histories.

3 changed files with 63 additions and 43 deletions

View File

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

View File

@ -1,19 +1,26 @@
from flask import Blueprint, request, jsonify from fastapi import APIRouter, Depends
from sqlalchemy.orm import Session
from models.ocr_result import OCRResult from models.ocr_result import OCRResult
from models.base import db from database import SessionLocal
import uuid import uuid
ocr_routes = Blueprint("ocr_routes", __name__, url_prefix="/ocr") router = APIRouter(prefix="/ocr", tags=["OCR"])
@ocr_routes.route("/", methods=["POST"]) def get_db():
def create_ocr(): db = SessionLocal()
documento_id = request.json.get("documento_id") try:
new_ocr = OCRResult(documento_id=documento_id) yield db
db.session.add(new_ocr) finally:
db.session.commit() db.close()
return jsonify({"id": new_ocr.id, "documento_id": new_ocr.documento_id}), 201
@ocr_routes.route("/", methods=["GET"]) @router.post("/")
def list_ocr(): def create_ocr(documento_id: uuid.UUID, db: Session = Depends(get_db)):
ocrs = OCRResult.query.all() ocr = OCRResult(documento_id=documento_id)
return jsonify([{"id": ocr.id, "documento_id": ocr.documento_id} for ocr in ocrs]), 200 db.add(ocr)
db.commit()
db.refresh(ocr)
return ocr
@router.get("/")
def list_ocr(db: Session = Depends(get_db)):
return db.query(OCRResult).all()

View File

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