@php $moeda = fn ($v): string => $v === null ? '—' : number_format((float) $v, 2, ',', '.'); $inteiro = fn ($v): string => number_format((int) $v, 0, ',', '.'); $anterior = $comparativo['anterior']; $anoPassado = $comparativo['anoPassado']; $cabecalho = 'border-b border-fio bg-chao/70 text-[0.7rem] uppercase tracking-[0.06em] text-suave'; $linhas = $tabela['linhas']; $carroceriaDe = fn ($linha): string => \App\Carroceria::rotuloDe($linha->carroceria ?? null); // Título da aba: só faz sentido nomear quando o filtro aponta para um alvo // só; com vários, o resumo acima da tabela já diz quais são. $umaMarca = count($marcasAtuais) === 1 ? $opcoesMarca->firstWhere('marca_id', $marcasAtuais[0])?->marca : null; $deQuem = count($modelosAtuais) === 1 ? $modelosAtuais[0] : $umaMarca; [$titulo, $nota] = match ($abaAtual) { 'carrocerias' => ['Vendas por carroceria', 'Clique num tipo para filtrar e ver os modelos dele.'], 'marcas' => ['Vendas por marca', 'Clique numa marca para filtrar e ver os modelos dela.'], 'modelos' => [$deQuem ? 'Modelos de '.$deQuem : 'Vendas por modelo', 'Clique num modelo para pôr ou tirar do filtro e ver as versões dele.'], 'versoes' => [$deQuem ? 'Versões de '.$deQuem : 'Vendas por versão', 'O nome como veio do sistema de gestão.'], 'vendedores' => [$deQuem ? 'Quem vendeu '.$deQuem : 'Vendas por vendedor', 'Clique num vendedor para pôr ou tirar do filtro e ver os modelos dele.'], 'patio' => ['Tempo em pátio', 'Quanto tempo os veículos ficaram até a venda, e o que deram em cada faixa.'], 'tipos' => ['Novos e usados', null], default => ['Vendas uma a uma', 'Da mais recente para a mais antiga.'], }; $unidade = ['carrocerias' => 'carrocerias', 'marcas' => 'marcas', 'modelos' => 'modelos', 'versoes' => 'versões', 'vendedores' => 'vendedores', 'vendas' => 'vendas'][$abaAtual] ?? null; @endphp {{-- Filtros: o período em cima; loja, vendedor, tipo, carroceria, marca e modelo embaixo. --}}
Período
@foreach ([['1', 'Mês'], ['3', '3 meses'], ['6', '6 meses'], ['12', '12 meses'], ['ano', 'No ano']] as [$chave, $rotulo]) @endforeach
{{-- Quem vendeu no período, com a filial do cadastro ao lado do nome. --}} @if ($filtrando) @endif
{{-- O que está sendo mostrado, numa linha. --}}

{{ $rotulos['periodo'] }} {{ $resumoFiltros }} {{ $inteiro($totais->quantidade) }} veículos, {{ (int) $totais->marcas }} {{ (int) $totais->marcas === 1 ? 'marca' : 'marcas' }}, {{ (int) $totais->modelos }} {{ (int) $totais->modelos === 1 ? 'modelo' : 'modelos' }}

{{ (int) $totais->novos }} novos · {{ (int) $totais->quantidade - (int) $totais->novos }} usados
margem de {{ $totais->margem === null ? '—' : number_format((float) $totais->margem, 1, ',', '.').'%' }}
idade média na venda: {{ $totais->idade_media === null ? '—' : number_format((float) $totais->idade_media, 1, ',', '.').' anos' }}
@if ($graficos !== [])
@endif {{-- Análise: uma tabela por vez. --}} @if ($unidade)
@if (in_array($abaAtual, ['modelos', 'versoes'], true)) @else @endif

@if ($tabela['faltam'] > 0) Mostrando {{ $inteiro($linhas->count()) }} de {{ $inteiro($tabela['total']) }} {{ $unidade }} @else {{ $inteiro($tabela['total']) }} {{ $unidade }} @endif

