prepare( "UPDATE turnero_consentimientos tc JOIN turnero_turnos t_old ON t_old.id = tc.turno_id JOIN turnero_turnos t_cur ON t_cur.id = ? AND t_cur.paciente_id IS NOT NULL AND t_cur.paciente_id = t_old.paciente_id SET tc.estado = 'rechazado' WHERE tc.id = ? AND tc.estado = 'en_progreso'" ); $stmt->execute([$turnoId, $consentId]); if ($stmt->rowCount() === 0) jsonError('Toma no encontrada o el paciente no coincide.', 404); jsonOk(['cancelado' => true]);