35 lines
1.0 KiB
PHP
35 lines
1.0 KiB
PHP
<?php
|
|
/**
|
|
* POST /api/lab/save_paciente.php
|
|
* Crea o actualiza un paciente.
|
|
* Body JSON:
|
|
* { id?, nombre_completo, numero_documento?, tipo_documento?, telefono?,
|
|
* email?, fecha_nacimiento?, genero?, direccion?, ciudad?, barrio?,
|
|
* eps?, notas_admin?, user_id? }
|
|
*/
|
|
require_once __DIR__ . '/_helpers.php';
|
|
requireMethod('POST');
|
|
|
|
try {
|
|
$datos = inputJson();
|
|
$pac = new Paciente();
|
|
$admin = adminId();
|
|
|
|
if (!empty($datos['id'])) {
|
|
// Actualización
|
|
$id = (int)$datos['id'];
|
|
unset($datos['id']);
|
|
$pac->actualizar($id, $datos, $admin);
|
|
jsonOk(['id' => $id], 'Paciente actualizado correctamente');
|
|
} else {
|
|
// Creación — nombre obligatorio
|
|
if (empty($datos['nombre_completo'])) {
|
|
jsonError('El campo nombre_completo es obligatorio');
|
|
}
|
|
$id = $pac->crear($datos, $admin);
|
|
jsonOk(['id' => $id], 'Paciente creado correctamente');
|
|
}
|
|
} catch (Exception $e) {
|
|
jsonError($e->getMessage(), 500);
|
|
}
|