<?php
// 1. Detección de errores
error_reporting(E_ALL);
ini_set('display_errors', 1);

// 2. Ruta de conexión
require_once "../modelo/Db.php";
$bd = new clsbdd();

// 3. Validar ID de venta
if (!isset($_GET['id']) || empty($_GET['id'])) {
    die("Error: No se proporcionó un ID de venta.");
}

$id = intval($_GET['id']);

// 4. Consultar datos de la venta y datos del profesor (si aplica)
$sql_v = "SELECT v.*, p.pro_nombre 
          FROM sba_ventas v 
          LEFT JOIN sba_profesores p ON v.pro_codigo = p.pro_codigo 
          WHERE v.ven_codigo = $id";
$venta_res = $bd->ejecutar_array($sql_v);

if (!$venta_res) {
    die("Error: No se encontró la venta.");
}
$v = $venta_res[0];

// 5. Consultar detalle de la venta
$detalle = $bd->ejecutar_array("SELECT d.*, p.prd_nombre 
                                FROM sba_ventas_detalle d 
                                INNER JOIN sba_productos p ON d.prd_codigo = p.prd_codigo 
                                WHERE d.ven_codigo = $id");

// Lógica de desglose para pagos mixtos (CORREGIDA PARA TR/CR)
$tipo = $v['ven_tipo_pago'];
$total = $v['ven_total'];
$entregado = $v['ven_entregado']; // En mixtos, ven_entregado guarda la parte "pagada" (Efectivo o Transferencia)
$monto_p1 = 0; // Parte 1 (Efectivo o Transf)
$monto_p2 = 0; // Parte 2 (Transf o Crédito)

if ($tipo == 'MIXTO_EF_TR') {
    $monto_p1 = $entregado;
    $monto_p2 = $total - $entregado;
} elseif ($tipo == 'MIXTO_EF_CR') {
    $monto_p1 = $entregado;
    $monto_p2 = $total - $entregado;
} elseif ($tipo == 'MIXTO_TR_CR') {
    // CORRECCIÓN: ven_entregado es la transferencia, el resto es crédito
    $monto_p1 = $entregado; 
    $monto_p2 = $total - $entregado;
}
?>
<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>Imprimir Ticket</title>
    <style>
        body { 
            font-family: 'Courier New', Courier, monospace; 
            width: 75mm; 
            margin: 0 auto; 
            padding: 5px; 
            font-size: 11px;
            color: #000;
        }
        .text-center { text-align: center; }
        .text-right { text-align: right; }
        .linea { border-top: 1px dashed #000; margin: 5px 0; }
        table { width: 100%; border-collapse: collapse; }
        .total-container { margin-top: 5px; }
        .bold { font-weight: bold; }
        @media print { .no-print { display: none; } }
    </style>
</head>
<body onload="window.print();">

    <div class="text-center">
        <strong style="font-size: 14px;">SISTEMA DE VENTAS</strong><br>
        Ticket de Venta #<?= $id ?><br>
        Fecha: <?= date("d/m/Y H:i", strtotime($v['ven_fecha'])) ?>
    </div>

    <div class="linea"></div>

    <table>
        <thead>
            <tr>
                <th align="left">Cant.</th>
                <th align="left">Producto</th>
                <th align="right">Subt.</th>
            </tr>
        </thead>
        <tbody>
            <?php foreach($detalle as $d): ?>
            <tr>
                <td valign="top"><?= $d['vde_cantidad'] ?></td>
                <td><?= htmlspecialchars($d['prd_nombre']) ?></td>
                <td align="right" valign="top">$<?= number_format($d['vde_subtotal'], 2) ?></td>
            </tr>
            <?php endforeach; ?>
        </tbody>
    </table>

    <div class="linea"></div>

    <div class="total-container">
        <div style="display:flex; justify-content:space-between; font-size: 13px;" class="bold">
            <span>TOTAL:</span>
            <span>$<?= number_format($total, 2) ?></span>
        </div>

        <div class="linea"></div>
        
        <div class="bold" style="margin-bottom: 3px;">FORMA DE PAGO:</div>

        <?php if($tipo == 'EFECTIVO'): ?>
            <div style="display:flex; justify-content:space-between;">
                <span>Efectivo:</span>
                <span>$<?= number_format($entregado, 2) ?></span>
            </div>
            <div style="display:flex; justify-content:space-between;">
                <span>Vuelto:</span>
                <span>$<?= number_format($v['ven_vuelto'], 2) ?></span>
            </div>

        <?php elseif($tipo == 'TRANSFERENCIA'): ?>
            <div style="display:flex; justify-content:space-between;">
                <span>Transferencia:</span>
                <span>$<?= number_format($total, 2) ?></span>
            </div>
            <?php if(!empty($v['ven_comprobante'])): ?>
                <div style="font-size: 10px;">Ref: <?= $v['ven_comprobante'] ?></div>
            <?php endif; ?>

        <?php elseif($tipo == 'CREDITO'): ?>
            <div style="display:flex; justify-content:space-between;">
                <span>A Crédito:</span>
                <span>$<?= number_format($total, 2) ?></span>
            </div>
            <div style="font-size: 10px;">Cliente: <?= $v['pro_nombre'] ?></div>

        <?php elseif($tipo == 'MIXTO_EF_TR'): ?>
            <div style="display:flex; justify-content:space-between;">
                <span>Efectivo:</span>
                <span>$<?= number_format($monto_p1, 2) ?></span>
            </div>
            <div style="display:flex; justify-content:space-between;">
                <span>Transferencia:</span>
                <span>$<?= number_format($monto_p2, 2) ?></span>
            </div>
            <div style="font-size: 10px;">Ref: <?= $v['ven_comprobante'] ?></div>

        <?php elseif($tipo == 'MIXTO_EF_CR'): ?>
            <div style="display:flex; justify-content:space-between;">
                <span>Efectivo:</span>
                <span>$<?= number_format($monto_p1, 2) ?></span>
            </div>
            <div style="display:flex; justify-content:space-between;">
                <span>Crédito (A cuenta):</span>
                <span>$<?= number_format($monto_p2, 2) ?></span>
            </div>
            <div style="font-size: 10px;">Cliente: <?= $v['pro_nombre'] ?></div>

        <?php elseif($tipo == 'MIXTO_TR_CR'): ?>
            <div style="display:flex; justify-content:space-between;">
                <span>Transferencia:</span>
                <span>$<?= number_format($monto_p1, 2) ?></span>
            </div>
            <div style="display:flex; justify-content:space-between;">
                <span>Crédito (A cuenta):</span>
                <span>$<?= number_format($monto_p2, 2) ?></span>
            </div>
            <?php if(!empty($v['ven_comprobante'])): ?>
                <div style="font-size: 10px;">Ref: <?= $v['ven_comprobante'] ?></div>
            <?php endif; ?>
            <div style="font-size: 10px;">Cliente: <?= $v['pro_nombre'] ?></div>

        <?php elseif($tipo == 'CORTESIA'): ?>
            <div class="text-center bold">*** CORTESÍA / GRATIS ***</div>
        <?php endif; ?>
    </div>

    <div class="linea"></div>
    <p class="text-center">¡Gracias por su compra!<br>SBA POS System</p>

    <div class="no-print" style="margin-top:20px; text-align:center;">
        <button onclick="window.print()" style="padding: 10px;">Imprimir de nuevo</button>
        <button onclick="window.close()" style="padding: 10px;">Cerrar</button>
    </div>

</body>
</html>