<div class="content-wrapper">
    <section class="content-header">
        <h1>Comprobantes</h1>
    </section>

    <section class="content">
        <div class="row">
            <div class="col-md-12">

                <a href="<?php echo base_url('index.php/ventas/comprobante/create'); ?>" class="btn btn-success">
                    <i class="fa fa-plus"></i> Nuevo Comprobante
                </a>

                <?php if(tiene_permiso('sunat_ver')): ?>
                <a href="<?php echo base_url('index.php/sunat/sunat'); ?>" class="btn btn-primary">
                    <i class="fa fa-paper-plane"></i> Panel SUNAT
                </a>
                <?php endif; ?>

                <br><br>

                <?php if($this->session->flashdata('success')): ?>
                    <div class="alert alert-success"><?php echo $this->session->flashdata('success'); ?></div>
                <?php endif; ?>
                <?php if($this->session->flashdata('error')): ?>
                    <div class="alert alert-danger"><?php echo $this->session->flashdata('error'); ?></div>
                <?php endif; ?>

                <div class="panel panel-primary">
                    <div class="panel-heading">
                        <strong>Listado de comprobantes</strong>
                    </div>
                    <div class="panel-body">
                        <div class="table-responsive">
                            <table id="tablaComprobantes" class="table table-bordered table-hover table-striped">
                                <thead>
                                    <tr>
                                        <th>ID</th>
                                        <th>Número</th>
                                        <th>Tipo</th>
                                        <th>Cliente</th>
                                        <th>Fecha</th>
                                        <th>Subtotal</th>
                                        <th>IGV</th>
                                        <th>Total</th>
                                        <th>Estado</th>
                                        <th class="text-center">SUNAT</th>
                                        <th style="width:120px;">Acciones</th>
                                    </tr>
                                </thead>
                                <tbody>
                                    <?php
                                    $tipos_electronicos = array('01', '03', '07', '08');
                                    ?>
                                    <?php foreach($comprobantes as $item): ?>
                                        <tr>
                                            <td><?php echo $item->id; ?></td>
                                            <td><?php echo $item->serie . '-' . $item->numero; ?></td>
                                            <td><?php echo $item->tipo_comprobante_nombre; ?></td>
                                            <td><?php echo $item->cliente_nombre; ?></td>
                                            <td><?php echo $item->fecha; ?></td>
                                            <td class="text-right"><?php echo number_format((float)$item->subtotal, 2); ?></td>
                                            <td class="text-right"><?php echo number_format((float)$item->igv, 2); ?></td>
                                            <td class="text-right"><?php echo number_format((float)$item->total, 2); ?></td>
                                            <td><?php echo $item->estado_nombre; ?></td>
                                            <td class="text-center">
                                                <?php if(in_array($item->tipo_comprobante_codigo, $tipos_electronicos)): ?>
                                                    <?php if($item->comprob_sunat == 1): ?>
                                                        <span class="label label-success" title="Aceptado por SUNAT">
                                                            <i class="fa fa-check"></i> OK
                                                        </span>
                                                    <?php elseif($item->comprob_sunat == 2): ?>
                                                        <span class="label label-danger" title="Rechazado por SUNAT">
                                                            <i class="fa fa-times"></i> Error
                                                        </span>
                                                    <?php else: ?>
                                                        <span class="label label-warning" title="Pendiente de envío a SUNAT">
                                                            <i class="fa fa-clock-o"></i>
                                                        </span>
                                                    <?php endif; ?>
                                                <?php else: ?>
                                                    <span class="text-muted">—</span>
                                                <?php endif; ?>
                                            </td>
                                            <td>
                                                <a href="<?php echo base_url('index.php/ventas/comprobante/ver/'.$item->id); ?>"
                                                   class="btn btn-info btn-xs" title="Ver">
                                                    <i class="fa fa-eye"></i>
                                                </a>

                                                <a href="<?php echo base_url('index.php/ventas/comprobante/print/'.$item->id); ?>"
                                                   class="btn btn-default btn-xs" title="Imprimir" target="_blank">
                                                    <i class="fa fa-print"></i>
                                                </a>

                                                <?php
                                                    $ESTADO_ANULADO = 24;
                                                    $ESTADO_ENVIADO = 27;
                                                ?>

                                                <?php if(tiene_permiso('comprobante_anular') && (int)$item->estado_id != $ESTADO_ANULADO && (int)$item->estado_id != $ESTADO_ENVIADO): ?>
                                                    <button type="button"
                                                            class="btn btn-danger btn-xs btn-anular-comprobante"
                                                            data-toggle="modal"
                                                            data-target="#modalAnularComprobante"
                                                            data-id="<?php echo $item->id; ?>"
                                                            data-numero="<?php echo $item->serie . '-' . $item->numero; ?>">
                                                        <i class="fa fa-ban"></i>
                                                    </button>
                                                <?php endif; ?>

                                                <!-- Botón envío rápido SUNAT desde la lista -->
                                                <?php if(tiene_permiso('sunat_enviar') && in_array($item->tipo_comprobante_codigo, $tipos_electronicos) && $item->comprob_sunat != 1): ?>
                                                    <button type="button"
                                                            class="btn btn-primary btn-xs btn-enviar-sunat-lista"
                                                            title="Enviar a SUNAT"
                                                            data-id="<?php echo $item->id; ?>"
                                                            data-numero="<?php echo $item->serie . '-' . $item->numero; ?>">
                                                        <i class="fa fa-paper-plane"></i>
                                                    </button>
                                                <?php endif; ?>

                                            </td>
                                        </tr>
                                    <?php endforeach; ?>
                                </tbody>
                            </table>
                        </div>
                    </div>
                </div>

            </div>
        </div>
    </section>
