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

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

                <!-- DATOS DEL COMPROBANTE -->
                <div class="panel panel-info">
                    <div class="panel-heading"><strong>Datos del comprobante</strong></div>
                    <div class="panel-body">
                        <div class="row">
                            <div class="col-md-2">
                                <strong>Tipo:</strong><br>
                                <?php echo $comprobante->tipo_comprobante; ?>
                            </div>
                            <div class="col-md-2">
                                <strong>N° Comprobante:</strong><br>
                                <strong><?php echo $comprobante->serie . '-' . $comprobante->numero; ?></strong>
                            </div>
                            <div class="col-md-2">
                                <strong>F. Emisión:</strong><br>
                                <?php echo date('d/m/Y', strtotime($comprobante->fecha)); ?>
                            </div>
                            <div class="col-md-2">
                                <strong>F. Vencimiento:</strong><br>
                                <?php echo !empty($comprobante->fecvencimiento)
                                    ? date('d/m/Y', strtotime($comprobante->fecvencimiento))
                                    : '-'; ?>
                            </div>
                            <div class="col-md-2">
                                <strong>Forma de pago:</strong><br>
                                <?php echo $comprobante->forma_pago ?? '-'; ?>
                            </div>
                            <div class="col-md-2">
                                <strong>Estado cobro:</strong><br>
                                <?php if($comprobante->estado_cobro == 1): ?>
                                    <span class="label label-success">COBRADO</span>
                                <?php elseif($comprobante->estado_cobro == 2): ?>
                                    <span class="label label-info">PARCIAL</span>
                                <?php else: ?>
                                    <span class="label label-warning">PENDIENTE</span>
                                <?php endif; ?>
                            </div>
                        </div>
                        <hr>
                        <div class="row">
                            <div class="col-md-5">
                                <strong>Cliente:</strong><br>
                                <h4 style="margin-top:3px;"><?php echo $comprobante->cliente; ?></h4>
                                <small class="text-muted"><?php echo $comprobante->cliente_ruc; ?></small>
                            </div>
                            <div class="col-md-2">
                                <strong>Total:</strong><br>
                                <?php echo number_format((float)$comprobante->total, 2); ?>
                            </div>
                            <div class="col-md-2">
                                <strong>Pago neto:</strong><br>
                                <strong><?php echo number_format((float)$comprobante->pago_neto, 2); ?></strong>
                            </div>
                            <div class="col-md-1">
                                <strong>Cobrado:</strong><br>
                                <span class="text-success">
                                    <?php echo number_format((float)$comprobante->pago_neto - (float)$comprobante->saldo, 2); ?>
                                </span>
                            </div>
                            <div class="col-md-2">
                                <strong>Saldo pendiente:</strong><br>
                                <strong class="<?php echo (float)$comprobante->saldo > 0 ? 'text-danger' : 'text-success'; ?>">
                                    S/ <?php echo number_format((float)$comprobante->saldo, 2); ?>
                                </strong>
                            </div>
                        </div>
                    </div>
                </div>

                <!-- CUOTAS -->
                <?php if(!empty($cuotas)): ?>
                <div class="panel panel-default">
                    <div class="panel-heading"><strong>Cuotas</strong></div>
                    <div class="panel-body">
                        <table class="table table-bordered table-striped">
                            <thead>
                                <tr>
                                    <th>N° Cuota</th>
                                    <th>F. Vencimiento</th>
                                    <th class="text-right">Importe</th>
                                    <th class="text-center">Estado</th>
                                </tr>
                            </thead>
                            <tbody>
                                <?php foreach($cuotas as $cuota): ?>
                                    <tr>
                                        <td><?php echo $cuota->nro_cuota; ?></td>
                                        <td><?php echo date('d/m/Y', strtotime($cuota->vencto_cuota)); ?></td>
                                        <td class="text-right"><?php echo number_format((float)$cuota->importe_cuota, 2); ?></td>
                                        <td class="text-center">
                                            <?php if((float)$cuota->importe_cuota <= 0): ?>
                                                <span class="label label-success">Cobrada</span>
                                            <?php else: ?>
                                                <span class="label label-warning">Pendiente</span>
                                            <?php endif; ?>
                                        </td>
                                    </tr>
                                <?php endforeach; ?>
                            </tbody>
                        </table>
                    </div>
                </div>
                <?php endif; ?>

                <!-- COBROS REGISTRADOS -->
                <div class="panel panel-default">
                    <div class="panel-heading">
                        <strong>Cobros registrados</strong>
                        <?php if(tiene_permiso('cobranzas_cobrar') && (float)$comprobante->saldo > 0): ?>
                            <button type="button" class="btn btn-success btn-xs pull-right" id="btnNuevoCobro">
                                <i class="fa fa-plus"></i> Registrar cobro
                            </button>
                        <?php endif; ?>
                    </div>
                    <div class="panel-body">
                        <?php if(empty($cobros)): ?>
                            <p class="text-muted text-center">No hay cobros registrados aún.</p>
                        <?php else: ?>
                            <table class="table table-bordered table-striped">
                                <thead>
                                    <tr>
                                        <th>Fecha</th>
                                        <th>Medio de pago</th>
                                        <th>Cuenta bancaria</th>
                                        <th>Referencia</th>
                                        <th class="text-right">Importe</th>
                                        <th>Usuario</th>
                                    </tr>
                                </thead>
                                <tbody>
                                    <?php foreach($cobros as $cobro): ?>
                                        <tr>
                                            <td><?php echo date('d/m/Y', strtotime($cobro->fecha_pago)); ?></td>
                                            <td><?php echo $cobro->medio_pago; ?></td>
                                            <td><?php echo !empty($cobro->cuenta_bancaria) ? $cobro->cuenta_bancaria : '-'; ?></td>
                                            <td><?php echo !empty($cobro->referencia) ? $cobro->referencia : '-'; ?></td>
                                            <td class="text-right">
                                                <strong>S/ <?php echo number_format((float)$cobro->importe, 2); ?></strong>
                                            </td>
                                            <td><?php echo $cobro->usuario_cobro ?? '-'; ?></td>
                                        </tr>
                                    <?php endforeach; ?>
                                </tbody>
                                <tfoot>
                                    <tr>
                                        <th colspan="4" class="text-right">Total cobrado:</th>
                                        <th class="text-right">
                                            S/ <?php echo number_format((float)$comprobante->pago_neto - (float)$comprobante->saldo, 2); ?>
                                        </th>
                                        <th></th>
                                    </tr>
                                </tfoot>
                            </table>
                        <?php endif; ?>
                    </div>
                </div>

                <!-- BOTONES -->
                <a href="<?php echo base_url('index.php/cobranzas/cobranzas'); ?>" class="btn btn-default">
                    <i class="fa fa-arrow-left"></i> Volver
                </a>
                <a href="<?php echo base_url('index.php/ventas/comprobante/ver/'.$comprobante->id); ?>"
                   class="btn btn-info" target="_blank">
                    <i class="fa fa-file-text"></i> Ver comprobante
                </a>

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

