<?php
// ? Errores (quitar en produccion)
ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
error_reporting(E_ALL);

// ? CORS y Headers
header("Access-Control-Allow-Origin: *");
header("Acess-Control-Allow-Headers: Content-Type");
header("Acess-Control-Allow-Methods: POST, OPTIONS");
header("Content-Type: application/json; charset=utf-8");

if ($_SERVER['REQUEST_METHOD'] === 'OPTIONS') { http_response_code(200); exit; }

// ? Conexion
require_once(__DIR__ . '/../../config.php');
 $mysqli->set_charset("utf8mb4");

// ? JSON
 $input = json_decode(file_get_contents('php://input'), true);

if (!$input) {
    echo json_encode(['success'=>false,'message'=>'JSON inválido']);
    exit;
}

// --- VALIDACIÓN DE PARÁMETROS ---
 $slug_tienda = isset($input['slug_tienda']) ? trim($input['slug_tienda']) : '';
 $cierre_id = isset($input['cierre_id']) ? intval($input['cierre_id']) : 0;

if (!$slug_tienda || !$cierre_id) {
    echo json_encode(['success' => false, 'message' => 'El slug de la tienda y el ID del cierre son requeridos.']);
    exit;
}

try {
    // --- CONSULTA PARA OBTENER LAS FACTURAS ---
    // Esta consulta busca facturas que PERTENECEN al turno.
    // No filtra por estado, solo por cierre_id y tienda.
    $sql = "SELECT id, numero_factura, fecha, cliente_nombre, total, estado 
            FROM facturas 
            WHERE slug_tienda = ? AND cierre_id = ?";
    
    // Preparamentamos los parámetros
    $stmt = $mysqli->prepare($sql);
    $stmt->bind_param('si', $slug_tienda, $cierre_id);
    
    if (!$stmt) {
        throw new Exception("Error preparando la consulta de facturas: " . $mysqli->error);
    }
    
    $stmt->execute();
    $result = $stmt->get_result();
    
    $facturas = [];
    while ($row = $result->fetch_assoc()) {
        $facturas[] = $row;
    }
    $stmt->close();
    
    echo json_encode([
        'success' => true, 
        'facturas' => $facturas
    ]);

} catch (Exception $e) {
    http_response_code(500);
    echo json_encode(['success' => false, 'message' => 'Error en el servidor: ' . $e->getMessage()]);
} finally {
    if (isset($mysqli) && $mysqli) { $mysqli->close(); }
}
?>