@php use App\Visual\Cores; $margem = fn (?object $l) => $l !== null && (float) $l->ticket_medio > 0 ? (float) $l->lucro_medio / (float) $l->ticket_medio * 100 : null; $porLoja = $lojas->keyBy('unidade'); $colunas = $lojas->pluck('unidade')->when($lojas->count() > 1, fn ($c) => $c->push('Total das lojas')); $linhaDe = fn (string $coluna) => $coluna === 'Total das lojas' ? $totais : $porLoja->get($coluna); $anteriorDe = fn (string $coluna) => $coluna === 'Total das lojas' ? $comparativo['anterior']['totais'] : $comparativo['anterior']['lojas']->get($coluna); // [rótulo, campo, formato, alta é boa] $linhasTabela = [ ['Unidades vendidas', 'quantidade', 'inteiro', true, 'vendas_unidades'], ['Valor de venda', 'faturamento', 'moeda', true, 'faturamento'], ['Ticket médio', 'ticket_medio', 'moeda', true, 'ticket_medio'], ['Lucro nos veículos', 'lucro', 'moeda', true, 'lucro_veiculos'], ['Lucro médio', 'lucro_medio', 'moeda', true, 'lucro_medio'], ['Dias em pátio', 'dias_patio_medio', 'decimal', false, 'dias_patio'], ]; $formatar = fn ($v, string $f) => number_format((float) $v, match ($f) { 'inteiro' => 0, 'decimal' => 1, default => 2 }, ',', '.'); $alturaBarras = fn (array $g) => max(10, count($g['rotulos']) * 1.8 + 3).'rem'; @endphp @php // A equipe do gerente é pela filial do cadastro; a venda de cada um conta // em qualquer loja, como na tela do próprio vendedor. $daEquipe = $filialNome !== null; $quem = match (true) { $proprio => 'Veículos que você vendeu em ', $daEquipe => 'Veículos vendidos pela equipe de '.mb_convert_case($filialNome, MB_CASE_TITLE).' em ', default => 'Veículos vendidos em ', }; @endphp @if ($semVendedor)

@if (auth()->user()?->perfil === \App\Perfil::Gerente) Seu acesso de gerente ainda não está ligado a uma filial, então não há equipe para mostrar. Peça ao administrador para escolher a sua filial no cadastro de usuários. @else Seu acesso ainda não está ligado a um vendedor, então não há produção para mostrar. Peça ao administrador para ligar seu usuário ao seu cadastro de vendedor. @endif

@endif @if ((int) $totais->quantidade === 0) @unless ($semVendedor)

Nenhum veículo vendido em {{ $rotulos['atual'] }}.

@endunless @else
@php $primeira = (int) $totais->primeira_quinzena; $segunda = (int) $totais->quantidade - $primeira; @endphp
{{ $primeira }} na 1ª quinzena {{ $segunda }} na 2ª
@if ($margem($totais) !== null)
margem média de {{ number_format($margem($totais), 1, ',', '.') }}% sobre o ticket
@endif
{{-- O atalho segue a permissão da tela de destino, e não o perfil: assim um perfil novo nunca herda um link que dá 403. --}} @can('ver-financeiro') Resultado por loja @endcan @foreach ($colunas as $coluna) @endforeach @foreach ($linhasTabela as [$rotulo, $campo, $formato, $altaEBoa, $explicacao]) @foreach ($colunas as $coluna) @php $linha = $linhaDe($coluna); $anterior = $anteriorDe($coluna); @endphp @endforeach @if ($campo === 'quantidade') {{-- Logo abaixo das unidades, que ela detalha: a legenda das cores fica no rótulo, e não em cada loja. --}} @foreach ($colunas as $coluna) @php $linha = $linhaDe($coluna); $vendidas = (int) ($linha->quantidade ?? 0); $naPrimeira = (int) ($linha->primeira_quinzena ?? 0); $naSegunda = $vendidas - $naPrimeira; @endphp @endforeach @endif @endforeach @foreach ($colunas as $coluna) @endforeach
Indicador {{ $coluna }}
{{ $rotulo }} $coluna === 'Total das lojas'])> $campo === 'lucro' && (float) $linha->{$campo} < 0])>{{ $formatar($linha->{$campo} ?? 0, $formato) }}
Divisão do mês 1ª quinzena $coluna === 'Total das lojas'])> @if ($vendidas === 0) @else {{ $naPrimeira }} na 1ª quinzena {{ $naSegunda }} na 2ª quinzena @endif
Margem média $coluna === 'Total das lojas'])> {{ $margem($linhaDe($coluna)) === null ? '—' : number_format($margem($linhaDe($coluna)), 1, ',', '.').'%' }}
@can('ver-financeiro') Marcas e modelos @endcan
@if ($vendedores->isNotEmpty())
@endif @if ($graficos['financeiras']['rotulos'] !== [])
@endif
@if ($vendedores->isNotEmpty()) Meta por vendedor @endif @endif