Modificação na area do motorista

This commit is contained in:
2026-08-26 15:34:56 -03:00
parent 7a8ec1bc16
commit 6c78570658
10 changed files with 261 additions and 54 deletions

View File

@@ -3,14 +3,16 @@
ali mesmo (sem sair da tela), as consolidações que compõem o valor dele. %>
<%# Link desta mesma tela preservando filtros — usado pelas linhas e pelos PDFs. %>
<% ctx = { nome: params[:nome], motorista: params[:motorista], status: params[:status],
<% ctx = { nome: params[:nome], motorista: params[:motorista], status: @status_totais,
inicio: @inicio.strftime('%Y-%m-%d'), fim: @fim.strftime('%Y-%m-%d'),
visao: 'motoristas' }.compact_blank %>
<%# ── Resumo do período ────────────────────────────────── %>
<div class="grid grid-cols-2 xl:grid-cols-4 gap-3 mb-5">
<div class="bg-[#1a1a1a] border border-[#2a2a2a] rounded-xl p-4">
<p class="text-gray-400 text-xs uppercase tracking-wide"><%= icone :dinheiro %> Total do período</p>
<p class="text-gray-400 text-xs uppercase tracking-wide">
<%= icone :dinheiro %> <%= @status_totais == 'finalizada' ? 'Consolidado no período' : 'Total do período' %>
</p>
<p class="text-orange-500 font-black text-2xl sm:text-3xl mt-1 whitespace-nowrap"><%= moeda(@totais.total_geral) %></p>
<p class="text-gray-500 text-xs mt-1"><%= @totais.total_consolidacoes %> consolidação(ões) · <%= @totais.linhas.size %> motorista(s)</p>
</div>
@@ -120,9 +122,18 @@
</div>
<p class="text-gray-500 text-xs mt-4">
<%= icone :dica %> Entram as consolidações
<%= params[:status].presence ? "com status #{params[:status]}" : 'de qualquer status' %>
cujo período está dentro de <%= l @inicio, format: :short %> → <%= l @fim, format: :short %>.
Motoristas arquivados na consolidação não entram no total.
<%= icone :dica %>
<% if @status_totais == 'finalizada' %>
<span class="text-gray-400">Consolidado</span> = só consolidações <strong>finalizadas</strong> —
é o mesmo número do card "Consolidado / Pago" do Dashboard no mesmo período.
Troque para <span class="text-gray-400">Geral</span> para somar também os rascunhos em andamento.
<% elsif @status_totais == 'rascunho' %>
Mostrando <span class="text-gray-400">só rascunhos</span> — valores ainda em aberto, que mudam até o fechamento.
<% else %>
<span class="text-gray-400">Geral</span> = finalizadas <strong>+ rascunhos</strong>, por isso fica acima do
"Consolidado / Pago" do Dashboard. Troque para <span class="text-gray-400">Consolidado</span> para comparar com ele.
<% end %>
Entram as consolidações que cruzam <%= l @inicio, format: :short %> → <%= l @fim, format: :short %> e as pagas dentro do período;
motoristas arquivados não entram no total.
</p>
<% end %>

View File

@@ -111,9 +111,20 @@
class: 'flex-1 basis-48 min-w-0 bg-[#0a0a0a] border border-[#2a2a2a] text-white rounded-lg px-3 py-2.5 focus:border-orange-500 focus:outline-none' %>
<% end %>
<%= f.select :status,
options_for_select([['Todos os status', ''], ['Rascunho', 'rascunho'], ['Finalizada', 'finalizada']], params[:status]),
{}, class: 'flex-1 basis-40 min-w-0 bg-[#0a0a0a] border border-[#2a2a2a] text-white rounded-lg px-3 py-2.5' %>
<% if @visao == 'motoristas' %>
<%# "Consolidado" x "Geral" — a pergunta que o número responde muda com isso:
Consolidado é o valor JÁ FECHADO (o mesmo do card "Consolidado / Pago" do
Dashboard); Geral soma também os rascunhos, que ainda mudam de valor. %>
<%= f.select :status,
options_for_select([['Consolidado (fechadas)', 'finalizada'],
['Geral (com rascunhos)', 'todos'],
['Só rascunhos', 'rascunho']], @status_totais),
{}, class: 'flex-1 basis-52 min-w-0 bg-[#0a0a0a] border border-[#2a2a2a] text-white rounded-lg px-3 py-2.5' %>
<% else %>
<%= f.select :status,
options_for_select([['Todos os status', ''], ['Rascunho', 'rascunho'], ['Finalizada', 'finalizada']], params[:status]),
{}, class: 'flex-1 basis-40 min-w-0 bg-[#0a0a0a] border border-[#2a2a2a] text-white rounded-lg px-3 py-2.5' %>
<% end %>
<%# "Pagamento" é status DA CONSOLIDAÇÃO (todos os motoristas dela); no modo
Por motorista cada linha já mostra pago/a receber, então o filtro sairia