@extends('layouts.print') @section('title', 'Voids & Overrides — ' . \Carbon\Carbon::parse($from)->format('M j') . '–' . \Carbon\Carbon::parse($to)->format('M j, Y')) @section('content') @php $propName = \App\Models\Setting::get('property_name', config('app.name', 'Parkview Hotel')); $periodLabel = \Carbon\Carbon::parse($from)->format('M j') . ' – ' . \Carbon\Carbon::parse($to)->format('M j, Y'); @endphp
@include('reports.print._letterhead', [ 'reportTitle' => 'Voids & Overrides Audit', 'periodLabel' => $periodLabel, 'backUrl' => route('reports.voids', ['from' => $from, 'to' => $to]), ])
@foreach([ ['Total Events', number_format($total), $byUser->count() . ' staff'], ['Voids', $groupCounts['Voids'], '₱' . number_format($voidedValue, 2) . ' voided'], ['Reversals', $groupCounts['Reversals'], 'check-in/out, cancel'], ['Overrides', $groupCounts['Overrides'], 'transfers & status'], ] as [$label, $value, $sub])

{{ $label }}

{{ $value }}

{{ $sub }}

@endforeach

By Action

@if($byAction->isEmpty())

None.

@else @foreach($byAction as $a) @endforeach
{{ $a['label'] }} {{ $a['count'] }}
@endif

By Staff

@if($byUser->isEmpty())

None.

@else @foreach($byUser as $u) @endforeach
Staff Events Voided
{{ $u['name'] }} {{ $u['count'] }} {{ $u['value'] > 0 ? '₱' . number_format($u['value'], 2) : '—' }}
@endif

Audit Trail ({{ $total }})

@if($rows->isEmpty())

No voids, reversals or overrides in this period.

@else @foreach($rows as $row) @endforeach
When Staff Action Subject Amount
{{ $row['at']->format('M j, g:i A') }} {{ $row['user'] }} {{ $row['label'] }} {{ $row['subject'] ?? '—' }} {{ $row['amount'] !== null ? '₱' . number_format($row['amount'], 2) : '—' }}
@endif
{{ $propName }} · Voids & Overrides Audit Printed {{ now()->format('M j, Y g:i A') }}
@endsection