<?php
ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
error_reporting(E_ALL);
?>

<div class="container py-5">
    <nav aria-label="breadcrumb">
        <ol class="breadcrumb">
            <li class="breadcrumb-item active" aria-current="page">Lista de Prestação de Contas</li>
        </ol>
    </nav>

    <?php Sessao::mensagem('prestacao_contas'); ?>

    
    <div class="mt-4">
        <a href="<?= URL ?>/ordens/" class="btn btn-primary">
            <i class="fas fa-plus"></i> Nova Prestação
        </a>
    </div>
<hr>
    <div class="table-responsive">
        <table id="tabela-prestacao" class="table table-striped table-bordered table-hover datatable" style="width:100%">
            <thead class="text-center">
                <tr>
                    <th>#</th>
                    <th>Ordem</th>
                    <th>Doc</th>
                    <th>Valor Previsto</th>
                    <th>Valor Gasto</th>
                    <th>Reembolso</th>
                    <th>Devolução</th>
                    <th>Descontos</th>
                    <th>Data</th>
                    <th>Opções</th>
                </tr>
            </thead>
            <tbody>
                <?php
                    $totalReembolso = 0;
                    $totalDevolucao = 0;
                    $totalDescontos = 0;
                    $totalPrevisto = 0;
                    $totalGasto = 0;
                ?>
                <?php foreach ($dados['prestacoes'] as $p): ?>
                    <tr>
                        <td><?= $p->id_prestacao_contas ?></td>
                        <td><?= htmlspecialchars($p->numero_ordem) ?></td>
                        <td><?= htmlspecialchars($p->doc) ?></td>
                        <td>R$ <?= number_format($p->valor_previsto, 2, ',', '.') ?></td>
                        <td>R$ <?= number_format($p->valor_gasto, 2, ',', '.') ?></td>
                        <td>R$ <?= number_format($p->reembolso, 2, ',', '.') ?></td>
                        <td>R$ <?= number_format($p->devolucao, 2, ',', '.') ?></td>
                        <td>R$ <?= number_format($p->descontos, 2, ',', '.') ?></td>
                        <td><?= date('d/m/Y H:i', strtotime($p->criado_em)) ?></td>
                        <td class="text-center">
                            <div class="d-flex flex-column gap-1">
                                <div class="d-flex flex-wrap justify-content-center gap-1">
                                    <a href="<?= URL ?>/prestacao_contas/visualizar/<?= $p->id_prestacao_contas ?>" class="btn btn-primary btn-sm" title="Ver">
                                        <i class="fas fa-eye"></i> Ver
                                    </a>
                                    <a href="<?= URL ?>/prestacao_contas/editar/<?= $p->id_prestacao_contas ?>" class="btn btn-warning btn-sm" title="Editar">
                                        <i class="fas fa-edit"></i> Editar
                                    </a>
                                   <a href="<?= URL ?>/prestacao_contas/excluir/<?= $p->id_prestacao_contas ?>" class="btn btn-danger btn-sm">
    <i class="fas fa-trash-alt"></i> Excluir
</a>

                                </div>
                                <div class="d-flex flex-wrap justify-content-center gap-1">
                                    <a href="<?= URL ?>/prestacaocomprovante/visualizar/<?= $p->id_prestacao_contas ?>" class="btn btn-dark btn-sm" title="Comprovantes" target="_blank">
                                        <i class="fas fa-file-alt"></i> Comprovantes
                                    </a>
                                    <a href="<?= URL ?>/prestacao_contas/exportarPdf/<?= $p->id_prestacao_contas ?>" class="btn btn-secondary btn-sm" title="Exportar PDF" target="_blank">
                                        <i class="fas fa-file-pdf"></i> PDF
                                    </a>
                                </div>
                            </div>
                        </td>
                    </tr>
                    <?php
                        $totalReembolso += $p->reembolso;
                        $totalDevolucao += $p->devolucao;
                        $totalDescontos += $p->descontos;
                        $totalPrevisto += $p->valor_previsto;
                        $totalGasto += $p->valor_gasto;
                    ?>
                <?php endforeach; ?>

                <?php if (empty($dados['prestacoes'])): ?>
                    <tr>
                        <td colspan="10" class="text-center">Nenhuma prestação cadastrada.</td>
                    </tr>
                <?php endif; ?>
            </tbody>

            <?php if (!empty($dados['prestacoes'])): ?>
                <tfoot class="table-light text-center">
                    <tr>
                        <th colspan="3" class="text-end">Totais:</th>
                        <th>R$ <?= number_format($totalPrevisto, 2, ',', '.') ?></th>
                        <th>R$ <?= number_format($totalGasto, 2, ',', '.') ?></th>
                        <th>R$ <?= number_format($totalReembolso, 2, ',', '.') ?></th>
                        <th>R$ <?= number_format($totalDevolucao, 2, ',', '.') ?></th>
                        <th>R$ <?= number_format($totalDescontos, 2, ',', '.') ?></th>
                        <th colspan="2"></th>
                    </tr>
                </tfoot>
            <?php endif; ?>
        </table>
    </div>

    
</div>

<!-- SweetAlert2 + DataTables -->
<script src="https://cdn.jsdelivr.net/npm/sweetalert2@11"></script>
<link rel="stylesheet" href="https://cdn.datatables.net/1.13.4/css/dataTables.bootstrap5.min.css">
<script src="https://cdn.datatables.net/1.13.4/js/jquery.dataTables.min.js"></script>
<script src="https://cdn.datatables.net/1.13.4/js/dataTables.bootstrap5.min.js"></script>
<script>
    document.addEventListener('DOMContentLoaded', function () {
        // Exclusão com SweetAlert
        document.querySelectorAll('.btn-excluir').forEach(button => {
            button.addEventListener('click', function () {
                const id = this.dataset.id;
                Swal.fire({
                    title: 'Tem certeza?',
                    text: "Essa ação não poderá ser desfeita!",
                    icon: 'warning',
                    showCancelButton: true,
                    confirmButtonColor: '#d33',
                    cancelButtonColor: '#3085d6',
                    confirmButtonText: 'Sim, excluir!',
                    cancelButtonText: 'Cancelar'
                }).then((result) => {
                    if (result.isConfirmed) {
                        fetch("<?= URL ?>/prestacao_contas/excluir/" + id)
                            .then(() => {
                                Swal.fire({
                                    icon: 'success',
                                    title: 'Excluído!',
                                    text: 'Prestação de contas excluída com sucesso.',
                                    timer: 1500,
                                    showConfirmButton: false
                                }).then(() => {
                                    // Recarrega a página atual após a exclusão
                                    window.location.reload();
                                });
                            });
                    }
                });
            });
        });

        // Ativar DataTables
        $('#tabela-prestacao').DataTable({
            language: {
                url: "//cdn.datatables.net/plug-ins/1.13.4/i18n/pt-BR.json"
            },
            columnDefs: [{ orderable: false, targets: -1 }]
        });
    });
</script>

