refactor responsibilities and order of operations

This commit is contained in:
Andy Brett
2021-03-29 15:37:30 -07:00
parent 3664b86e03
commit 8867f1ef7a

View File

@@ -3,7 +3,6 @@ require 'order_management/subscriptions/summarizer'
class SubscriptionPlacementJob < ActiveJob::Base
def perform
ids = proxy_orders.pluck(:id)
proxy_orders.update_all(placed_at: Time.zone.now)
ProxyOrder.where(id: ids).each do |proxy_order|
place_order_for(proxy_order)
end
@@ -30,13 +29,15 @@ class SubscriptionPlacementJob < ActiveJob::Base
def place_order_for(proxy_order)
JobLogger.logger.info("Placing Order for Proxy Order #{proxy_order.id}")
initialise_order(proxy_order)
return record_subscription_issue(proxy_order.subscription) if proxy_order.order.nil?
return unless proxy_order.order.present?
proxy_order.update_column(:placed_at, Time.now)
place_order(proxy_order.order)
end
def initialise_order(proxy_order)
proxy_order.initialise_order!
record_subscription_issue(proxy_order.subscription) if proxy_order.order.nil?
rescue StandardError => e
Bugsnag.notify(e, subscription: proxy_order.subscription, proxy_order: proxy_order)
end