From 5a8787bbc4d27b3bd80517df1d7649c3824b0e3a Mon Sep 17 00:00:00 2001 From: Claude Agent Date: Wed, 17 Jun 2026 06:51:21 +0000 Subject: [PATCH] chore(legacy): muta proiectul Visual FoxPro in legacy-vfp/ Codul VFP original (ROAAUTO) era doar de testare/proba si nu se mai dezvolta. Mutat in legacy-vfp/ (sursa .prg, proiect .pjx/.PJT, date .DBF/.CDX/.FPT, test-comenzi.xml). Actualizat caile DBF default in tools/import_dbf.py si referinta din tests/test_import_dbf.py. Adaugat legacy-vfp/README.md. Co-Authored-By: Claude Opus 4.8 (1M context) --- legacy-vfp/README.md | 31 ++++++++++++++++++ .../export_comenzi.prg | 0 .../mapare_prestatii.CDX | Bin .../mapare_prestatii.DBF | Bin .../mapare_prestatii.FPT | Bin nfjsonread.prg => legacy-vfp/nfjsonread.prg | 0 .../prestatii_rar.CDX | Bin .../prestatii_rar.DBF | Bin rar-forms.prg => legacy-vfp/rar-forms.prg | 0 .../rar_advanced.prg | 0 .../rar_automate.prg | 0 .../rar_autopass.PJT | Bin .../rar_autopass.pjx | Bin .../rar_autopass.prg | 0 .../test-comenzi.xml | 0 tests/test_import_dbf.py | 2 +- tools/import_dbf.py | 6 ++-- 17 files changed, 35 insertions(+), 4 deletions(-) create mode 100644 legacy-vfp/README.md rename export_comenzi.prg => legacy-vfp/export_comenzi.prg (100%) rename mapare_prestatii.CDX => legacy-vfp/mapare_prestatii.CDX (100%) rename mapare_prestatii.DBF => legacy-vfp/mapare_prestatii.DBF (100%) rename mapare_prestatii.FPT => legacy-vfp/mapare_prestatii.FPT (100%) rename nfjsonread.prg => legacy-vfp/nfjsonread.prg (100%) rename prestatii_rar.CDX => legacy-vfp/prestatii_rar.CDX (100%) rename prestatii_rar.DBF => legacy-vfp/prestatii_rar.DBF (100%) rename rar-forms.prg => legacy-vfp/rar-forms.prg (100%) rename rar_advanced.prg => legacy-vfp/rar_advanced.prg (100%) rename rar_automate.prg => legacy-vfp/rar_automate.prg (100%) rename rar_autopass.PJT => legacy-vfp/rar_autopass.PJT (100%) rename rar_autopass.pjx => legacy-vfp/rar_autopass.pjx (100%) rename rar_autopass.prg => legacy-vfp/rar_autopass.prg (100%) rename test-comenzi.xml => legacy-vfp/test-comenzi.xml (100%) diff --git a/legacy-vfp/README.md b/legacy-vfp/README.md new file mode 100644 index 0000000..0d82679 --- /dev/null +++ b/legacy-vfp/README.md @@ -0,0 +1,31 @@ +# legacy-vfp/ — arhiva Visual FoxPro (ROAAUTO) + +Proiectul **Visual FoxPro** original (clasa `RarAutoPass`, ROAAUTO) care declara +prestatiile la RAR AUTOPASS. A fost folosit doar pentru testare si proba pe endpoint-ul +de test RAR; **nu se mai dezvolta** — gateway-ul Python din `../app/` il inlocuieste. + +Pastrat ca **sursa de adevar de contract** pentru portarea web si ca sursa pentru migrarea +DBF. + +## Continut + +| Fisier | Rol | Portat in | +|--------|-----|-----------| +| `rar_autopass.prg` | clasa `RarAutoPass`: login+JWT, nomenclator, postPrezentare, cancel | `app/rar_client.py` | +| `rar-forms.prg` | UI + timer auto-process | logica -> worker | +| `export_comenzi.prg` | citeste comenzi/operatii, construieste payload | client subtire `POST /v1/prezentari` | +| `rar_advanced.prg` | export Excel (oglinda treapta 2) | referinta import xlsx/csv | +| `rar_automate.prg`, `nfjsonread.prg` | automatizare / parse JSON | referinta | +| `rar_autopass.pjx` / `.PJT` | fisierele de proiect VFP | — | +| `mapare_prestatii.DBF` (+ `.CDX`/`.FPT`) | cod_op_service -> codPrestatie | `operations_mapping` (via `tools/import_dbf.py`) | +| `prestatii_rar.DBF` (+ `.CDX`) | nomenclator {codPrestatie, numePrestatie} | `nomenclator_rar` (via `tools/import_dbf.py`) | +| `test-comenzi.xml` | comenzi de test (proba) | — | + +## Migrare DBF -> SQLite + +Datele din DBF se importa cu `tools/import_dbf.py` (caile default pointeaza deja aici): + +```bash +python3 -m tools.import_dbf # dry-run + raport +python3 -m tools.import_dbf --commit # scrie in SQLite +``` diff --git a/export_comenzi.prg b/legacy-vfp/export_comenzi.prg similarity index 100% rename from export_comenzi.prg rename to legacy-vfp/export_comenzi.prg diff --git a/mapare_prestatii.CDX b/legacy-vfp/mapare_prestatii.CDX similarity index 100% rename from mapare_prestatii.CDX rename to legacy-vfp/mapare_prestatii.CDX diff --git a/mapare_prestatii.DBF b/legacy-vfp/mapare_prestatii.DBF similarity index 100% rename from mapare_prestatii.DBF rename to legacy-vfp/mapare_prestatii.DBF diff --git a/mapare_prestatii.FPT b/legacy-vfp/mapare_prestatii.FPT similarity index 100% rename from mapare_prestatii.FPT rename to legacy-vfp/mapare_prestatii.FPT diff --git a/nfjsonread.prg b/legacy-vfp/nfjsonread.prg similarity index 100% rename from nfjsonread.prg rename to legacy-vfp/nfjsonread.prg diff --git a/prestatii_rar.CDX b/legacy-vfp/prestatii_rar.CDX similarity index 100% rename from prestatii_rar.CDX rename to legacy-vfp/prestatii_rar.CDX diff --git a/prestatii_rar.DBF b/legacy-vfp/prestatii_rar.DBF similarity index 100% rename from prestatii_rar.DBF rename to legacy-vfp/prestatii_rar.DBF diff --git a/rar-forms.prg b/legacy-vfp/rar-forms.prg similarity index 100% rename from rar-forms.prg rename to legacy-vfp/rar-forms.prg diff --git a/rar_advanced.prg b/legacy-vfp/rar_advanced.prg similarity index 100% rename from rar_advanced.prg rename to legacy-vfp/rar_advanced.prg diff --git a/rar_automate.prg b/legacy-vfp/rar_automate.prg similarity index 100% rename from rar_automate.prg rename to legacy-vfp/rar_automate.prg diff --git a/rar_autopass.PJT b/legacy-vfp/rar_autopass.PJT similarity index 100% rename from rar_autopass.PJT rename to legacy-vfp/rar_autopass.PJT diff --git a/rar_autopass.pjx b/legacy-vfp/rar_autopass.pjx similarity index 100% rename from rar_autopass.pjx rename to legacy-vfp/rar_autopass.pjx diff --git a/rar_autopass.prg b/legacy-vfp/rar_autopass.prg similarity index 100% rename from rar_autopass.prg rename to legacy-vfp/rar_autopass.prg diff --git a/test-comenzi.xml b/legacy-vfp/test-comenzi.xml similarity index 100% rename from test-comenzi.xml rename to legacy-vfp/test-comenzi.xml diff --git a/tests/test_import_dbf.py b/tests/test_import_dbf.py index b08d459..f800e75 100644 --- a/tests/test_import_dbf.py +++ b/tests/test_import_dbf.py @@ -77,7 +77,7 @@ def env(monkeypatch): def test_read_nomenclator_real_dbf(): from tools.import_dbf import read_nomenclator - rep = read_nomenclator(ROOT / "prestatii_rar.DBF") + rep = read_nomenclator(ROOT / "legacy-vfp" / "prestatii_rar.DBF") assert len(rep["rows"]) == 20 codes = {r["cod_prestatie"] for r in rep["rows"]} assert "OE-1" in codes and "R-ODO" in codes diff --git a/tools/import_dbf.py b/tools/import_dbf.py index 479f2d7..b114f32 100644 --- a/tools/import_dbf.py +++ b/tools/import_dbf.py @@ -30,9 +30,9 @@ from app.config import ROOT from app.db import get_connection, init_db from app.mapping import DEFAULT_ACCOUNT_ID -# DBF-urile vin din arhiva ROAAUTO din radacina repo-ului. -MAPARE_DBF = ROOT / "mapare_prestatii.DBF" -PREST_DBF = ROOT / "prestatii_rar.DBF" +# DBF-urile vin din arhiva ROAAUTO (legacy VFP), mutata in legacy-vfp/. +MAPARE_DBF = ROOT / "legacy-vfp" / "mapare_prestatii.DBF" +PREST_DBF = ROOT / "legacy-vfp" / "prestatii_rar.DBF" # Language driver al DBF-urilor = 0x03 (Windows ANSI / cp1252). Diacriticele # scrise ca literal '?' sunt in sursa, nu un artefact de encoding.