From cdff1ef7b68107bc75950de9af5af23905df0eac Mon Sep 17 00:00:00 2001 From: Rob Harrington Date: Wed, 30 Nov 2016 17:28:07 +1100 Subject: [PATCH] TEMP: Adding scopes for standing_order_orders --- app/models/standing_order.rb | 8 ++++++++ app/models/standing_order_order.rb | 3 +++ 2 files changed, 11 insertions(+) diff --git a/app/models/standing_order.rb b/app/models/standing_order.rb index c32f5627d9..cd2dcc9869 100644 --- a/app/models/standing_order.rb +++ b/app/models/standing_order.rb @@ -22,6 +22,14 @@ class StandingOrder < ActiveRecord::Base validate :standing_line_items_available validate :check_associations + def closed_standing_order_orders + standing_order_orders.closed + end + + def not_closed_standing_order_orders + standing_order_orders.not_closed + end + def ends_at_after_begins_at if begins_at.present? && ends_at.present? && ends_at <= begins_at errors.add(:ends_at, "must be after begins at") diff --git a/app/models/standing_order_order.rb b/app/models/standing_order_order.rb index c2c93c3721..86441fb1d7 100644 --- a/app/models/standing_order_order.rb +++ b/app/models/standing_order_order.rb @@ -2,6 +2,9 @@ class StandingOrderOrder < ActiveRecord::Base belongs_to :order, class_name: 'Spree::Order', dependent: :destroy belongs_to :standing_order + scope :closed, -> { joins(order: :order_cycle).merge(OrderCycle.closed) } + scope :not_closed, -> { joins(order: :order_cycle).merge(OrderCycle.not_closed) } + def cancel transaction do if order.order_cycle.orders_close_at > Time.zone.now