Files
whatsapp/modules/turnero/api/_debug_form.php
T

42 lines
1.4 KiB
PHP

<?php
/**
* DEBUG TEMPORAL: Inspeccionar esquema de formulario por nombre/codigo.
* Eliminar tras uso.
*/
require_once __DIR__ . '/../../../config/config.php';
header('Content-Type: application/json; charset=utf-8');
$pdo = Database::getInstance()->getConnection();
// Buscar por nombre o código F-LAB-28
$stmt = $pdo->prepare(
"SELECT id, nombre, codigo, is_active,
JSON_LENGTH(esquema) AS esquema_longitud,
esquema
FROM lab_formularios
WHERE nombre LIKE ? OR codigo LIKE ?
LIMIT 5"
);
$stmt->execute(['%helicobacter%', '%F-LAB-28%']);
$rows = $stmt->fetchAll(PDO::FETCH_ASSOC);
if (!$rows) {
// Buscar todos los formularios para ver cuáles hay
$stmt2 = $pdo->query("SELECT id, nombre, codigo FROM lab_formularios ORDER BY id LIMIT 50");
echo json_encode(['not_found' => true, 'all_forms' => $stmt2->fetchAll(PDO::FETCH_ASSOC)], JSON_UNESCAPED_UNICODE | JSON_PRETTY_PRINT);
exit;
}
foreach ($rows as &$r) {
$decoded = json_decode($r['esquema'], true);
$campos = is_array($decoded) ? $decoded : ($decoded['campos'] ?? []);
$firmaPro = array_values(array_filter($campos, fn($f) => ($f['tipo'] ?? '') === 'firma_profesional'));
$r['campos_total'] = count($campos);
$r['campos_firma_profesional'] = $firmaPro;
$r['count_firma_profesional'] = count($firmaPro);
unset($r['esquema']);
}
echo json_encode($rows, JSON_UNESCAPED_UNICODE | JSON_PRETTY_PRINT);