</div>

<!-- Modal anular -->
<div class="modal fade" id="modalAnularComprobante" tabindex="-1" role="dialog">
    <div class="modal-dialog" role="document">
        <div class="modal-content">
            <form id="formAnularComprobante" method="post" action="">
                <div class="modal-header bg-danger" style="color:#fff;">
                    <button type="button" class="close" data-dismiss="modal"><span style="color:#fff;">&times;</span></button>
                    <h4 class="modal-title">Anular Comprobante</h4>
                </div>
                <div class="modal-body">
                    <p>¿Está seguro de anular el comprobante <strong id="textoComprobanteAnular"></strong>?</p>
                    <div class="alert alert-warning" style="margin-bottom:0;">
                        Esta acción solo debe realizarse si el comprobante aún no fue enviado a SUNAT.
                    </div>
                </div>
                <div class="modal-footer">
                    <button type="button" class="btn btn-default" data-dismiss="modal">Cancelar</button>
                    <button type="submit" class="btn btn-danger"><i class="fa fa-ban"></i> Sí, anular</button>
                </div>
            </form>
        </div>
    </div>
</div>

<!-- Modal respuesta SUNAT (envío rápido desde lista) -->
<div class="modal fade" id="modalRespuestaSunatLista" tabindex="-1" role="dialog">
    <div class="modal-dialog" role="document">
        <div class="modal-content">
            <div class="modal-header bg-primary" id="modalSunatListaHeader" style="color:#fff;">
                <button type="button" class="close" data-dismiss="modal"><span style="color:#fff;">&times;</span></button>
                <h4 class="modal-title"><i class="fa fa-paper-plane"></i> Respuesta SUNAT</h4>
            </div>
            <div class="modal-body" id="modalSunatListaBody">
                <div class="text-center"><i class="fa fa-spinner fa-spin fa-2x"></i><br>Enviando...</div>
            </div>
            <div class="modal-footer">
                <button type="button" class="btn btn-default" data-dismiss="modal" id="btnCerrarSunatLista" style="display:none;">Cerrar</button>
                <button type="button" class="btn btn-primary" onclick="location.reload()" id="btnRecargarSunatLista" style="display:none;"><i class="fa fa-refresh"></i> Actualizar</button>
            </div>
        </div>
    </div>
</div>

<script>
window.addEventListener('load', function () {
    if (typeof jQuery !== 'undefined' && typeof $.fn.DataTable !== 'undefined') {
        $('#tablaComprobantes').DataTable({
            language: {
                lengthMenu: "Mostrar _MENU_ registros",
                zeroRecords: "No se encontraron resultados",
                info: "Mostrando registros del _START_ al _END_ de un total de _TOTAL_",
                infoEmpty: "Mostrando registros del 0 al 0",
                infoFiltered: "(filtrado de un total de _MAX_ registros)",
                search: "Buscar:",
                paginate: { first:"Primero", last:"Último", next:"Siguiente", previous:"Anterior" }
            },
            pageLength: 10,
            order: [[0, "desc"]]
        });
    }

    // Anular
    $(document).on('click', '.btn-anular-comprobante', function() {
        var id     = $(this).data('id');
        var numero = $(this).data('numero');
        $('#textoComprobanteAnular').text(numero);
        $('#formAnularComprobante').attr('action', '<?php echo base_url("index.php/ventas/comprobante/anular/"); ?>' + id);
    });

    // Envío rápido SUNAT desde la lista
    $(document).on('click', '.btn-enviar-sunat-lista', function() {
        var id     = $(this).data('id');
        var numero = $(this).data('numero');

        $('#modalSunatListaHeader').removeClass('bg-success bg-danger').addClass('bg-primary');
        $('#modalSunatListaBody').html('<div class="text-center" style="padding:20px;"><i class="fa fa-spinner fa-spin fa-3x"></i><br><br>Enviando <strong>' + numero + '</strong> a SUNAT...</div>');
        $('#btnCerrarSunatLista, #btnRecargarSunatLista').hide();
        $('#modalRespuestaSunatLista').modal({ backdrop: 'static', keyboard: false });
        $('#modalRespuestaSunatLista').modal('show');

        $.ajax({
            url: '<?php echo base_url("index.php/sunat/sunat/enviar_comprobante"); ?>',
            type: 'POST',
            data: { id: id },
            dataType: 'json',
            success: function(resp) {
                if (resp.status) {
                    $('#modalSunatListaHeader').removeClass('bg-primary bg-danger').addClass('bg-success');
                    $('#modalSunatListaBody').html(
                        '<div class="text-center" style="color:green; padding:10px;"><i class="fa fa-check-circle fa-4x"></i></div>' +
                        '<p><strong>Código:</strong> ' + (resp.codigo || '0') + '</p>' +
                        '<p><strong>Descripción:</strong> ' + resp.message + '</p>'
                    );
                } else {
                    $('#modalSunatListaHeader').removeClass('bg-primary bg-success').addClass('bg-danger');
                    $('#modalSunatListaBody').html(
                        '<div class="text-center" style="color:red; padding:10px;"><i class="fa fa-times-circle fa-4x"></i></div>' +
                        '<p><strong>Error:</strong> ' + resp.message + '</p>'
                    );
                }
                $('#btnCerrarSunatLista, #btnRecargarSunatLista').show();
            },
            error: function() {
                $('#modalSunatListaHeader').removeClass('bg-primary bg-success').addClass('bg-danger');
                $('#modalSunatListaBody').html('<p class="text-danger">Error de conexión. Intentá nuevamente.</p>');
                $('#btnCerrarSunatLista').show();
            }
        });
    });

});
</script>
