# 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
