@extends('layouts.admin') @section('title', 'Auditoria') @section('breadcrumb')@endsection @push('styles') @endpush @section('content') @php function actionBadge(string $action): array { return match(true) { in_array($action, ['created', 'store', 'registered']) => ['bg'=>'#dcfce7','color'=>'#16a34a','icon'=>'✚'], in_array($action, ['updated', 'edit', 'changed', 'adjusted']) => ['bg'=>'#dbeafe','color'=>'#2563eb','icon'=>'✎'], in_array($action, ['deleted', 'destroy']) => ['bg'=>'#fee2e2','color'=>'#dc2626','icon'=>'✕'], in_array($action, ['canceled', 'cancellation']) => ['bg'=>'#fce7f3','color'=>'#be185d','icon'=>'⊘'], in_array($action, ['checkout', 'checked_out']) => ['bg'=>'#fef3c7','color'=>'#d97706','icon'=>'↗'], in_array($action, ['checkin', 'checked_in']) => ['bg'=>'#e0f2fe','color'=>'#0369a1','icon'=>'↙'], in_array($action, ['payment', 'paid', 'payment_received']) => ['bg'=>'#d1fae5','color'=>'#059669','icon'=>'$'], in_array($action, ['reversed', 'payment_cancelled']) => ['bg'=>'#fef2f2','color'=>'#ef4444','icon'=>'↩'], default => ['bg'=>'#f1f5f9','color'=>'#475569','icon'=>'·'], }; } function entityLabel(string $type): string { return match($type) { 'reservation' => 'Reserva', 'guest' => 'Hóspede', 'payment' => 'Pagamento', 'room' => 'Quarto', 'cashbox' => 'Caixa', 'adjustment' => 'Ajuste', 'product' => 'Produto', 'user' => 'Usuário', default => ucfirst(str_replace('_',' ',$type)), }; } $maxAction = $topActions->max('total') ?: 1; @endphp {{-- Header --}}
Registro imutável de todas as ações do sistema · {{ \Carbon\Carbon::parse($from)->format('d/m/Y') }} a {{ \Carbon\Carbon::parse($to)->format('d/m/Y') }}
| Data/Hora | Usuário | Ação | Entidade | Ref. | IP | Detalhe |
|---|---|---|---|---|---|---|
|
{{ $log->created_at->format('d/m/Y') }} {{ $log->created_at->format('H:i:s') }} |
@if($log->user)
{{ $log->user->display_name ?? $log->user->name }}
{{ $log->user->email }}
@else
Sistema
@endif
|
{{ $b['icon'] }} {{ $log->action }} | {{ entityLabel($log->entity_type) }} | @if($log->entity_id) #{{ $log->entity_id }} @else — @endif | {{ $log->ip_address ?? '—' }} | @if($log->old_values || $log->new_values || $log->reason) Ver diff @else — @endif |
| Nenhum registro encontrado para os filtros aplicados. | ||||||