@extends('layouts.app') @section('title', 'Reporte de Caja #' . $cashRegister->id) @section('content')
{{-- Encabezado --}}

📊 Reporte de Caja #{{ $cashRegister->id }}

{{ $cashRegister->user->name ?? '-' }} · {{ $cashRegister->opening_time->format('d/m/Y') }}
{{-- Tarjetas resumen --}}
Total Ventas
S/ {{ number_format($totalSales, 2) }}
{{ $orders->count() }} operaciones
Efectivo
S/ {{ number_format($totalCash, 2) }}
Apertura: S/ {{ number_format($cashRegister->opening_amount, 2) }}
Digital
S/ {{ number_format($totalCard+$totalYape+$totalPlin+$totalTransfer, 2) }}
@if($totalYape>0) Yape:{{ number_format($totalYape,2) }} @endif @if($totalPlin>0) Plin:{{ number_format($totalPlin,2) }} @endif @if($totalCard>0) TC:{{ number_format($totalCard,2) }} @endif
@php $diff = $cashRegister->difference ?? 0; @endphp
{{ $cashRegister->status === 'closed' ? 'Diferencia' : 'Esperado' }}
@if($cashRegister->status === 'closed') S/ {{ number_format($diff, 2) }} @else S/ {{ number_format($expectedAmount, 2) }} @endif
{{ $cashRegister->status === 'closed' ? ($diff >= 0 ? '✔ Sin faltante' : '⚠ Faltante') : 'Turno abierto' }}
{{-- Detalle ventas --}}
Detalle de Ventas ({{ $orders->count() }})
@forelse($orders as $order) @empty @endforelse
Folio Hora Mesa Cliente Comprob. Método Total
#{{ str_pad($order->id,6,'0',STR_PAD_LEFT) }} {{ $order->created_at->format('H:i') }} {{ $order->table->name ?? 'POS Rápido' }} {{ Str::limit($order->client_name ?? 'Público', 20) }} @php $dt = $order->document_type ?? 'Ticket'; @endphp {{ $dt }} @php $pm = $order->payment_method; $pmLabel = match($pm) { 'cash'=>'Efectivo','card'=>'Tarjeta','yape'=>'Yape','plin'=>'Plin','transferencia'=>'Transf.', default=>ucfirst($pm) }; $pmColor = match($pm) { 'cash'=>'success','card'=>'primary','yape'=>'warning','plin'=>'info', default=>'secondary' }; @endphp {{ $pmLabel }} S/ {{ number_format($order->total, 2) }}
Sin ventas en este turno
TOTAL: S/ {{ number_format($totalSales, 2) }}
{{-- Panel derecho: resumen + gastos --}}
{{-- Resumen por método --}}
Por Método de Pago
@php $methods = [ ['Efectivo', $totalCash, 'success'], ['Tarjeta', $totalCard, 'primary'], ['Yape', $totalYape, 'warning'], ['Plin', $totalPlin, 'info'], ['Transferencia', $totalTransfer, 'secondary'], ]; @endphp @foreach($methods as [$label, $amount, $color]) @if($amount > 0)
{{ $label }} S/ {{ number_format($amount, 2) }}
@endif @endforeach
{{-- Arqueo --}}
Arqueo de Caja
AperturaS/ {{ number_format($cashRegister->opening_amount,2) }}
+ Ventas efectivoS/ {{ number_format($totalCash,2) }}
- GastosS/ {{ number_format($totalExpenses,2) }}
= EsperadoS/ {{ number_format($expectedAmount,2) }}
@if($cashRegister->status === 'closed')
Contado realS/ {{ number_format($cashRegister->closing_amount,2) }}
Diferencia S/ {{ number_format($cashRegister->difference??0,2) }}
@endif @if($cashRegister->notes)
{{ $cashRegister->notes }}
@endif
{{-- Gastos --}} @if($expenses->count() > 0)
Gastos ({{ $expenses->count() }})
@foreach($expenses as $exp) @endforeach
{{ $exp->created_at->format('H:i') }} {{ Str::limit($exp->description ?? '-', 25) }} S/ {{ number_format($exp->amount,2) }}
Total: S/ {{ number_format($totalExpenses,2) }}
@endif
@endsection