From e480e1497442355455b5d0316065080f21dd83ea Mon Sep 17 00:00:00 2001 From: Lizandro Guarnizo <77708265+lizandrogd@users.noreply.github.com> Date: Mon, 3 Aug 2026 14:39:22 -0500 Subject: [PATCH] Corregir fuga de tomas_detalle entre formularios del mismo turno MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit \$tomasDetalle solo se inicializaba dentro del if(\$esTomaProg), así que un formulario que NO es de toma progresiva (ej. "Datos Toma de Muestras") heredaba el arreglo del formulario anterior en el mismo turno (ej. "Control de Tomas de Muestras Prolongadas") si ese sí lo era. Se reinicia en cada vuelta del loop junto con tomas_total/tomas_firmadas. Co-Authored-By: Claude Sonnet 4.6 --- modules/turnero/api/get_consentimientos.php | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/modules/turnero/api/get_consentimientos.php b/modules/turnero/api/get_consentimientos.php index f8ee086..d7fb615 100644 --- a/modules/turnero/api/get_consentimientos.php +++ b/modules/turnero/api/get_consentimientos.php @@ -82,8 +82,9 @@ foreach ($consentimientos as &$c) { $overrideProg = $c['formulario_es_toma_prog'] ?? null; $esTomaProg = $overrideProg !== null ? (bool)(int)$overrideProg : count($camposFirmaPro) > 1; $dr = $c['datos_respuestas'] ? (json_decode($c['datos_respuestas'], true) ?? []) : []; - $tomasTotal = 0; - $tomasFirm = 0; + $tomasTotal = 0; + $tomasFirm = 0; + $tomasDetalle = []; // reiniciar cada vuelta: si no, un formulario sin tomas hereda las del anterior if ($esTomaProg) { // Mapear cada firma_profesional a los valores de examen de su sección condicional