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

// Apagamos avisos de PHP 8
error_reporting(E_ALL & ~E_NOTICE & ~E_WARNING);

class PDF extends FPDF {
    function Header() {
        // Logo y Nombre de Empresa
        $this->Image('img/logonino.jpeg', 10, 10, 20); 
        $this->SetFont('Arial', 'B', 14);
        $this->Cell(60);
        // Título del Reporte
        $this->SetFillColor(230, 230, 230);
        $this->SetFont('Arial', 'B', 12);
        $this->Cell(70, 10, 'CUENTAS POR PAGAR (PENDIENTES)', 0, 1, 'C');
        $this->SetFont('Arial', 'I', 9);
        $this->Cell(190, 5, 'Al: ' . date('d-m-Y H:i A'), 0, 1, 'C');
        $this->Ln(10);

        // Encabezado de Tabla (Rojo Corporativo)
        $this->SetFillColor(211, 47, 47);
        $this->SetTextColor(255);
        $this->SetFont('Arial', 'B', 8);
        $this->Cell(10, 8, '#', 1, 0, 'C', true);
        $this->Cell(25, 8, 'FECHA', 1, 0, 'C', true);
        $this->Cell(25, 8, 'FACTURA', 1, 0, 'C', true);
        $this->Cell(55, 8, 'PROVEEDOR', 1, 0, 'C', true);
        $this->Cell(25, 8, 'MONTO', 1, 0, 'C', true);
        $this->Cell(25, 8, 'ABONO', 1, 0, 'C', true);
        $this->Cell(25, 8, 'SALDO', 1, 1, 'C', true);
        $this->SetTextColor(0);
    }

    function Footer() {
        $this->SetY(-15);
        $this->SetFont('Arial', 'I', 8);
        $this->Cell(0, 10, utf8_decode('Página ') . $this->PageNo() . '/{nb}', 0, 0, 'C');
    }
}

$pdf = new PDF();
$pdf->AliasNbPages();
$pdf->AddPage();
$pdf->SetFont('Arial', '', 8);

// CONSULTA OPTIMIZADA (Uso INNER JOIN para mayor rapidez)
$sql = "SELECT c.*, p.nombre_proveedor FROM compras c 
        INNER JOIN proveedores p ON c.proveedor = p.id_pro 
        WHERE c.abono < c.total ORDER BY c.fecha ASC";
$query = mysqli_query($con, $sql);

$item = 0;
$total_deuda = 0;

while ($dato = mysqli_fetch_array($query)) {
    $item++;
    $monto = $dato['total'];
    $abono = $dato['abono'];
    $pagar = $dato['por_pagar'];
    $total_deuda += $pagar;

    // Alternar color de fondo para lectura fácil
    if($item % 2 == 0) $pdf->SetFillColor(245, 245, 245);
    else $pdf->SetFillColor(255, 255, 255);

    $pdf->Cell(10, 7, $item, 'B', 0, 'C', true);
    $pdf->Cell(25, 7, date('d/m/Y', strtotime($dato['fecha'])), 'B', 0, 'C', true);
    $pdf->Cell(25, 7, $dato['numero_fact'], 'B', 0, 'C', true);
    $pdf->Cell(55, 7, utf8_decode(substr($dato['nombre_proveedor'], 0, 30)), 'B', 0, 'L', true);
    $pdf->Cell(25, 7, '$ ' . number_format($monto, 2, ',', '.'), 'B', 0, 'R', true);
    $pdf->Cell(25, 7, '$ ' . number_format($abono, 2, ',', '.'), 'B', 0, 'R', true);
    
    // Resaltar el saldo en negrita
    $pdf->SetFont('Arial', 'B', 8);
    $pdf->Cell(25, 7, '$ ' . number_format($pagar, 2, ',', '.'), 'B', 1, 'R', true);
    $pdf->SetFont('Arial', '', 8);
}

// --- TOTAL FINAL ---
$pdf->Ln(5);
$pdf->SetFillColor(211, 47, 47);
$pdf->SetTextColor(255);
$pdf->SetFont('Arial', 'B', 10);
$pdf->Cell(140, 10, 'TOTAL GENERAL POR PAGAR ', 0, 0, 'R');
$pdf->Cell(50, 10, '$ ' . number_format($total_deuda, 2, ',', '.'), 1, 1, 'C', true);

// --- FIRMAS ---
$pdf->SetTextColor(0);
$pdf->Ln(25);
$pdf->SetFont('Arial', 'B', 9);
$pdf->Cell(190, 5, '__________________________________', 0, 1, 'C');
$pdf->Cell(190, 5, utf8_decode($_SESSION['usuario']), 0, 1, 'C');
$pdf->SetFont('Arial', '', 8);
$pdf->Cell(190, 5, 'Responsable de Pagos - ' . NOMBRE_EMPRESA, 0, 1, 'C');

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