Cuando el paciente regresa con un turno nuevo, toma de muestras muestra las tomas en_progreso de visitas anteriores con botón Continuar o Cancelar. Cancelar marca estado='rechazado' (campo ya existía en el enum). Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
26 lines
718 B
PHP
26 lines
718 B
PHP
<?php
|
|
/**
|
|
* POST /modules/turnero/api/cancelar_toma_pendiente.php
|
|
* Marca una toma progresiva en_progreso como rechazada (paciente no quiere continuar).
|
|
* Body: { consentimiento_id }
|
|
*/
|
|
require_once __DIR__ . '/_helpers.php';
|
|
requireMethod('POST');
|
|
requireTurnero();
|
|
|
|
$body = inputJson();
|
|
$consentId = (int)($body['consentimiento_id'] ?? 0);
|
|
if (!$consentId) jsonError('consentimiento_id requerido.');
|
|
|
|
$pdo = db();
|
|
$stmt = $pdo->prepare(
|
|
"UPDATE turnero_consentimientos
|
|
SET estado = 'rechazado'
|
|
WHERE id = ? AND estado = 'en_progreso'"
|
|
);
|
|
$stmt->execute([$consentId]);
|
|
|
|
if ($stmt->rowCount() === 0) jsonError('No se encontró toma en progreso con ese id.', 404);
|
|
|
|
jsonOk(['cancelado' => true]);
|