<?php
/**
 * POST /api/lab/save_enfermera.php
 * Crea o actualiza una enfermera.
 * Body JSON:
 *   { id?, nombre_completo, numero_documento, tipo_documento?,
 *     telefono, telefono_alt?, email?, zona?, notas?, is_active? }
 */
require_once __DIR__ . '/_helpers.php';
requireMethod('POST');

try {
    $datos = inputJson();
    $enf   = new Enfermera();
    $admin = adminId();

    if (!empty($datos['id'])) {
        $id = (int)$datos['id'];
        unset($datos['id']);

        // Desactivar
        if (isset($datos['is_active']) && $datos['is_active'] == 0) {
            $enf->desactivar($id, $admin);
            jsonOk(['id' => $id], 'Enfermera desactivada');
        }

        $enf->actualizar($id, $datos, $admin);
        jsonOk(['id' => $id], 'Enfermera actualizada correctamente');
    } else {
        foreach (['nombre_completo', 'numero_documento', 'telefono'] as $req) {
            if (empty($datos[$req])) {
                jsonError("El campo $req es obligatorio");
            }
        }
        $id = $enf->crear($datos, $admin);
        jsonOk(['id' => $id], 'Enfermera registrada correctamente');
    }
} catch (Exception $e) {
    jsonError($e->getMessage(), 500);
}
