25 lines
728 B
Ruby
25 lines
728 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 checkin 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
|