<div class="content-wrapper">
    <section class="content-header">
        <h1><?php echo $titulo; ?></h1>
    </section>

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

                <!-- INFO COMPROBANTE REFERENCIA -->
                <div class="panel panel-info">
                    <div class="panel-heading"><strong>Comprobante de referencia</strong></div>
                    <div class="panel-body">
                        <div class="row">
                            <div class="col-md-3">
                                <strong>Comprobante:</strong><br>
                                <?php echo $comprobante->tipo_comprobante; ?>
                                <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-4">
                                <strong>Cliente:</strong><br>
                                <?php echo $comprobante->cliente; ?>
                                <small class="text-muted">(<?php echo $comprobante->cliente_ruc; ?>)</small>
                            </div>
                            <div class="col-md-3">
                                <strong>Total comprobante:</strong><br>
                                <strong class="text-primary">
                                    <?php echo $comprobante->moneda_abreviado; ?>
                                    <?php echo number_format((float)$comprobante->pago_neto, 2); ?>
                                </strong>
                            </div>
                        </div>
                    </div>
                </div>

                <form id="formNC" method="post" action="<?php echo base_url('index.php/ventas/nota_credito/store'); ?>">

                    <!-- CAMPOS OCULTOS -->
                    <input type="hidden" name="tipo_nc_id"  value="<?php echo $tipo_nc->id; ?>">
                    <input type="hidden" name="comprob_id"  value="<?php echo $comprobante->id; ?>">
                    <input type="hidden" name="cliente_id"  value="<?php echo $comprobante->cliente_id; ?>">
                    <input type="hidden" name="serie"       value="<?php echo $serie; ?>">
                    <input type="hidden" name="numero"      value="<?php echo $numero; ?>">
                    <input type="hidden" name="moneda_id"   value="<?php echo $comprobante->moneda_id; ?>">
                    <input type="hidden" name="tipocambio"  value="<?php echo $comprobante->tipocambio ?? 1; ?>">
                    <input type="hidden" name="fecha" value="<?php echo $fecha; ?>">
                    <input type="hidden" name="igv_porcentaje" id="igv_porcentaje" value="<?php echo $comprobante->igv_porcentaje ?? 18; ?>">
                    <input type="hidden" name="subtotal"    id="subtotal" value="0">
                    <input type="hidden" name="igv"         id="igv_total" value="0">
                    <input type="hidden" name="total"       id="total_nc" value="0">

                    <div class="panel panel-primary">
                        <div class="panel-heading">
                            <strong>
                                <span class="label label-warning"><?php echo $tipo_nc->codigo; ?></span>
                                Nota de Crédito — <?php echo $tipo_nc->descripcion; ?>
                            </strong>
                            <span class="pull-right">
                                Serie: <strong><?php echo $serie; ?></strong> |
                                Número: <strong><?php echo $numero; ?></strong> |
                                Fecha: <strong><?php echo date('d/m/Y', strtotime($fecha)); ?></strong>
                            </span>
                        </div>
                        <div class="panel-body">

                            <!-- ============================================== -->
                            <!-- GRUPO A y B — TABLA DE PRODUCTOS -->
                            <!-- ============================================== -->
                            <?php if(in_array($grupo, array('A', 'B'))): ?>

                            <div class="alert alert-info">
                                <i class="fa fa-info-circle"></i>
                                <?php if($grupo == 'A'): ?>
                                    Se cargaron todos los ítems del comprobante original. <strong>No se pueden modificar.</strong>
                                <?php else: ?>
                                    Se cargaron todos los ítems. Puedes modificar las cantidades y/o precios según corresponda.
                                <?php endif; ?>
                            </div>

                            <div class="table-responsive">
                                <table class="table table-bordered table-hover" id="tablaItems">
                                    <thead>
                                        <tr>
                                            <th style="width:80px;">Código</th>
                                            <th>Descripción</th>
                                            <th class="text-center" style="width:70px;">Und.</th>
                                            <th class="text-right" style="width:100px;">Cantidad</th>
                                            <th class="text-right" style="width:120px;">P. Unitario</th>
                                            <th class="text-right" style="width:110px;">Subtotal</th>
                                            <th class="text-right" style="width:100px;">IGV</th>
                                            <th class="text-right" style="width:110px;">Total</th>
                                        </tr>
                                    </thead>
                                    <tbody>
                                        <?php foreach($items as $idx => $item): ?>
                                            <?php
                                                $subtotal_item = (float)$item->subtotal ?? round((float)$item->cantidad * (float)$item->precio_unitario, 2);
                                                $igv_item      = round($subtotal_item * ((float)($comprobante->igv_porcentaje ?? 18) / 100), 2);
                                                $total_item    = $subtotal_item + $igv_item;
                                            ?>
                                            <tr>
                                                <input type="hidden" name="detalle[<?php echo $idx; ?>][producto_id]" value="<?php echo $item->producto_id; ?>">
                                                <input type="hidden" name="detalle[<?php echo $idx; ?>][tipo_afectacion_igv]" value="10">
                                                <td><?php echo $item->producto_codigo; ?></td>
                                                <td>
                                                    <input type="text" name="detalle[<?php echo $idx; ?>][descripcion]"
                                                           class="form-control input-sm"
                                                           value="<?php echo $item->producto_nombre; ?>"
                                                           <?php echo ($grupo == 'A') ? 'readonly' : ''; ?>>
                                                </td>
                                                <td class="text-center"><?php echo $item->unidad ?? '-'; ?></td>
                                                <td>
                                                    <input type="number" step="0.01" min="0.01"
                                                           name="detalle[<?php echo $idx; ?>][cantidad]"
                                                           class="form-control input-sm text-right inp-cantidad"
                                                           value="<?php echo $item->cantidad; ?>"
                                                           data-idx="<?php echo $idx; ?>"
                                                           <?php echo ($grupo == 'A') ? 'readonly' : ''; ?>>
                                                </td>
                                                <td>
                                                    <input type="number" step="0.0001" min="0"
                                                           name="detalle[<?php echo $idx; ?>][precio_unitario]"
                                                           class="form-control input-sm text-right inp-precio"
                                                           value="<?php echo $item->precio_unitario; ?>"
                                                           data-idx="<?php echo $idx; ?>"
                                                           <?php echo ($grupo == 'A') ? 'readonly' : ''; ?>>
                                                </td>
                                                <td class="text-right">
                                                    <span class="span-subtotal-<?php echo $idx; ?>"><?php echo number_format($subtotal_item, 2); ?></span>
                                                </td>
                                                <td class="text-right">
                                                    <span class="span-igv-<?php echo $idx; ?>"><?php echo number_format($igv_item, 2); ?></span>
                                                </td>
                                                <td class="text-right">
                                                    <span class="span-total-<?php echo $idx; ?>"><?php echo number_format($total_item, 2); ?></span>
                                                </td>
                                            </tr>
                                        <?php endforeach; ?>
                                    </tbody>
                                </table>
                            </div>

                            <?php endif; ?>

                            <!-- ============================================== -->
                            <!-- GRUPO C — DESCUENTO/BONIFICACIÓN GLOBAL -->
                            <!-- ============================================== -->
                            <?php if($grupo == 'C'): ?>

                            <div class="alert alert-warning">
                                <i class="fa fa-exclamation-triangle"></i>
                                Ingresa el importe del <?php echo strtolower($tipo_nc->descripcion); ?> aplicado.
                            </div>

                            <div class="row">
                                <div class="col-md-3 form-group">
                                    <label>Importe <span class="text-danger">*</span></label>
                                    <input type="number" step="0.01" min="0.01" id="importe_global"
                                           class="form-control text-right"
                                           placeholder="0.00" required>
                                    <small class="text-muted">
                                        Total comprobante: <?php echo $comprobante->moneda_abreviado; ?>
                                        <?php echo number_format((float)$comprobante->pago_neto, 2); ?>
                                    </small>
                                </div>
                            </div>

                            <!-- Item genérico oculto -->
                            <input type="hidden" name="detalle[0][producto_id]" value="<?php echo $items ? $items[0]->producto_id : 1; ?>">
                            <input type="hidden" name="detalle[0][descripcion]" id="desc_global" value="<?php echo $tipo_nc->descripcion; ?>">
                            <input type="hidden" name="detalle[0][cantidad]" value="1">
                            <input type="hidden" name="detalle[0][precio_unitario]" id="precio_global" value="0">
                            <input type="hidden" name="detalle[0][tipo_afectacion_igv]" value="10">

                            <?php endif; ?>

                            <!-- ============================================== -->
                            <!-- GRUPO D — SOLO SUSTENTO -->
                            <!-- ============================================== -->
                            <?php if($grupo == 'D'): ?>

                            <div class="alert alert-info">
                                <i class="fa fa-info-circle"></i>
                                Este tipo de nota de crédito no modifica montos. Solo requiere un sustento.
                            </div>

                            <?php endif; ?>

                            <!-- SUSTENTO y TOTALES -->
                            <div class="row" style="margin-top:15px;">
                                <div class="col-md-6 form-group">
                                    <label>Sustento <span class="text-danger">*</span></label>
                                    <textarea name="sustento" id="sustento" class="form-control" rows="3"
                                              placeholder="Describa el motivo de la nota de crédito..." required></textarea>
                                </div>
                                <div class="col-md-3 col-md-offset-3">
                                    <table class="table table-bordered">
                                        <tr>
                                            <th>Subtotal:</th>
                                            <td class="text-right" id="display_subtotal">0.00</td>
                                        </tr>
                                        <tr>
                                            <th>IGV (<?php echo number_format((float)($comprobante->igv_porcentaje ?? 18), 2); ?>%):</th>
                                            <td class="text-right" id="display_igv">0.00</td>
                                        </tr>
                                        <tr class="active">
                                            <th>TOTAL NC:</th>
                                            <td class="text-right"><strong id="display_total">0.00</strong></td>
                                        </tr>
                                    </table>
                                </div>
                            </div>

                        </div>
                    </div>

                    <button type="submit" class="btn btn-primary btn-lg">
                        <i class="fa fa-save"></i> Guardar Nota de Crédito
                    </button>
                    <a href="<?php echo base_url('index.php/ventas/nota_credito'); ?>" class="btn btn-default btn-lg">
                        Cancelar
                    </a>

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

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

    var igvPorc = <?php echo (float)($comprobante->igv_porcentaje ?? 18); ?>;
    var grupo   = '<?php echo $grupo; ?>';

    function calcularTotales() {
        var subtotalTotal = 0;
        var igvTotal      = 0;

        if (grupo === 'A' || grupo === 'B') {
            <?php foreach($items as $idx => $item): ?>
            (function() {
                var idx      = <?php echo $idx; ?>;
                var cantidad = parseFloat($('input[name="detalle[' + idx + '][cantidad]"]').val() || 0);
                var precio   = parseFloat($('input[name="detalle[' + idx + '][precio_unitario]"]').val() || 0);
                var subtotal = parseFloat((cantidad * precio).toFixed(2));
                var igv      = parseFloat((subtotal * igvPorc / 100).toFixed(2));
                var total    = parseFloat((subtotal + igv).toFixed(2));

                $('.span-subtotal-<?php echo $idx; ?>').text(subtotal.toFixed(2));
                $('.span-igv-<?php echo $idx; ?>').text(igv.toFixed(2));
                $('.span-total-<?php echo $idx; ?>').text(total.toFixed(2));

                subtotalTotal += subtotal;
                igvTotal      += igv;
            })();
            <?php endforeach; ?>
        } else if (grupo === 'C') {
            var importe  = parseFloat($('#importe_global').val() || 0);
            subtotalTotal= parseFloat((importe / (1 + igvPorc / 100)).toFixed(2));
            igvTotal     = parseFloat((importe - subtotalTotal).toFixed(2));
            $('#precio_global').val(subtotalTotal.toFixed(4));
        }

        var totalFinal = parseFloat((subtotalTotal + igvTotal).toFixed(2));

        $('#display_subtotal').text(subtotalTotal.toFixed(2));
        $('#display_igv').text(igvTotal.toFixed(2));
        $('#display_total').text(totalFinal.toFixed(2));

        // Actualizar campos ocultos
        $('#subtotal').val(subtotalTotal.toFixed(2));
        $('#igv_total').val(igvTotal.toFixed(2));
        $('#total_nc').val(totalFinal.toFixed(2));
    }

    // Calcular al cambiar cantidad o precio
    $(document).on('input', '.inp-cantidad, .inp-precio, #importe_global', function() {
        calcularTotales();
    });

    // Calcular al cargar
    calcularTotales();

    // Validar al enviar
    $('#formNC').on('submit', function(e) {
        if (!$('#sustento').val().trim()) {
            e.preventDefault();
            Swal.fire({ icon: 'warning', title: 'Atención', text: 'El sustento es obligatorio' });
            return false;
        }
        if (parseFloat($('#total_nc').val()) < 0) {
            e.preventDefault();
            Swal.fire({ icon: 'warning', title: 'Atención', text: 'El total no puede ser negativo' });
            return false;
        }
    });

});
</script>
