feat(pacientes): modo insertar en sync-all — solo crea nuevos, omite existentes

sync_todos() ahora acepta modo='insertar'|'upsert'. La ruta /pacientes/sync-all
usa insertar: skippea cédulas que ya están en lab_pacientes. Los hooks
automáticos (terceros/automation) siguen en upsert.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
Lizandro Guarnizo
2026-07-09 11:06:14 -05:00
co-authored by Claude Sonnet 4.6
parent e7c6bc794a
commit 1aab14f705
3 changed files with 27 additions and 14 deletions
+4 -4
View File
@@ -117,12 +117,12 @@ async def sync_all(
return JSONResponse({"success": False, "message": "No se encontraron pacientes con esos criterios."})
timeout = int(configs.get("api_timeout", 30))
resultado = await sync_todos(rows, ingest_url, wa_key, timeout)
resultado = await sync_todos(rows, ingest_url, wa_key, timeout, modo="insertar")
resultado["success"] = True
resultado["message"] = (
f"{resultado['total']} pacientes procesados — "
f"{resultado['created']} creados, "
f"{resultado['updated']} actualizados, "
f"{resultado['total']} procesados — "
f"{resultado['created']} nuevos, "
f"{resultado['skipped']} ya existían, "
f"{resultado['errores']} errores."
)
return JSONResponse(resultado)