From 459282726186a0846e39b0064a25da858bdfd1df Mon Sep 17 00:00:00 2001 From: Matt-Yorkley <9029026+Matt-Yorkley@users.noreply.github.com> Date: Wed, 16 Feb 2022 13:03:27 +0000 Subject: [PATCH] Sync OC subscriptions if transitioning from closed to open --- app/models/order_cycle.rb | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/app/models/order_cycle.rb b/app/models/order_cycle.rb index 2370d7c01b..79f04589f5 100644 --- a/app/models/order_cycle.rb +++ b/app/models/order_cycle.rb @@ -29,6 +29,7 @@ class OrderCycle < ApplicationRecord attr_accessor :incoming_exchanges, :outgoing_exchanges before_update :reset_processed_at, if: :will_save_change_to_orders_close_at? + after_save :sync_subscriptions, if: :opening? validates :name, :coordinator_id, presence: true validate :orders_close_at_after_orders_open_at? @@ -274,6 +275,14 @@ class OrderCycle < ApplicationRecord private + def opening? + open? && orders_close_at_changed? && was_closed? + end + + def was_closed? + orders_close_at_was && Time.zone.now > orders_close_at_was + end + def sync_subscriptions return unless open? && schedule_ids.any?