@include('dacruz.header') @include('dacruz.sidenav')
Cotação {{ $code }}
Valor do frete R$ {{ number_format($cotacao['valor_frete']/100, 2, ',', '.') }}
Status {{ $cotacao['status_cotacao'] ?? 'Aprovada' }}
Cliente {{ $cotacao['nome'] }}
Rota {{ $cotacao['origem'] }} → {{ $cotacao['destino'] }}
@php $tem_telefone_enviar_docs = !empty($cotacao['telefone'] ?? null); $tem_email_enviar_docs = !empty($cotacao['email'] ?? null); @endphp
@if($tem_telefone_enviar_docs || $tem_email_enviar_docs)
@endif
@if($ordemColeta) @else @endif
@if($recibos) @else @endif
@if($declaracaoConteudo && $declaracaoConteudo->preenchida_pelo_cliente) @else @endif

{{ $cotacao['nome'] }} · {{ $cotacao['origem'] }} → {{ $cotacao['destino'] }} · R$ {{ number_format($cotacao['valor_frete']/100, 2, ',', '.') }}

Cliente e Administrativo
Cliente {{ $cotacao['nome'] }}
CPF/CNPJ {{ $cotacao['ct_cpf_cnpj_cliente'] }}
Telefone @php $tel = $cotacao['telefone'] ?? ''; $digits = preg_replace('/[^0-9]/', '', $tel); while (strlen($digits) > 11 && substr($digits, 0, 2) === '55') { $digits = substr($digits, 2); } $tinha_codigo_pais = strlen(preg_replace('/[^0-9]/', '', $cotacao['telefone'] ?? '')) > 11; $telefone_exibir = $digits !== '' ? (\App\Helpers\FuncoesHelper::formatedPhone($digits) ?? $tel) : ''; if ($telefone_exibir !== '' && $tinha_codigo_pais) { $telefone_exibir = '+55 ' . $telefone_exibir; } $tel_wa = preg_replace('/[^0-9]/', '', $cotacao['telefone'] ?? ''); while (strlen($tel_wa) > 11 && substr($tel_wa, 0, 2) === '55') { $tel_wa = substr($tel_wa, 2); } if (strlen($tel_wa) === 10 || strlen($tel_wa) === 11) { $tel_wa = '55' . $tel_wa; } @endphp @if(!empty($tel_wa)) {{ $telefone_exibir ?: '-' }} @else {{ $telefone_exibir ?: '-' }} @endif
Email @if(!empty($cotacao['email'])) {{ $cotacao['email'] }} @else - @endif
Resp. fechamento {{ $cotacao['ct_responsavel_fechamento'] ?? '-' }}
Data aprovação {{ $aproved_at ?? '-' }}
Resp. atualização {{ $cotacao['nome_responsavel_atualizacao'] ?? 'N/A' }}
Status {{ $cotacao['status_cotacao'] ?? '-' }}
Carga
Origem {{ $cotacao['origem'] }}
Destino {{ $cotacao['destino'] }}
Tipo de frete {{ str_replace(['Transporte de ', 'Transporte '], '', $cotacao['tipo_frete']) }}
Peso {{ $cotacao['peso2'] }} kg
Cubagem {{ $cotacao['volume'] }} m³
Valor da nota R$ {{ $cotacao['valor_nota_formatado'] }}
Qtd. itens {{ $cotacao['quantidade'] }}
Prazo coleta {{ $cotacao['prazo_coleta'] ?? '-' }}
Prazo entrega {{ $cotacao['prazo_entrega'] }}
Financeiro
Valor do frete R$ {{ number_format($cotacao['valor_frete']/100, 2, ',', '.') }}
Forma de pagamento {{ $cotacao['ct_forma_pagamento'] ?? '-' }}
Serviços
Fracionado/Dedicado {{ isset($cotacao['ct_modalidade_frete']) && $cotacao['ct_modalidade_frete'] ? ucfirst($cotacao['ct_modalidade_frete']) : '-' }}
Embalagem {{ $cotacao['ct_embalagem'] ?? '-' }}
Seguro {{ $cotacao['ct_seguro'] ?? '-' }}
Ajud. carga {{ $cotacao['ct_ajudante_carga'] ?? '-' }}
Ajud. descarga {{ $cotacao['ct_ajudante_descarga'] ?? '-' }}
Carga com maquinário {{ $cotacao['ct_carga_maquinario'] ?? '-' }}
Descrição e observações
Descrição da carga

{{ $cotacao['descricao'] }}

Observações

{{ $cotacao['ct_observacoes'] ?? '' }}

Preencha os dados para gerar a cobrança do frete

R$

Preencha as informações do motorista responsável pelo transporte

Ordem de Coleta

Agendamento de coleta da mercadoria

@if($ordemColeta && !empty($ordemColeta->preenchida_pelo_cliente))

Preenchida pelo cliente

@endif
@if($ordemColeta) @else @endif
Recibo

Comprovante de pagamento do frete

@if ($recibos) @else @endif
Declaração de Conteúdo

Documento legal para o transporte

@if($declaracaoConteudo && $declaracaoConteudo->preenchida_pelo_cliente)

