From 8867f1ef7a5c8a92086fdac460dbc1e553b00ea6 Mon Sep 17 00:00:00 2001 From: Andy Brett Date: Mon, 29 Mar 2021 15:37:30 -0700 Subject: [PATCH] refactor responsibilities and order of operations --- app/jobs/subscription_placement_job.rb | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/app/jobs/subscription_placement_job.rb b/app/jobs/subscription_placement_job.rb index 3131c21051..793c0b7f7a 100644 --- a/app/jobs/subscription_placement_job.rb +++ b/app/jobs/subscription_placement_job.rb @@ -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