From 63fcbe36113b7489d71b7e29f22e0b9405d49b2a Mon Sep 17 00:00:00 2001 From: Lizandro Guarnizo <77708265+lizandrogd@users.noreply.github.com> Date: Thu, 25 Jun 2026 20:53:16 -0500 Subject: [PATCH] Fix factura input parsing: extract numeric part from "LHXC 3918" format MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit NUM_FACTURA is numeric in Firebird — strip prefix and spaces before querying. Co-Authored-By: Claude Sonnet 4.6 --- app/routes/transaccion.py | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/app/routes/transaccion.py b/app/routes/transaccion.py index 7cdf935..db11903 100644 --- a/app/routes/transaccion.py +++ b/app/routes/transaccion.py @@ -57,12 +57,17 @@ async def preview_transaccion( fb.disconnect() return JSONResponse({"success": False, "message": "Ingresa el número de factura"}) + # Extraer solo la parte numérica: "LHXC 3918" o "LHXC-3918" → 3918 + import re as _re + nums = _re.findall(r'\d+', factura) + num_factura_val = int(nums[-1]) if nums else factura + params = { "fecha_ini": f"{fecha_inicio} 00:00:00", "fecha_fin": f"{fecha_fin} 23:59:59", } if ":num_factura" in q["query_text"]: - params["num_factura"] = int(factura) if factura.isdigit() else factura + params["num_factura"] = num_factura_val success, error, rows = fb.execute_query(q["query_text"], params) fb.disconnect() @@ -109,12 +114,17 @@ async def send_transaccion( fb.disconnect() return JSONResponse({"success": False, "message": "Ingresa el número de factura"}) + # Extraer solo la parte numérica: "LHXC 3918" o "LHXC-3918" → 3918 + import re as _re + nums = _re.findall(r'\d+', factura) + num_factura_val = int(nums[-1]) if nums else factura + params = { "fecha_ini": f"{fecha_inicio} 00:00:00", "fecha_fin": f"{fecha_fin} 23:59:59", } if ":num_factura" in q["query_text"]: - params["num_factura"] = int(factura) if factura.isdigit() else factura + params["num_factura"] = num_factura_val success, error, rows = fb.execute_query(q["query_text"], params) fb.disconnect()