<?php
ob_start();
include('ajax/is_logged.php');
require('fpdf/fpdf.php');
require_once ("config/db.php");
require_once ("config/conexion.php");

error_reporting(E_ALL & ~E_NOTICE & ~E_WARNING);

// 1. CAPTURA DE VARIABLES
$tienda = isset($_GET['tienda']) ? mysqli_real_escape_string($con, $_GET['tienda']) : '';
$desde = isset($_GET['desde']) ? mysqli_real_escape_string($con, $_GET['desde']) : '';
$hasta = isset($_GET['hasta']) ? mysqli_real_escape_string($con, $_GET['hasta']) : '';
$donacion = "Donacion";

// 2. FILTROS SQL
$sWhere = " WHERE condiciones != '$donacion'";
if (!empty($tienda)) { $sWhere .= " AND almacen = '$tienda'"; }
if (!empty($desde) && !empty($hasta)) {
    $sWhere .= " AND fecha_factura BETWEEN '$desde' AND '$hasta'";
} elseif (!empty($desde)) {
    $sWhere .= " AND fecha_factura = '$desde'";
}

class PDF extends FPDF {
    function Header() {
        $this->Image('img/logotienda.jpeg', 40, 5, 200, 15);
        $this->Ln(15);
        $this->SetFont('Arial', 'B', 12);
        $this->Cell(0, 10, utf8_decode('REPORTE CONSOLIDADO DE VENTAS - INVALTECA'), 0, 1, 'C');
        $this->SetFont('Arial', '', 9);
        $this->Cell(0, 5, "Periodo: " . ($_GET['desde'] ? $_GET['desde'] : 'General'), 0, 1, 'C');
        $this->Ln(5);
    }
}

$pdf = new PDF('L', 'mm', 'letter');
$pdf->AliasNbPages();
$pdf->AddPage();

// --- SECCIÓN 1: CÁLCULO DE ACUMULADOS REALES ---
$res_v = mysqli_query($con, "SELECT estado_factura, total_venta, condiciones_efe, condiciones_efed, condiciones_tra, condiciones_pun FROM facturas $sWhere");
$t_fact = 0; $t_cred = 0; $t_efe_bs = 0; $t_efe_usd = 0; $t_tra = 0; $t_pun = 0;

while($rv = mysqli_fetch_array($res_v)) {
    $t_fact += $rv['total_venta'];
    if($rv['estado_factura'] == 1) {
        $t_cred += $rv['total_venta'];
    }
    // Sumamos exactamente lo que hay en cada columna de pago
    $t_efe_bs += $rv['condiciones_efe'];
    $t_efe_usd += $rv['condiciones_efed'];
    $t_tra += $rv['condiciones_tra'];
    $t_pun += $rv['condiciones_pun'];
}

$pdf->SetFont('Arial', 'B', 9);
$pdf->SetFillColor(230, 230, 230);
$pdf->Cell(0, 8, 'RESUMEN DE INGRESOS TOTALES DEL PERIODO', 0, 1, 'L');

$pdf->SetFont('Arial', 'B', 8);
$pdf->Cell(32, 7, 'TOTAL VENTAS', 1, 0, 'C', true);
$pdf->Cell(32, 7, 'POR COBRAR', 1, 0, 'C', true);
$pdf->Cell(32, 7, 'EFEC. BsD', 1, 0, 'C', true);
$pdf->Cell(32, 7, 'EFEC. $', 1, 0, 'C', true);
$pdf->Cell(32, 7, 'TRANSF. BsD', 1, 0, 'C', true);
$pdf->Cell(32, 7, 'PUNTO BsD', 1, 1, 'C', true);

$pdf->SetFont('Arial', '', 9);
$pdf->Cell(32, 7, '$ '.number_format($t_fact,2,',','.'), 1, 0, 'C');
$pdf->Cell(32, 7, '$ '.number_format($t_cred,2,',','.'), 1, 0, 'C');
$pdf->Cell(32, 7, number_format($t_efe_bs,2,',','.'), 1, 0, 'C');
$pdf->Cell(32, 7, '$ '.number_format($t_efe_usd,2,',','.'), 1, 0, 'C');
$pdf->Cell(32, 7, number_format($t_tra,2,',','.'), 1, 0, 'C');
$pdf->Cell(32, 7, number_format($t_pun,2,',','.'), 1, 1, 'C');

$pdf->Ln(10);

// --- SECCIÓN 2: DESGLOSE POR DÍA ---
$pdf->SetFont('Arial', 'B', 9);
$pdf->Cell(0, 8, 'DETALLE DIARIO DE COBROS', 0, 1, 'L');

$pdf->SetFillColor(211, 47, 47);
$pdf->SetTextColor(255);
$pdf->Cell(25, 8, 'FECHA', 1, 0, 'C', true);
$pdf->Cell(35, 8, 'TOTAL VENTAS', 1, 0, 'C', true);
$pdf->Cell(35, 8, 'EFEC. BsD', 1, 0, 'C', true);
$pdf->Cell(30, 8, 'EFEC. $', 1, 0, 'C', true);
$pdf->Cell(35, 8, 'TRANSF. BsD', 1, 0, 'C', true);
$pdf->Cell(35, 8, 'PUNTO BsD', 1, 1, 'C', true);
$pdf->SetTextColor(0);

$sql_agrupado = "SELECT fecha_factura, 
                sum(total_venta) AS total, 
                sum(condiciones_efe) AS efe, 
                sum(condiciones_efed) AS efed, 
                sum(condiciones_tra) AS tra, 
                sum(condiciones_pun) AS pun 
                FROM facturas $sWhere GROUP BY fecha_factura ORDER BY fecha_factura DESC";
$query_agrupado = mysqli_query($con, $sql_agrupado);

$pdf->SetFont('Arial', '', 8);
while($reg = mysqli_fetch_array($query_agrupado)) {
    $pdf->Cell(25, 7, date('d/m/Y', strtotime($reg['fecha_factura'])), 'B', 0, 'C');
    $pdf->Cell(35, 7, '$ '.number_format($reg['total'], 2, ',', '.'), 'B', 0, 'R');
    $pdf->Cell(35, 7, number_format($reg['efe'], 2, ',', '.'), 'B', 0, 'R');
    $pdf->Cell(30, 7, '$ '.number_format($reg['efed'], 2, ',', '.'), 'B', 0, 'R');
    $pdf->Cell(35, 7, number_format($reg['tra'], 2, ',', '.'), 'B', 0, 'R');
    $pdf->Cell(35, 7, number_format($reg['pun'], 2, ',', '.'), 'B', 1, 'R');
}

$pdf->Ln(20);
$pdf->SetFont('Arial', 'B', 9);
$pdf->Cell(0, 5, '__________________________________', 0, 1, 'C');
$pdf->Cell(0, 5, utf8_decode($_SESSION['usuario']), 0, 1, 'C');
$pdf->Cell(0, 5, utf8_decode(NOMBRE_EMPRESA), 0, 1, 'C');

if (ob_get_length()) ob_end_clean();
$pdf->Output('libro_ventas_ninoburguer.pdf', 'D');
?>