Fases 4, 5 e 6 — Job 1h + Auditoria + Consolidação + Wizard de validação
This commit is contained in:
5
app/jobs/application_job.rb
Normal file
5
app/jobs/application_job.rb
Normal file
@@ -0,0 +1,5 @@
|
||||
# app/jobs/application_job.rb
|
||||
class ApplicationJob < ActiveJob::Base
|
||||
retry_on ActiveRecord::Deadlocked
|
||||
discard_on ActiveJob::DeserializationError
|
||||
end
|
||||
24
app/jobs/atualizar_historico_estimado_job.rb
Normal file
24
app/jobs/atualizar_historico_estimado_job.rb
Normal file
@@ -0,0 +1,24 @@
|
||||
# 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
|
||||
Reference in New Issue
Block a user