@endif @if ($abaAtual === 'carrocerias') @forelse ($linhas as $linha) @php $escolhida = in_array((string) $linha->carroceria, $carroceriasAtuais, true); @endphp $escolhida])> @empty @endforelse @if ($linhas->contains('carroceria', \App\Consultas\MarcasEModelos::SEM_CARROCERIA)) @endif @elseif ($abaAtual === 'marcas') @forelse ($linhas as $linha) @php $escolhida = in_array((int) $linha->marca_id, $marcasAtuais, true); @endphp $escolhida])> @empty @endforelse @elseif ($abaAtual === 'modelos') @forelse ($linhas as $linha) @php $escolhido = in_array((string) $linha->modelo, $modelosAtuais, true); @endphp $escolhido])> @empty @endforelse @elseif ($abaAtual === 'versoes') @forelse ($linhas as $linha) @empty @endforelse @elseif ($abaAtual === 'vendedores') @forelse ($linhas as $linha) @php $escolhido = in_array((int) $linha->vendedor_id, $vendedoresAtuais, true); @endphp @if ($linha->vendedor_id) $escolhido])> @else @endif @empty @endforelse @elseif ($abaAtual === 'patio') @foreach ($linhas as $linha) @endforeach @elseif ($abaAtual === 'tipos') @forelse ($linhas as $linha) @empty @endforelse @else @forelse ($linhas as $venda) @empty @endforelse @endif
Carroceria
@if ($escolhida)@endif {{ (int) $linha->marcas }} {{ (int) $linha->marcas === 1 ? 'marca' : 'marcas' }} · {{ (int) $linha->modelos }} {{ (int) $linha->modelos === 1 ? 'modelo' : 'modelos' }}
Nenhuma venda no período.
Modelo sem classificação aparece em “Sem classificação”. @can('gerir-cadastros') Classificar agora → @endcan
Marca
@if ($escolhida)@endif
Nenhuma venda no período.
Modelo Versões
@if ($escolhido)@endif {{ $umaMarca === null ? $linha->marca.' · ' : '' }}{{ $carroceriaDe($linha) }} {{ (int) $linha->versoes }}
{{ trim($busca) !== '' ? 'Nenhum modelo ou versão com “'.$busca.'” no período.' : 'Nenhuma venda no período.' }}
Versão
{{ $linha->versao }} @if ($modelosAtuais === []) {{ $linha->marca }} · {{ $linha->modelo }} · {{ $carroceriaDe($linha) }} @endif
{{ trim($busca) !== '' ? 'Nenhuma versão com “'.$busca.'” no período.' : 'Nenhuma venda no período.' }}
Vendedor
@if ($escolhido)@endif
@unless ($linha->ativo) inativo @endunless
{{ $linha->vendedor }}
Nenhuma venda no período.
Faixa
$linha->faixa <= 3, 'bg-amber-500' => $linha->faixa === 4, 'bg-rose-500' => $linha->faixa === 5]) aria-hidden="true"> {{ $linha->rotulo }}
Tipo
{{ $linha->status === 'novo' ? 'Novos' : 'Usados' }}
Nenhuma venda no período.
Data Veículo Ano Placa Loja Vendedor Valor Lucro Dias em pátio
{{ date('d/m/Y', (int) strtotime((string) $venda->data_venda)) }} {{ $venda->versao }} @if ($venda->status === 'novo') novo @endif @if ($umaMarca === null) {{ $venda->marca }} @endif {{ $venda->ano_modelo }} {{ $venda->identificacao ?? '—' }} {{ $venda->vendedor }} {{ $moeda($venda->valor_venda) }} (float) $venda->lucro < 0])>{{ $moeda($venda->lucro) }} (int) $venda->dias_patio >= 90 && (int) $venda->dias_patio < 180, 'font-medium text-rose-700' => (int) $venda->dias_patio >= 180, ])>{{ (int) $venda->dias_patio }}
Nenhuma venda no período.
{{-- Carrega mais um bloco sem sair da página; o Livewire troca só a tabela. --}} @if ($unidade && ($tabela['faltam'] > 0 || $tabela['recolhivel']))
@if ($tabela['faltam'] > 0) @endif @if ($tabela['recolhivel']) @endif
@endif