<?php
// guardar_exportacion.php
// Endpoint para guardar los datos exportados en ExportacionesHorarios
require_once __DIR__ . '/../config/database.php';

header('Content-Type: application/json');

if ($_SERVER['REQUEST_METHOD'] !== 'POST') {
    http_response_code(405);
    echo json_encode(['error' => 'Método no permitido']);
    exit;
}

$input = json_decode(file_get_contents('php://input'), true);
if (!$input || !isset($input['quincena_id'], $input['fecha_inicio'], $input['fecha_fin'], $input['registros'])) {
    http_response_code(400);
    echo json_encode(['error' => 'Datos incompletos']);
    exit;
}

$quincena_id = intval($input['quincena_id']);
$fecha_inicio = $input['fecha_inicio'];
$fecha_fin = $input['fecha_fin'];
$registros = $input['registros'];

try {
    $db = new Database();
    $conn = $db->connect();
    $conn->beginTransaction();
    $stmt = $conn->prepare("INSERT INTO ExportacionesHorarios (quincena_id, fecha_inicio, fecha_fin, nombre_completo, fecha, hora_entrada, hora_salida, incidencias) VALUES (?, ?, ?, ?, ?, ?, ?, ?)");
    foreach ($registros as $r) {
        $stmt->execute([
            $quincena_id,
            $fecha_inicio,
            $fecha_fin,
            $r['nombre'],
            $r['fecha'],
            $r['hora_entrada'],
            $r['hora_salida'],
            $r['incidencias']
        ]);
    }
    $conn->commit();
    echo json_encode(['ok' => true, 'insertados' => count($registros)]);
} catch (Exception $e) {
    if ($conn && $conn->inTransaction()) $conn->rollBack();
    http_response_code(500);
    echo json_encode(['error' => $e->getMessage()]);
}
