Files
whatsapp/api/lab/get_formularios.php
T
2026-03-10 18:42:51 -05:00

40 lines
1.3 KiB
PHP

<?php
/**
* GET /api/lab/get_formularios.php — Lista de plantillas
* GET /api/lab/get_formularios.php?id=X — Plantilla específica
* GET /api/lab/get_formularios.php?envios=1&formulario_id=X — Envíos
*/
require_once __DIR__ . '/_helpers.php';
requireMethod('GET');
try {
$form = new Formulario();
// Lista de envíos
if (!empty($_GET['envios'])) {
$filtros = [];
if (!empty($_GET['formulario_id'])) $filtros['formulario_id'] = (int)$_GET['formulario_id'];
if (!empty($_GET['paciente_id'])) $filtros['paciente_id'] = (int)$_GET['paciente_id'];
if (!empty($_GET['estado'])) $filtros['estado'] = $_GET['estado'];
// Enfermero solo ve los suyos
if (userRole() === 'enfermero') {
$filtros['enviado_por'] = adminId();
}
jsonOk(['data' => $form->listarEnvios($filtros)]);
}
// Plantilla específica
if (!empty($_GET['id'])) {
$f = $form->obtener((int)$_GET['id']);
if (!$f) jsonError('Formulario no encontrado', 404);
jsonOk(['formulario' => $f]);
}
// Lista de plantillas
$todas = isset($_GET['todas']) && userRole() === 'admin';
jsonOk(['data' => $form->listar(!$todas)]);
} catch (Exception $e) {
jsonError($e->getMessage(), 500);
}