<?php
$pageTitle = 'Caja - Pagos';
require_once __DIR__ . '/../../config/config.php';
requireLogin();

$db = getDB();

// Filtros
$fecha = $_GET['fecha'] ?? date('Y-m-d');

// Pagos del día
$stmt = $db->prepare("
    SELECT p.*, o.codigo as orden_codigo, 
           CONCAT(pac.nombre, ' ', pac.apellidos) as paciente_nombre,
           u.nombre as usuario_nombre
    FROM pagos p
    JOIN ordenes o ON p.orden_id = o.id
    JOIN pacientes pac ON o.paciente_id = pac.id
    JOIN usuarios u ON p.usuario_id = u.id
    WHERE DATE(p.fecha_pago) = ?
    ORDER BY p.fecha_pago DESC
");
$stmt->execute([$fecha]);
$pagos = $stmt->fetchAll();

// Totales por método de pago
$stmt = $db->prepare("
    SELECT metodo_pago, SUM(monto) as total
    FROM pagos
    WHERE DATE(fecha_pago) = ?
    GROUP BY metodo_pago
");
$stmt->execute([$fecha]);
$totalesPorMetodo = $stmt->fetchAll(PDO::FETCH_KEY_PAIR);

$totalDia = array_sum($totalesPorMetodo);

require_once __DIR__ . '/../../includes/header.php';
?>

<div class="d-flex justify-content-between align-items-center mt-4 mb-4">
    <h2><i class="bi bi-cash-stack"></i> Caja - Pagos</h2>
    <a href="pendientes.php" class="btn btn-warning">
        <i class="bi bi-exclamation-circle"></i> Órdenes Pendientes de Pago
    </a>
</div>

<!-- Filtro de fecha -->
<div class="card mb-4">
    <div class="card-body">
        <form method="GET" class="row g-3 align-items-end">
            <div class="col-md-3">
                <label class="form-label">Fecha</label>
                <input type="date" name="fecha" class="form-control" value="<?= $fecha ?>">
            </div>
            <div class="col-md-2">
                <button type="submit" class="btn btn-primary">
                    <i class="bi bi-search"></i> Consultar
                </button>
            </div>
        </form>
    </div>
</div>

<!-- Resumen del día -->
<div class="row mb-4">
    <div class="col-md-3">
        <div class="card bg-success text-white">
            <div class="card-body text-center">
                <h6>Total del Día</h6>
                <h2><?= formatMoney($totalDia) ?></h2>
            </div>
        </div>
    </div>
    <div class="col-md-3">
        <div class="card">
            <div class="card-body text-center">
                <h6 class="text-muted">Efectivo</h6>
                <h4><?= formatMoney($totalesPorMetodo['efectivo'] ?? 0) ?></h4>
            </div>
        </div>
    </div>
    <div class="col-md-3">
        <div class="card">
            <div class="card-body text-center">
                <h6 class="text-muted">Tarjeta</h6>
                <h4><?= formatMoney($totalesPorMetodo['tarjeta'] ?? 0) ?></h4>
            </div>
        </div>
    </div>
    <div class="col-md-3">
        <div class="card">
            <div class="card-body text-center">
                <h6 class="text-muted">Transferencia</h6>
                <h4><?= formatMoney($totalesPorMetodo['transferencia'] ?? 0) ?></h4>
            </div>
        </div>
    </div>
</div>

<!-- Lista de pagos -->
<div class="card">
    <div class="card-header">
        <h5 class="mb-0"><i class="bi bi-list"></i> Pagos Registrados - <?= formatDate($fecha) ?></h5>
    </div>
    <div class="card-body">
        <table class="table table-hover datatable">
            <thead>
                <tr>
                    <th>Hora</th>
                    <th>N° Factura</th>
                    <th>Orden</th>
                    <th>Paciente</th>
                    <th>Método</th>
                    <th>Monto</th>
                    <th>Cajero</th>
                    <th></th>
                </tr>
            </thead>
            <tbody>
                <?php foreach ($pagos as $pago): ?>
                <tr>
                    <td><?= date('H:i', strtotime($pago['fecha_pago'])) ?></td>
                    <td><strong><?= $pago['numero_factura'] ?: '-' ?></strong></td>
                    <td>
                        <a href="<?= SITE_URL ?>/modules/ordenes/view.php?id=<?= $pago['orden_id'] ?>">
                            <?= $pago['orden_codigo'] ?>
                        </a>
                    </td>
                    <td><?= $pago['paciente_nombre'] ?></td>
                    <td>
                        <?php
                        $iconos = [
                            'efectivo' => 'bi-cash',
                            'tarjeta' => 'bi-credit-card',
                            'transferencia' => 'bi-bank',
                            'otro' => 'bi-wallet'
                        ];
                        ?>
                        <i class="bi <?= $iconos[$pago['metodo_pago']] ?>"></i>
                        <?= ucfirst($pago['metodo_pago']) ?>
                    </td>
                    <td class="text-success"><strong><?= formatMoney($pago['monto']) ?></strong></td>
                    <td><?= $pago['usuario_nombre'] ?></td>
                    <td>
                        <div class="btn-group btn-group-sm">
                            <a href="recibo.php?id=<?= $pago['id'] ?>&formato=ticket" class="btn btn-outline-secondary" target="_blank" title="Ticket">
                                <i class="bi bi-receipt"></i>
                            </a>
                            <a href="recibo.php?id=<?= $pago['id'] ?>&formato=factura" class="btn btn-outline-primary" target="_blank" title="Factura">
                                <i class="bi bi-file-text"></i>
                            </a>
                        </div>
                    </td>
                </tr>
                <?php endforeach; ?>
            </tbody>
        </table>
    </div>
</div>

<?php require_once __DIR__ . '/../../includes/footer.php'; ?>
