correção do filtro de veiculos na area de consolidação
This commit is contained in:
@@ -187,11 +187,14 @@
|
||||
· <span class="text-orange-400">➕ <%= m[:apontamentos] %> apontamento<%= 's' if m[:apontamentos] > 1 %></span>
|
||||
<% end %>
|
||||
</p>
|
||||
<% if m[:veiculos].any? %>
|
||||
<% if m[:veiculos_total] > 0 %>
|
||||
<p class="text-xs mt-0.5">
|
||||
<span class="<%= m[:veiculos_fechados] == m[:veiculos].size ? 'text-green-400' : 'text-gray-400' %>">
|
||||
🚗 <%= m[:veiculos_fechados] %>/<%= m[:veiculos].size %> veículo<%= 's' if m[:veiculos].size > 1 %> consolidado<%= 's' if m[:veiculos_fechados] != 1 %>
|
||||
<span class="<%= m[:veiculos_fechados] == m[:veiculos_total] ? 'text-green-400' : 'text-gray-400' %>">
|
||||
🚗 <%= m[:veiculos_fechados] %>/<%= m[:veiculos_total] %> veículo<%= 's' if m[:veiculos_total] > 1 %> consolidado<%= 's' if m[:veiculos_fechados] != 1 %>
|
||||
</span>
|
||||
<% if m[:veiculos_pendentes].any? %>
|
||||
<span class="text-orange-400">· pendente<%= 's' if m[:veiculos_pendentes].size > 1 %>: <%= m[:veiculos_pendentes].join(', ') %></span>
|
||||
<% end %>
|
||||
</p>
|
||||
<% end %>
|
||||
</div>
|
||||
@@ -255,23 +258,39 @@
|
||||
</div>
|
||||
<% end %>
|
||||
|
||||
<%# Finalizar — só habilita se tudo classificado %>
|
||||
<% tudo_completo = @motoristas.all? { |m| m[:completo] } && @motoristas.any? %>
|
||||
<div class="mt-8 bg-[#1a1a1a] border border-[#2a2a2a] rounded-xl p-5 flex items-center justify-between">
|
||||
<div>
|
||||
<p class="text-white font-bold">Total da consolidação</p>
|
||||
<p class="text-orange-500 font-black text-3xl"><%= moeda(@consolidacao.valor_total) %></p>
|
||||
<%# Finalizar — habilita quando tudo classificado. Se sobram veículos pendentes
|
||||
mas já há veículos consolidados, oferece "arquivar pendentes e finalizar". %>
|
||||
<% tudo_completo = @motoristas.all? { |m| m[:completo] } && @motoristas.any? %>
|
||||
<% tem_consolidados = @motoristas.any? { |m| m[:veiculos_fechados] > 0 || m[:veiculos_prontos] > 0 } %>
|
||||
<% tem_pendentes = @motoristas.any? { |m| m[:veiculos_pendentes].any? } %>
|
||||
<div class="mt-8 bg-[#1a1a1a] border border-[#2a2a2a] rounded-xl p-5">
|
||||
<div class="flex items-center justify-between gap-3 flex-wrap">
|
||||
<div>
|
||||
<p class="text-white font-bold">Total da consolidação</p>
|
||||
<p class="text-orange-500 font-black text-3xl"><%= moeda(@consolidacao.valor_total) %></p>
|
||||
</div>
|
||||
<% if @consolidacao.rascunho? %>
|
||||
<div class="flex flex-col sm:flex-row gap-2">
|
||||
<% if !tudo_completo && tem_consolidados && tem_pendentes %>
|
||||
<%= button_to '🔒 Arquivar pendentes e finalizar',
|
||||
finalizar_parcial_consolidacao_path(@consolidacao),
|
||||
method: :post,
|
||||
data: { turbo_confirm: 'Arquivar TODOS os veículos ainda não classificados 100% e finalizar? Eles ficam de fora desta consolidação (você resolve depois). Os veículos consolidados são pagos normalmente.' },
|
||||
class: 'bg-orange-500 hover:bg-orange-600 text-black font-bold px-5 py-3.5 rounded-lg min-h-[48px] flex items-center justify-center text-center' %>
|
||||
<% end %>
|
||||
<%= button_to 'Finalizar consolidação ✓', finalizar_consolidacao_path(@consolidacao),
|
||||
method: :post,
|
||||
disabled: !tudo_completo,
|
||||
data: { turbo_confirm: 'Finalizar? Após finalizada, a consolidação não poderá ser editada por operadores.' },
|
||||
class: "font-bold px-6 py-3.5 rounded-lg min-h-[48px] transition-colors
|
||||
#{tudo_completo ? 'bg-green-600 hover:bg-green-500 text-white cursor-pointer' : 'bg-[#2a2a2a] text-gray-600 cursor-not-allowed'}" %>
|
||||
</div>
|
||||
<% end %>
|
||||
</div>
|
||||
<% if @consolidacao.rascunho? %>
|
||||
<%= button_to 'Finalizar consolidação ✓', finalizar_consolidacao_path(@consolidacao),
|
||||
method: :post,
|
||||
disabled: !tudo_completo,
|
||||
data: { turbo_confirm: 'Finalizar? Após finalizada, a consolidação não poderá ser editada por operadores.' },
|
||||
class: "font-bold px-6 py-3.5 rounded-lg min-h-[48px] transition-colors
|
||||
#{tudo_completo ? 'bg-green-600 hover:bg-green-500 text-white cursor-pointer' : 'bg-[#2a2a2a] text-gray-600 cursor-not-allowed'}" %>
|
||||
<% end %>
|
||||
</div>
|
||||
<% unless tudo_completo %>
|
||||
<p class="text-gray-500 text-sm mt-2 text-center">⚠️ Classifique todas as entregas de todos os motoristas para poder finalizar.</p>
|
||||
<p class="text-gray-500 text-sm mt-2 text-center">
|
||||
⚠️ Classifique todas as entregas de todos os motoristas para finalizar tudo<% if tem_consolidados && tem_pendentes %> — ou use <strong>“Arquivar pendentes e finalizar”</strong> para fechar só os veículos já consolidados.<% end %>
|
||||
</p>
|
||||
<% end %>
|
||||
</div>
|
||||
|
||||
Reference in New Issue
Block a user