{{-- resources/views/livewire/reportes/ventas.blade.php --}}
📊 Reportes · Ventas
Excel para contador · compatible con declaración D-104
@if($mensaje_error)
❌ {{ $mensaje_error }}
@endif {{-- Selector de perĂ­odo --}}
{{-- Accesos rápidos de período --}}
@if($resumen) {{-- KPIs del perĂ­odo --}}
Comprobantes
{{ number_format($resumen['total_comprobantes']) }}
Venta neta
₡{{ number_format($resumen['subtotal_bruto'] - $resumen['total_descuentos'], 0) }}
IVA cobrado
₡{{ number_format($resumen['total_iva'], 0) }}
Total comprobantes
₡{{ number_format($resumen['total_comprobante'], 0) }}
{{-- Tabla resumen D-104 --}}
Resumen por tarifa (D-104)
@foreach([ ['13% · General', 'base_13', 'iva_13', 0], ['4% · Salud (con dev)','base_4', 'iva_4_con_dev', 'iva_4_con_dev'], ['4% · Salud (sin dev)','base_4', 'iva_4_sin_dev', 0], ['2% · Medicamentos', 'base_2', 'iva_2', 0], ['1% · Canasta básica', 'base_1', 'iva_1', 0], ] as [$label, $base_key, $iva_key, $dev_key]) @php $base = (float) ($resumen[$base_key] ?? 0); $iva = (float) ($resumen[$iva_key] ?? 0); $dev = is_numeric($dev_key) ? $dev_key : (float) ($resumen[$dev_key] ?? 0); $neto = $iva - $dev; @endphp @if($iva > 0) @endif @endforeach
Tarifa IVA Base gravada IVA cobrado DevoluciĂłn IVA neto
{{ $label }} ₡{{ number_format($base, 2) }} ₡{{ number_format($iva, 2) }} {{ $dev > 0 ? '-₡'.number_format($dev, 2) : '—' }} ₡{{ number_format($neto, 2) }}
TOTAL ₡{{ number_format(($resumen['base_13']??0)+($resumen['base_4']??0)+($resumen['base_2']??0)+($resumen['base_1']??0), 2) }} ₡{{ number_format($resumen['total_iva'], 2) }} -₡{{ number_format($resumen['total_devolucion_iva'], 2) }} ₡{{ number_format($resumen['total_iva'] - $resumen['total_devolucion_iva'], 2) }}
{{-- Preview tabla de comprobantes --}} @if($datos && $datos->count() > 0)
Ăšltimos comprobantes del perĂ­odo ({{ $datos->count() }} total)
@foreach($datos->take(15) as $fila) @endforeach @if($datos->count() > 15) @endif
Fecha N° Consecutivo Receptor Base 13% IVA 13% Base 4% IVA 4% Total
{{ $fila->created_at->format('d/m/Y') }} {{ $fila->consecutivo }} {{ $fila->receptor_nombre ?: '—' }} ₡{{ number_format($fila->base_gravada_13, 2) }} ₡{{ number_format($fila->iva_13, 2) }} ₡{{ number_format($fila->base_gravada_4, 2) }} ₡{{ number_format($fila->iva_4, 2) }} ₡{{ number_format($fila->total_comprobante, 2) }}
… y {{ $datos->count() - 15 }} más en el Excel exportado
@endif @endif