From fb8fb9bc7a18f93adc437d6f869c3d7166d72eb5 Mon Sep 17 00:00:00 2001 From: Lizandro Guarnizo <77708265+lizandrogd@users.noreply.github.com> Date: Thu, 16 Jul 2026 20:30:15 -0500 Subject: [PATCH] =?UTF-8?q?feat:=20pre-llenar=20c=C3=A9dula=20del=20kiosko?= =?UTF-8?q?=20al=20crear=20paciente=20desde=20recepci=C3=B3n?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit El kiosko guarda la cédula en paciente_nombre del turno. Al abrir el modal de nuevo paciente, si el valor es numérico se pone en el campo documento (no en nombre). El foco cae en nombre para que el recepcionista complete los datos restantes. Campo editable normalmente. Co-Authored-By: Claude Sonnet 4.6 --- modules/turnero/views/recepcion.php | 24 +++++++++++++++++++++--- 1 file changed, 21 insertions(+), 3 deletions(-) diff --git a/modules/turnero/views/recepcion.php b/modules/turnero/views/recepcion.php index a3515a6..2dbca7b 100644 --- a/modules/turnero/views/recepcion.php +++ b/modules/turnero/views/recepcion.php @@ -2572,12 +2572,30 @@ async function abrirModalPaciente(id, nombrePrefill) { document.getElementById('mpac-titulo').textContent = 'Nuevo Paciente'; document.getElementById('mpac-subtitulo').textContent = 'Completa los datos del paciente'; if (nombrePrefill) { - document.getElementById('mpac-nombre').value = nombrePrefill; - mpacAvatar(nombrePrefill); + // Si es solo dígitos, viene del kiosko como cédula → ir al campo documento + if (/^\d+$/.test(nombrePrefill.trim())) { + document.getElementById('mpac-doc').value = nombrePrefill.trim(); + } else { + document.getElementById('mpac-nombre').value = nombrePrefill; + mpacAvatar(nombrePrefill); + } + } + // Pre-llenar cédula del kiosko si el turno activo la tiene y no se pasó ya + const docKiosko = turnoActivo?.paciente_nombre; + if (docKiosko && /^\d+$/.test(docKiosko.trim()) && !document.getElementById('mpac-doc').value) { + document.getElementById('mpac-doc').value = docKiosko.trim(); } _mpacModal().show(); } - setTimeout(() => document.getElementById('mpac-nombre').focus(), 300); + // Foco: si ya tiene doc pero no nombre, ir al nombre; si no, al doc + setTimeout(() => { + const focusEl = document.getElementById('mpac-doc').value && !document.getElementById('mpac-nombre').value + ? document.getElementById('mpac-nombre') + : document.getElementById('mpac-doc').value + ? document.getElementById('mpac-nombre') + : document.getElementById('mpac-doc'); + focusEl.focus(); + }, 300); } function mpacRellenar(p) {