RELATÓRIO DE CARREGAMENTO DE ATMs

Gerado em: {{ now()->format('d/m/Y H:i:s') }}
INFORMAÇÕES DO PEDIDO
@if (isset($order['responsible'])) @endif @if (isset($order['completed_at'])) @endif
ID {{ $order['id'] }}
Banco {{ $order['bank']['name'] }}
Estado {{ ucfirst($order['status']) }}
Responsável {{ $order['responsible']['name'] }}@if (isset($order['responsible']['phone'])) - {{ $order['responsible']['phone'] }} @endif
Data Pedido {{ $order['date'] }}
Data Conclusão {{ \Carbon\Carbon::parse($order['completed_at'])->format('d/m/Y H:i') }}
Tempo Carregamento {{ $order['loading_duration'] ?? ($order['duration'] ?? '-') }}
Localização {{ $order['location'] }}
Rota {{ $order['route'] }}
Distância {{ $order['distance'] }}
RESUMO
ATMs Abastecidos {{ $order['atms_count'] }}
Cassetes Carregadas {{ isset($order['atms']) ? collect($order['atms'])->sum('cassettes_count') : 0 }}
VALIDAÇÃO E COMPARAÇÃO
@php $hasValidation = isset($order['atms']) && collect($order['atms'])->some(fn($atm) => isset($atm['validation'])); $allValidated = true; $validatedCount = 0; $totalToValidate = 0; if ($hasValidation && isset($order['atms'])) { foreach ($order['atms'] as $atm) { if (isset($atm['validation'])) { $totalToValidate++; if ($atm['validation']['validated'] ?? false) { $validatedCount++; } else { $allValidated = false; } } } } @endphp @if ($hasValidation && isset($order['atms'])) @if ($allValidated && $validatedCount > 0)
✓ DADOS CONFEREM
@elseif($validatedCount > 0)
✗ DIVERGÊNCIAS ENCONTRADAS
@else
VALIDAÇÃO PENDENTE
@endif @if (isset($order['atms'][0]['validation']['validated_at'])) @endif
Sistema Origem Sistema de Gestão de ATMs
Data Validação {{ \Carbon\Carbon::parse($order['atms'][0]['validation']['validated_at'])->format('d/m/Y H:i') }}
@foreach ($order['atms'] as $index => $atm) @if (isset($atm['validation']))
ATM {{ $index + 1 }}: {{ $atm['id'] }}
@php $idMatch = $atm['id'] === $atm['validation']['atm_id']; $statusMatch = $atm['status'] === $atm['validation']['status']; $cassettesMatch = $atm['cassettes_count'] === $atm['validation']['cassettes_count']; $dateMatch = ($atm['loading_date'] ?? null) === ($atm['validation']['loading_date'] ?? null); @endphp
Item Esperado Retornado Estado
ID {{ $atm['id'] }} {{ $atm['validation']['atm_id'] }} {{ $idMatch ? '✓' : '✗' }}
Estado {{ $atm['status'] }} {{ $atm['validation']['status'] }} {{ $statusMatch ? '✓' : '✗' }}
Cassetes {{ $atm['cassettes_count'] }} {{ $atm['validation']['cassettes_count'] }} {{ $cassettesMatch ? '✓' : '✗' }}
Data {{ $atm['loading_date'] ?? 'N/A' }} {{ $atm['validation']['loading_date'] ?? 'N/A' }} {{ $dateMatch ? '✓' : '✗' }}
@if (isset($atm['cassettes']) && isset($atm['validation']['cassettes']) && count($atm['cassettes']) > 0)
Cassetes:
@foreach ($atm['cassettes'] as $cIndex => $cassette) @php $validationCassette = $atm['validation']['cassettes'][$cIndex] ?? null; $notesMatch = $validationCassette && $cassette['notes'] === $validationCassette['notes']; @endphp
C{{ $cIndex + 1 }}: Esp: {{ $cassette['notes'] }} @if ($validationCassette) Ret: {{ $validationCassette['notes'] }} {{ $notesMatch ? '✓' : '✗' }} @endif
@endforeach
@endif
@endif @endforeach
RESUMO VALIDAÇÃO
@if ($totalToValidate > $validatedCount) @endif
ATMs Validados {{ $totalToValidate }}
Conferindo {{ $validatedCount }}
Divergências {{ $totalToValidate - $validatedCount }}
@else
Validação pendente - Aguardando dados do sistema externo
@endif
DETALHAMENTO ATMs
@if (isset($order['atms']) && count($order['atms']) > 0) @foreach ($order['atms'] as $index => $atm)
ATM {{ $index + 1 }}: {{ $atm['id'] }}
Estado: {{ $atm['status'] }}
Cassetes: {{ $atm['cassettes_count'] }}
@if (isset($atm['loading_date']))
Data: {{ $atm['loading_date'] }}
@endif @if (isset($atm['cassettes']) && count($atm['cassettes']) > 0)
@foreach ($atm['cassettes'] as $cIndex => $cassette) {{ $cIndex + 1 }}. {{ $cassette['notes'] }} ({{ $cassette['status'] }}) @endforeach
@endif
@endforeach @endif