Sha256: 5329a25dcd7ef87b88a160c6dba30014d1970d89c93cdd6e7c3d339f9f76f50a
Contents?: true
Size: 913 Bytes
Versions: 1
Compression:
Stored size: 913 Bytes
Contents
module Workarea class DeactivateStaleDiscounts include Sidekiq::Worker def perform(*args) Mongoid::AuditLog.record do Pricing::Discount.any_in(id: unused_discount_ids).auto_deactivate end end def unused_discount_ids all_active_discount_ids - used_discount_ids end def used_discount_ids @used_discount_ids ||= (order_discount_ids + shipping_discount_ids).map(&:to_s).uniq end def order_discount_ids Order.since(Workarea.config.discount_staleness_ttl.ago).discount_ids end def shipping_discount_ids Shipping .since(Workarea.config.discount_staleness_ttl.ago) .discount_ids end def all_active_discount_ids Pricing::Discount .where(:created_at.lt => Workarea.config.discount_staleness_ttl.ago) .select(&:active?) .map(&:id) .map(&:to_s) end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
workarea-core-3.5.0.beta.1 | app/workers/workarea/deactivate_stale_discounts.rb |