<?php
require_once("config/db.php");
require_once("config/conexion.php");

if (!isset($_GET['num'])) {
    echo "Uso: test_totales.php?num=NUMERO_COMPRA[&pro=ID_PROVEEDOR]";
    exit;
}

$numero = mysqli_real_escape_string($con, $_GET['num']);
$pro = isset($_GET['pro']) ? intval($_GET['pro']) : null;
$tax = floatval(TAX);

// Verificar si la columna 'exento' existe
$chk = mysqli_query($con, "SHOW COLUMNS FROM detalle_compra LIKE 'exento'");
if ($chk && mysqli_num_rows($chk) > 0) {
    $where = "numero_compra='".$numero."'" . ($pro ? " AND id_proveedor=$pro" : "");
    $sql = "SELECT 
        SUM(cantidad * precio_compra) AS monto_total,
        SUM(IF(exento=1, cantidad * precio_compra, 0)) AS total_exento,
        SUM(IF(exento=0, (cantidad * precio_compra) / (1 + (" . $tax . " / 100)), 0)) AS total_base,
        SUM(IF(exento=0, (cantidad * precio_compra) - (cantidad * precio_compra) / (1 + (" . $tax . " / 100)), 0)) AS total_iva
        FROM detalle_compra WHERE " . $where;
    $res = mysqli_query($con, $sql) or die(mysqli_error($con));
    $row = mysqli_fetch_assoc($res);
} else {
    // Fallback: asumir que no hay exentos
    $where = "numero_compra='".$numero."'" . ($pro ? " AND id_proveedor=$pro" : "");
    $res = mysqli_query($con, "SELECT SUM(cantidad * precio_compra) AS monto_total FROM detalle_compra WHERE " . $where) or die(mysqli_error($con));
    $r = mysqli_fetch_assoc($res);
    $m = floatval($r['monto_total']);
    $row = array(
        'monto_total' => $m,
        'total_exento' => 0,
        'total_base' => $m / (1 + ($tax / 100)),
        'total_iva' => $m - ($m / (1 + ($tax / 100)))
    );
}

echo "<h3>Totales para numero_compra = ".htmlspecialchars($numero)."</h3>";
echo "<pre>";
print_r($row);
echo "</pre>";

?>
