Class: GoogleOfflineConversionRetryWorker

Inherits:
Object
  • Object
show all
Includes:
Sidekiq::Job
Defined in:
app/workers/google_offline_conversion_retry_worker.rb

Overview

Sidekiq worker: google offline conversion retry.

Instance Method Summary collapse

Instance Method Details

#performvoid

This method returns an undefined value.

Retries reporting for attempted-but-unacknowledged Google conversions
from the last 7 days.

google_conversion_acknowledged (result / result.status == 'reported')
is subtracted via where.not(id: …) rather than negated inline, so orders
whose result is absent/NULL — correctly "not reported" — stay in the set.



17
18
19
20
21
22
23
24
25
26
27
28
# File 'app/workers/google_offline_conversion_retry_worker.rb', line 17

def perform
  cutoff = 7.days.ago
  Order.where(state: 'invoiced')
       .google_conversion_attempted
       .where.not(id: Order.google_conversion_acknowledged)
       .where(Order[:updated_at].gteq(cutoff))
       .find_in_batches(batch_size: 200) do |batch|
    batch.each do |order|
      Invoicing::GoogleConversionReporter.new.send_new_order_conversion(order)
    end
  end
end