Class: GoogleOfflineConversionRetryWorker
- Inherits:
-
Object
- Object
- GoogleOfflineConversionRetryWorker
- Includes:
- Sidekiq::Worker
- Defined in:
- app/workers/google_offline_conversion_retry_worker.rb
Instance Method Summary collapse
-
#perform ⇒ Object
Retry reporting for failed conversions in the last 7 days.
Instance Method Details
#perform ⇒ Object
Retry reporting for failed conversions in the last 7 days
7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
# File 'app/workers/google_offline_conversion_retry_worker.rb', line 7 def perform cutoff = 7.days.ago Order.where(state: 'invoiced') .where("(google_conversion_meta->>'attempted_at') IS NOT NULL") .where(<<~SQL.squish) (google_conversion_meta->>'result') IS NULL OR ( (google_conversion_meta->>'result') <> 'reported' AND (google_conversion_meta #>> '{result,status}') IS DISTINCT FROM 'reported' ) SQL .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 |