<!-- MODAL COBRO -->
<div class="modal fade" id="modalCobro" tabindex="-1" role="dialog">
    <div class="modal-dialog">
        <div class="modal-content">
            <div class="modal-header" style="background:#00a65a; color:#fff;">
                <button type="button" class="close" data-dismiss="modal" style="color:#fff;">&times;</button>
                <h4 class="modal-title"><i class="fa fa-money"></i> Registrar Cobro</h4>
            </div>
            <div class="modal-body">

                <?php if(!empty($cuotas)): ?>
                <div class="form-group">
                    <label>Cuota (opcional)</label>
                    <select id="cobro_cuota_id" class="form-control">
                        <option value="">Sin cuota específica</option>
                        <?php foreach($cuotas as $cuota): ?>
                            <?php if((float)$cuota->importe_cuota > 0): ?>
                                <option value="<?php echo $cuota->id; ?>">
                                    Cuota <?php echo $cuota->nro_cuota; ?>
                                    — Vence: <?php echo date('d/m/Y', strtotime($cuota->vencto_cuota)); ?>
                                    — S/ <?php echo number_format((float)$cuota->importe_cuota, 2); ?>
                                </option>
                            <?php endif; ?>
                        <?php endforeach; ?>
                    </select>
                </div>
                <?php endif; ?>

                <div class="row">
                    <div class="col-md-6 form-group">
                        <label>Fecha de cobro <span class="text-danger">*</span></label>
                        <input type="date" id="cobro_fecha" class="form-control" value="<?php echo date('Y-m-d'); ?>">
                    </div>
                    <div class="col-md-6 form-group">
                        <label>Importe <span class="text-danger">*</span></label>
                        <input type="number" step="0.01" min="0.01" id="cobro_importe" class="form-control text-right"
                               value="<?php echo number_format((float)$comprobante->saldo, 2, '.', ''); ?>">
                    </div>
                </div>
                <div class="form-group">
                    <label>Medio de pago <span class="text-danger">*</span></label>
                    <select id="cobro_medio_pago_id" class="form-control">
                        <option value="">Seleccione</option>
                        <?php foreach($medios_pago as $mp): ?>
                            <option value="<?php echo $mp->id; ?>"><?php echo $mp->nombre; ?></option>
                        <?php endforeach; ?>
                    </select>
                </div>
                <div class="form-group" id="bloqueCuentaCobro" style="display:none;">
                    <label>Cuenta bancaria destino</label>
                    <select id="cobro_banco_cuenta_id" class="form-control">
                        <option value="">Seleccione cuenta</option>
                        <?php foreach($cuentas as $cuenta): ?>
                            <option value="<?php echo $cuenta->id; ?>">
                                <?php echo $cuenta->banco . ' — ' . $cuenta->descripcion . ' — ' . $cuenta->numero_cuenta; ?>
                                (<?php echo $cuenta->moneda; ?>)
                            </option>
                        <?php endforeach; ?>
                    </select>
                </div>
                <div class="form-group">
                    <label>N° Operación / Referencia</label>
                    <input type="text" id="cobro_referencia" class="form-control" maxlength="60">
                </div>
                <div class="form-group">
                    <label>Observaciones</label>
                    <input type="text" id="cobro_observaciones" class="form-control" maxlength="150">
                </div>
                <div class="alert alert-info" style="padding:8px;">
                    Saldo pendiente: <strong id="saldoPendiente">
                        S/ <?php echo number_format((float)$comprobante->saldo, 2); ?>
                    </strong>
                </div>
            </div>
            <div class="modal-footer">
                <button type="button" class="btn btn-success" id="btnConfirmarCobro">
                    <i class="fa fa-check"></i> Confirmar cobro
                </button>
                <button type="button" class="btn btn-default" data-dismiss="modal">Cancelar</button>
            </div>
        </div>
    </div>
