Regra de pagamento: - Entrega.pagas agora exige status='completed' E checkout preenchido (antes era checkin). Afeta dashboard, painel do motorista, job 1h e elegibilidade das consolidações de forma consistente. Veículo no lugar de rota na consolidação: - migration troca consolidacoes.route_ids por vehicle_ids (jsonb + gin) - Entrega: da_veiculo/veiculos_unicos; contar_pagas usa vehicle - new.html.erb: filtro "Veículos" (multi-select por vehicle) - validar.html.erb: mostra o veículo em vez do código da rota - filtros/elegibilidade do controller passam a usar vehicle_ids Docs/diagnóstico atualizados. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
25 lines
729 B
Ruby
25 lines
729 B
Ruby
# app/jobs/atualizar_historico_estimado_job.rb
|
|
#
|
|
# Roda a cada 1 hora (via Whenever → rake historico:atualizar).
|
|
# Lógica: conta entregas do dia com status='completed' E checkout IS NOT NULL,
|
|
# multiplica pelo preco_entrega configurado e persiste em historico_estimados.
|
|
#
|
|
class AtualizarHistoricoEstimadoJob < ApplicationJob
|
|
queue_as :default
|
|
|
|
def perform
|
|
preco = Configuracao.preco_entrega
|
|
|
|
entregas = Entrega.da_conta_gade
|
|
.pagas
|
|
.where(planned_date: Date.current)
|
|
.count
|
|
|
|
HistoricoEstimado.create!(
|
|
data_hora: Time.current,
|
|
valor_total_estimado: entregas * preco,
|
|
entregas_contadas: entregas
|
|
)
|
|
end
|
|
end
|