Toma de muestras: mostrar el F-LAB-08 en los turnos de solo entrega
Cuando recepción marca "solo entrega de muestras", el puesto de toma no mostraba ningún formulario. No era que no se generara: el backend ya lo creaba por la vía del lugar —los ocho puestos de toma, Pediatría y Ginecología tienen vinculado el formulario 16— y era la interfaz la que lo escondía. En 30 días: 59 turnos de solo entrega, 34 con el F-LAB-08 ya creado, 0 firmados. Eran tres bloqueos, no uno: - la sección de formularios se ocultaba por solo_muestras, y como los puestos de toma van en modo embebido, esa sección es la única vía para abrirlo; - no se cargaba el formulario embebido; - ni se refrescaba la lista cada 5 s, así que al firmar no se habría visto el cambio. Se conserva la exención del bloqueo para finalizar (línea 1685): el formulario aparece y se puede llenar, pero un turno de solo entrega no queda atrapado si no se firma. Cerrar la cola por esto sería peor que el problema que resuelve. Estos turnos no traen exámenes, así que la lista solo puede contener los formularios del puesto: no hay riesgo de que aparezcan consentimientos de exámenes que no aplican. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5
parent
b3a6be8f17
commit
0ec0edf245
@@ -1355,9 +1355,11 @@ async function seleccionarSinLlamar(turnoId) {
|
||||
mostrarCabeceraTurno(t);
|
||||
await cargarFichaSolicitud(t.id);
|
||||
clearInterval(pollingConsentId);
|
||||
if (!_esSoloEntrega(t))
|
||||
pollingConsentId = setInterval(() => actualizarConsentimientos(turnoActivo?.id), 5000);
|
||||
if (LUGAR_FORM_MODO === 'embebido' && lugarId && !_esSoloEntrega(t))
|
||||
// También para solo entrega de muestras: a esos turnos les corresponde el
|
||||
// formulario del puesto, así que la lista tiene que refrescarse igual o al
|
||||
// firmar no se vería el cambio.
|
||||
pollingConsentId = setInterval(() => actualizarConsentimientos(turnoActivo?.id), 5000);
|
||||
if (LUGAR_FORM_MODO === 'embebido' && lugarId)
|
||||
cargarFormEmbebido(t.id);
|
||||
mostrarFichaMobile();
|
||||
}
|
||||
@@ -1400,9 +1402,8 @@ async function abrirFicha(turno) {
|
||||
mostrarCabeceraTurno(turno);
|
||||
await cargarFichaSolicitud(turno.id);
|
||||
clearInterval(pollingConsentId);
|
||||
if (!_esSoloEntrega(turno))
|
||||
pollingConsentId = setInterval(() => actualizarConsentimientos(turnoActivo?.id), 5000);
|
||||
if (LUGAR_FORM_MODO === 'embebido' && lugarId && !_esSoloEntrega(turno))
|
||||
pollingConsentId = setInterval(() => actualizarConsentimientos(turnoActivo?.id), 5000);
|
||||
if (LUGAR_FORM_MODO === 'embebido' && lugarId)
|
||||
cargarFormEmbebido(turno.id);
|
||||
mostrarFichaMobile();
|
||||
}
|
||||
@@ -1468,10 +1469,15 @@ async function cargarFichaSolicitud(turnoId) {
|
||||
const esSoloMuestras = !!(sol && sol.solo_muestras == 1);
|
||||
document.getElementById('badge-solo-muestras')?.classList.toggle('d-none', !esSoloMuestras);
|
||||
|
||||
// Ocultar sección consentimientos y formulario embebido cuando es solo entrega
|
||||
// La sección de formularios ya NO se esconde por ser solo entrega de
|
||||
// muestras. Esos turnos no traen exámenes, pero sí les corresponde el
|
||||
// formulario del puesto (F-LAB-08, Datos Toma de Muestras): el backend
|
||||
// se lo venía creando y la interfaz lo ocultaba, así que se acumulaban
|
||||
// creados y sin firmar. Quién se muestra lo decide renderConsentimientos
|
||||
// según lo que realmente haya que llenar.
|
||||
const secConsent = document.getElementById('sec-consent');
|
||||
const secForm = document.getElementById('sec-form-embebido');
|
||||
if (secConsent) secConsent.classList.toggle('d-none', esSoloMuestras);
|
||||
if (secConsent) secConsent.classList.remove('d-none');
|
||||
if (secForm) secForm.classList.add('d-none');
|
||||
|
||||
// Embarazada
|
||||
@@ -2230,7 +2236,7 @@ function resetFicha() {
|
||||
_muestrasActivas = [];
|
||||
const secMuestras = document.getElementById('sec-muestras');
|
||||
if (secMuestras) secMuestras.classList.add('d-none');
|
||||
// Restaurar sección consent (puede haber sido ocultada por turno solo-muestras)
|
||||
// Dejar la sección visible para la siguiente ficha
|
||||
document.getElementById('sec-consent')?.classList.remove('d-none');
|
||||
document.getElementById('badge-solo-muestras')?.classList.add('d-none');
|
||||
document.getElementById('ficha-orden').classList.add('d-none');
|
||||
|
||||
Reference in New Issue
Block a user