Bitácora: atribuir bien las firmas y registrar quién llama
Tres correcciones sobre lo reportado en E042. 1. La bitácora daba por hecho que firmado_at era del paciente, y lo anunciaba así en documentos que el paciente nunca firma: el F-LAB-08 solo lo firma el profesional y el F-LAB-28 lleva una firma por toma. Ahora mira qué firma hay realmente guardada; si no hay ninguna dice «completado» o «protocolo cerrado», según el caso. 2. Los protocolos prolongados desglosan cada toma con su hora y su firmante, que es el dato que interesa: en E042 se ve que el minuto 0 lo firmó Yesica y el minuto 150 Omaira. La firma general no distinguía eso. 3. firmar_profesional_consentimiento.php aceptaba el nombre del firmante que mandaba el navegador, y ese valor se carga al abrir la página: si el personal cambiaba de turno sin recargar, la firma final quedaba a nombre de quien abrió el formulario. Ahora se resuelve desde la sesión en el servidor, igual que ya hacía guardar_toma.php para cada toma. Además, llamar y rellamar no dejaban rastro —el turno solo guarda la hora del último llamado, que el rellamado sobrescribe—, así que la bitácora mostraba «Llamado a X» sin autor. Ahora se auditan ambos. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5
parent
ba35b24b30
commit
b0266f4b8b
@@ -10,6 +10,7 @@
|
||||
*/
|
||||
|
||||
require_once __DIR__ . '/_helpers.php';
|
||||
require_once __DIR__ . '/../../../classes/lab/ActividadAdmin.php';
|
||||
requireMethod('POST');
|
||||
requireTurnero();
|
||||
|
||||
@@ -144,6 +145,20 @@ try {
|
||||
$pdo->commit();
|
||||
notificarSSE((int) $turnoActualizado['sesion_id']);
|
||||
|
||||
// Quién llamó no se guardaba en ninguna parte: el turno solo conserva la hora
|
||||
// del último llamado, así que en la bitácora aparecía «Llamado a X» sin autor.
|
||||
try {
|
||||
(new ActividadAdmin())->registrar(
|
||||
adminId(), 'turnero', 'llamar_turno', $turnoId,
|
||||
[
|
||||
'turno_id' => $turnoId,
|
||||
'turno_codigo' => $turnoActualizado['codigo'] ?? null,
|
||||
]
|
||||
);
|
||||
} catch (\Throwable $e) {
|
||||
error_log('[llamar_turno] auditoría: ' . $e->getMessage());
|
||||
}
|
||||
|
||||
jsonOk(['turno' => $turnoActualizado], "Turno {$turnoActualizado['codigo']} llamado");
|
||||
|
||||
} catch (\Throwable $e) {
|
||||
|
||||
Reference in New Issue
Block a user