Preenchida pelo cliente

@endif
@if($declaracaoConteudo && ($declaracaoConteudo->preenchida_pelo_cliente || !empty($declaracaoConteudo->nome_remetente))) @else @endif
{{-- Se rastreamento já existe, mostrar botão copiar link e atualizar; caso contrário, mostrar botão criar rastreamento --}} @if($rastreamento) @if(!empty($linkRastreamento)) @endif @else @endif
@php // Função helper para obter informações do status function getStatusInfo($status) { $statusMap = [ 'Coleta Agendada' => [ 'title' => 'Coleta Agendada', 'icon' => 'fas fa-calendar-check', 'iconBg' => 'bg-info', 'badge' => 'bg-info', 'timelineClass' => 'ativo' ], 'Coleta Realizada' => [ 'title' => 'Coleta Realizada', 'icon' => 'fas fa-box-open', 'iconBg' => 'bg-success', 'badge' => 'bg-success', 'timelineClass' => 'completo' ], 'Em Trânsito' => [ 'title' => 'Em Trânsito', 'icon' => 'fas fa-route', 'iconBg' => 'bg-warning', 'badge' => 'bg-warning', 'timelineClass' => 'pendente' ], 'Em Entrega' => [ 'title' => 'Em Entrega', 'icon' => 'fas fa-truck', 'iconBg' => 'bg-info', 'badge' => 'bg-info', 'timelineClass' => 'pendente' ], 'Entregue' => [ 'title' => 'Entrega Realizada', 'icon' => 'fas fa-handshake', 'iconBg' => 'bg-success', 'badge' => 'bg-success', 'timelineClass' => 'completo' ], 'Atrasado' => [ 'title' => 'Entrega Atrasada', 'icon' => 'fas fa-clock', 'iconBg' => 'bg-danger', 'badge' => 'bg-danger', 'timelineClass' => 'pendente' ], 'Problema na Entrega' => [ 'title' => 'Problema na Entrega', 'icon' => 'fas fa-exclamation-triangle', 'iconBg' => 'bg-warning', 'badge' => 'bg-warning', 'timelineClass' => 'pendente' ], ]; return $statusMap[$status] ?? [ 'title' => $status ?? 'Status Desconhecido', 'icon' => 'fas fa-question-circle', 'iconBg' => 'bg-secondary', 'badge' => 'bg-secondary', 'timelineClass' => 'pendente' ]; } @endphp {{-- Estado vazio: rastreamento ainda não criado --}} @if(!isset($rastreamentos) || $rastreamentos->count() === 0)
Nenhum rastreamento ainda

O histórico da entrega aparecerá aqui após você criar o rastreamento e adicionar atualizações.

@if(empty($rastreamento))

Use o botão Criar Rastreamento acima para começar.

@endif
@else {{-- Exibe todos os registros de histórico --}} @foreach($rastreamentos as $index => $item) @php $statusInfo = getStatusInfo($item->status_atual); $dataAtualizacao = ($item->created_at ?? $item->updated_at) ? \Carbon\Carbon::parse($item->created_at ?? $item->updated_at)->format('d/m/Y - H:i') : '--'; @endphp
{{ $statusInfo['title'] }}

{{ $item->observacao ?? '' }}

Atualizado em: {{ $dataAtualizacao }}
Atualizado por: {{ $item->nome_colaborador ?? 'N/A' }}
{{ $item->status_atual }}
@endforeach @endif

Rastreamento de Frete

Status Atual
Em Trânsito
Atualizado há 2 horas

Carga em trânsito para o destino

Localização Atual
São Paulo, SP
GPS: -23.5505, -46.6333
Mapa de Rastreamento
Distância Restante
245 km
Tempo Estimado
3h 30min
Atualizar Status
Compartilhar Rastreamento
Histórico de Atualizações
@php $dados_cotacao_agendar = $dados_cotacao ?? session('dados_cotacao', []); $cotacao_agendar = $cotacao ?? []; $tem_telefone_agendar = !empty($cotacao_agendar['telefone']) || !empty($dados_cotacao_agendar['telefone'] ?? null); $tem_email_agendar = !empty($cotacao_agendar['email']) || !empty($dados_cotacao_agendar['email'] ?? null); $display_whats = $tem_telefone_agendar ? 'd-inline-flex' : 'd-none'; $display_email = $tem_email_agendar ? 'd-inline-flex' : 'd-none'; $display_ambos = ($tem_telefone_agendar && $tem_email_agendar) ? 'd-inline-flex' : 'd-none'; @endphp @php $tem_telefone_declaracao = !empty($cotacao['telefone']) && $cotacao['telefone'] !== '-'; $tem_email_declaracao = !empty($cotacao['email']) && $cotacao['email'] !== '-'; $display_whats_declaracao = $tem_telefone_declaracao ? 'd-inline-flex' : 'd-none'; $display_email_declaracao = $tem_email_declaracao ? 'd-inline-flex' : 'd-none'; $display_ambos_declaracao = ($tem_telefone_declaracao && $tem_email_declaracao) ? 'd-inline-flex' : 'd-none'; @endphp