</div>

<script>
window.addEventListener('load', function () {

    $('#cobro_medio_pago_id').on('change', function() {
        var nombre = $(this).find('option:selected').text().toUpperCase();
        if (nombre.indexOf('EFECTIVO') === -1) {
            $('#bloqueCuentaCobro').show();
        } else {
            $('#bloqueCuentaCobro').hide();
            $('#cobro_banco_cuenta_id').val('');
        }
    });

    $('#btnNuevoCobro').on('click', function() {
        $('#modalCobro').modal('show');
    });

    $('#btnConfirmarCobro').on('click', function() {
        var fecha       = $('#cobro_fecha').val();
        var importe     = parseFloat($('#cobro_importe').val() || 0);
        var medioPagoId = $('#cobro_medio_pago_id').val();

        if (!fecha || importe <= 0 || !medioPagoId) {
            Swal.fire({ icon: 'warning', title: 'Atención', text: 'Fecha, importe y medio de pago son obligatorios' });
            return;
        }

        $.ajax({
            url: '<?php echo base_url("index.php/cobranzas/cobranzas/registrar_cobro"); ?>',
            type: 'POST',
            data: {
                comprob_id:      <?php echo $comprobante->id; ?>,
                cuota_id:        $('#cobro_cuota_id').val() || '',
                fecha_pago:      fecha,
                medio_pago_id:   medioPagoId,
                banco_cuenta_id: $('#cobro_banco_cuenta_id').val(),
                importe:         importe,
                referencia:      $('#cobro_referencia').val(),
                observaciones:   $('#cobro_observaciones').val()
            },
            dataType: 'json',
            success: function(resp) {
                if (resp.status) {
                    $('#modalCobro').modal('hide');
                    Swal.fire({
                        icon: 'success', title: 'Cobro registrado',
                        text: resp.message, timer: 1800, showConfirmButton: false
                    }).then(function() { location.reload(); });
                } else {
                    Swal.fire({ icon: 'error', title: 'Error', text: resp.message });
                }
            }
        });
    });

});
</script>
