From 974e6c63786f2fb8b9e5bb498c522ee39a9ea2bc Mon Sep 17 00:00:00 2001 From: Christoph Califice Date: Sun, 12 Apr 2026 22:58:00 -0300 Subject: [PATCH] docker --- .vscode/launch.json | 20 +++++++++++++++ Dockerfile | 10 ++++++++ convert-to-json.py => __init__.py | 0 convert_to_json.py | 21 ++++++++++++++++ docker-compose.yml | 9 +++++++ main.py | 23 +++++++++++++++--- test/NotaNegociacao-11775539-04-11-2025-0.pdf | Bin 0 -> 45638 bytes 7 files changed, 79 insertions(+), 4 deletions(-) create mode 100644 .vscode/launch.json create mode 100644 Dockerfile rename convert-to-json.py => __init__.py (100%) create mode 100644 convert_to_json.py create mode 100644 docker-compose.yml create mode 100644 test/NotaNegociacao-11775539-04-11-2025-0.pdf diff --git a/.vscode/launch.json b/.vscode/launch.json new file mode 100644 index 0000000..d5dd92f --- /dev/null +++ b/.vscode/launch.json @@ -0,0 +1,20 @@ +{ + // Use IntelliSense to learn about possible attributes. + // Hover to view descriptions of existing attributes. + // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387 + "version": "0.2.0", + "configurations": [ + + { + "name": "Python Debugger: FastAPI", + "type": "debugpy", + "request": "launch", + "module": "uvicorn", + "args": [ + "main:app", + "--reload" + ], + "jinja": true + } + ] +} \ No newline at end of file diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..5d7eb03 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,10 @@ +FROM python:3.14 + +WORKDIR /code +COPY ./requirements.txt /code/requirements.txt + +RUN pip install --no-cache-dir --upgrade -r /code/requirements.txt + +COPY . /code/ + +CMD ["fastapi", "run", "app/main.py", "--port", "80"] \ No newline at end of file diff --git a/convert-to-json.py b/__init__.py similarity index 100% rename from convert-to-json.py rename to __init__.py diff --git a/convert_to_json.py b/convert_to_json.py new file mode 100644 index 0000000..e59b9ef --- /dev/null +++ b/convert_to_json.py @@ -0,0 +1,21 @@ +from fastapi import UploadFile +from correpy.parsers.brokerage_notes.parser_factory import ParserFactory +import logging + + + + + + +# Check if requires password based on file name +async def open_file(file: UploadFile): + + brokerage_notes = None + + # Rico + if "11775539" in file.filename: + logger.info("[convert_to_json] Reading Rico notes") + #brokerage_notes = ParserFactory(brokerage_note=content, password=RICO_PASSW).parse() + + + print(brokerage_notes) \ No newline at end of file diff --git a/docker-compose.yml b/docker-compose.yml new file mode 100644 index 0000000..78a44a8 --- /dev/null +++ b/docker-compose.yml @@ -0,0 +1,9 @@ +services: + brokerage-note-converter: + container_name: brokerage-note-converter + build: . + dockerfile: Dockerfile + ports: + - "8000:80" + restart: unless-stopped + diff --git a/main.py b/main.py index 520c76f..9e0f68f 100644 --- a/main.py +++ b/main.py @@ -1,13 +1,28 @@ -from fastapi import FastAPI +from fastapi import FastAPI, File, UploadFile +import logging +from correpy.parsers.brokerage_notes.parser_factory import ParserFactory + + +logging.basicConfig() +logger = logging.getLogger('uvicorn.error') app = FastAPI() +RICO_PASSW = "052" @app.get("/") def read_root(): return {"Hello": "World"} -@app.get("/test") -def test(): - return "Test" \ No newline at end of file +@app.post("/convert-brokerage-note") +async def convert_brokerage_note(file: UploadFile): + + content = file.file.read() + + if "11775539" in file.filename: + logger.info("Parsing Rico note") + brokerage_notes = ParserFactory(brokerage_note=content, password=RICO_PASSW).parse() + + + return {"fileName": file.filename, "result": brokerage_notes} \ No newline at end of file diff --git a/test/NotaNegociacao-11775539-04-11-2025-0.pdf b/test/NotaNegociacao-11775539-04-11-2025-0.pdf new file mode 100644 index 0000000000000000000000000000000000000000..e2556afc10d1348d4782948878178c3160168c18 GIT binary patch literal 45638 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⪚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 dcvygtHHwj=^FRI@AP^5bCo&C