@extends('layouts.master') @section('title', 'Estatísticas - ' . $publicacao->titulo) @push('styles') @endpush @section('main-content')

{{ $publicacao->titulo }}

{{ $publicacao->data_inicio->format('d/m/Y') }} até {{ $publicacao->data_fim->format('d/m/Y') }} {{ ucfirst($publicacao->status) }}

Cliente: {{ $publicacao->cliente->name ?? 'N/A' }} Franquia: {{ $publicacao->franquia->name ?? 'N/A' }}

@if(isset($stats['usando_dados_detalhados']) && !$stats['usando_dados_detalhados'] && $stats['total_impressoes'] > 0)
Visualizações: Esta publicação possui {{ number_format($stats['total_impressoes'], 0, ',', '.') }} visualizações registradas (dados agregados). Gráficos e detalhamentos por dia estão disponíveis apenas quando há registros detalhados de impressões.
@endif
{{ isset($stats['usando_dados_detalhados']) && !$stats['usando_dados_detalhados'] ? 'Total de Visualizações' : 'Total de Impressões' }}

{{ number_format($stats['total_impressoes'] ?? 0, 0, ',', '.') }}

Média: {{ number_format($stats['media_diaria_impressoes'] ?? 0, 1, ',', '.') }}/dia
Total de Cliques

{{ number_format($stats['total_cliques'] ?? 0, 0, ',', '.') }}

Média: {{ number_format($stats['media_diaria_cliques'] ?? 0, 1, ',', '.') }}/dia
CTR (Taxa de Cliques)

{{ number_format($stats['ctr'] ?? 0, 2, ',', '.') }}%

@if(($stats['ctr'] ?? 0) >= 5) Excelente performance! @elseif(($stats['ctr'] ?? 0) >= 2) Performance boa @else Pode melhorar @endif
{{ isset($stats['usando_dados_detalhados']) && !$stats['usando_dados_detalhados'] ? 'Usuários Únicos' : 'Hotspots Ativos' }}

@if(isset($stats['usando_dados_detalhados']) && !$stats['usando_dados_detalhados']) {{ $stats['total_usuarios_logs'] ?? 0 }} @else {{ count($stats['top_hotspots'] ?? []) }} @endif

{{ isset($stats['usando_dados_detalhados']) && !$stats['usando_dados_detalhados'] ? 'Que visualizaram' : 'Exibindo o anúncio' }}
Impressões e Cliques - Últimos 30 dias
@if(isset($stats['usando_dados_detalhados']) && $stats['usando_dados_detalhados'] && !empty($stats['impressoes_por_dia']))
@else

Dados detalhados de rastreamento não disponíveis. @if(isset($stats['usando_dados_detalhados']) && !$stats['usando_dados_detalhados'] && $stats['total_impressoes'] > 0)
Esta publicação possui {{ number_format($stats['total_impressoes'], 0, ',', '.') }} visualizações em formato agregado. @endif

@endif
Cliques por Hora do Dia
@if(isset($stats['cliques_por_hora']) && count($stats['cliques_por_hora']) > 0)
@else

Nenhum clique registrado ainda

@endif
Top 10 Hotspots - Mais Impressões
@forelse($stats['top_hotspots'] ?? [] as $index => $hotspot) @empty @endforelse
# Serial Impressões Cliques CTR
@if($index === 0) 🥇 @elseif($index === 1) 🥈 @elseif($index === 2) 🥉 @else {{ $index + 1 }} @endif {{ $hotspot->serial }} {{ number_format($hotspot->total_impressoes, 0, ',', '.') }} {{ number_format($hotspot->total_cliques, 0, ',', '.') }} {{ number_format($hotspot->ctr, 2, ',', '.') }}%
Nenhum dado disponível ainda
Dados por Dia - Últimos 7 dias
@php $dadosDiarios = collect($stats['impressoes_por_dia'] ?? []) ->sortByDesc('data') ->take(7); @endphp @forelse($dadosDiarios as $dia) @empty @endforelse
Data Impressões Cliques CTR
{{ \Carbon\Carbon::parse($dia['data'])->format('d/m/Y') }} {{ \Carbon\Carbon::parse($dia['data'])->translatedFormat('l') }} {{ number_format($dia['impressoes'], 0, ',', '.') }} {{ number_format($dia['cliques'], 0, ',', '.') }} @php $ctrDia = $dia['impressoes'] > 0 ? ($dia['cliques'] / $dia['impressoes']) * 100 : 0; @endphp {{ number_format($ctrDia, 2, ',', '.') }}%
Nenhum dado disponível ainda
Usuários que Visualizaram a Publicação @if(isset($stats['total_usuarios_logs']) && $stats['total_usuarios_logs'] > 0) ({{ $stats['total_usuarios_logs'] }} {{ $stats['total_usuarios_logs'] == 1 ? 'usuário único' : 'usuários únicos' }}) @endif
@forelse($stats['logs_acesso'] ?? [] as $log) @empty @endforelse
Data/Hora MAC IP Dispositivo Hotspot Cliente Tempo Sessão
{{ $log['created_at'] }} {{ $log['mac_parcial'] }} {{ $log['ip_address'] }} {{ $log['dispositivo'] }} {{ $log['hotspot'] }} {{ $log['cliente'] }} {{ $log['tempo_sessao'] > 0 ? floor($log['tempo_sessao'] / 60) . 'min' : '-' }}
Nenhum registro de visualização disponível ainda
@if(isset($stats['logs_acesso']) && count($stats['logs_acesso']) >= 30)
Mostrando os 30 registros mais recentes
@endif
@if($publicacao->walledGardens && $publicacao->walledGardens->count() > 0)
Walled Gardens Configurados
@foreach($publicacao->walledGardens as $wg)
@if($wg->tipo === 'domain') @elseif($wg->tipo === 'ip') @else @endif
@if($wg->tipo === 'domain') 🌐 Domínio @elseif($wg->tipo === 'ip') 📡 IP @else 🔒 Subnet @endif
{{ $wg->endereco }} @if($wg->descricao) {{ $wg->descricao }} @endif
{{ $wg->ativo ? 'Ativo' : 'Inativo' }}
@endforeach
@endif
@endsection @push('scripts') @endpush