@extends('layouts.app') @section('title', 'Detalle de Venta') @section('content') {{-- Estilos para la impresión --}} {{-- Botón de impresión que se oculta al imprimir --}}

Detalle de Venta #{{ $venta->id }}

{{-- Mensajes de éxito o error --}} @if (session('success'))
{{ session('success') }}
@endif @if (session('error'))
{{ session('error') }}
@endif {{-- Contenido del comprobante que se imprimirá --}}
{{-- Título que se mostrará en la impresión --}}

Detalle de Venta #{{ $venta->id }}

@php $totalSinDescuento = $venta->detalles->sum(fn($detalle) => $detalle->cantidad * $detalle->precio); $totalFinal = $venta->total; $primerDetalle = $venta->detalles->first(); $metodoPago = $primerDetalle->metodo_pago ?? '-'; $pagaCon = $primerDetalle->paga_con ?? null; $vuelto = $primerDetalle->vuelto ?? null; @endphp
Vendedor: {{ $venta->user->name ?? '-' }}
Fecha: {{ $venta->created_at->format('d/m/Y H:i') }}
Método de Pago: {{ $metodoPago }}
@if($metodoPago === 'Cash' && $pagaCon) Paga con: ${{ number_format($pagaCon, 2) }}
Vuelto: ${{ number_format($vuelto, 2) }}
@endif Total sin descuento: ${{ number_format($totalSinDescuento, 2) }}
Total con descuento general: ${{ number_format($totalFinal, 2) }}

Productos vendidos:

{{-- Nueva columna para la devolución, oculta en la impresión. Ahora visible para todos los usuarios autenticados --}} @if(Auth::check()) @endif @foreach($venta->detalles as $detalle) @php $subtotal = $detalle->cantidad * $detalle->precio; $descuento = $detalle->descuento_individual ?? 0; $tipo = $detalle->tipo_descuento_individual ?? 'fijo'; @endphp {{-- Formulario para la devolución, visible para cualquier usuario autenticado --}} @if(Auth::check()) @endif @endforeach
Producto Código Cantidad Precio Unitario DescuentoDevolver
{{ $detalle->producto->nombre ?? '-' }} {{ $detalle->producto->codigo ?? '-' }} {{ $detalle->cantidad }} ${{ number_format($detalle->precio, 2) }} ${{ number_format($detalle->descuento, 2) }}
@csrf
@php $infoDescuentos = json_decode($venta->descuentos, true); $descuentoGeneral = $infoDescuentos['general']['monto'] ?? 0; $tipoDescuentoGeneral = $infoDescuentos['general']['tipo'] ?? 'fijo'; @endphp @if($descuentoGeneral > 0)
Descuento General Aplicado: @if($tipoDescuentoGeneral === 'porcentaje' && $totalSinDescuento > 0) {{ number_format(($descuentoGeneral / $totalSinDescuento) * 100, 2) }} % @else ${{ number_format($descuentoGeneral, 2) }} @endif
@endif
{{-- Botón para volver que no se mostrará en la impresión --}} Volver @endsection