Enterprise.active_distributors finds active distributors by order cycles

This commit is contained in:
Rohan Mitchell
2013-03-08 16:39:42 +11:00
parent 977344e279
commit 00d7fcbfb6
2 changed files with 14 additions and 2 deletions

View File

@@ -27,8 +27,13 @@ class Enterprise < ActiveRecord::Base
select('DISTINCT enterprises.*')
scope :with_distributed_products_outer, joins('LEFT OUTER JOIN product_distributions ON product_distributions.distributor_id = enterprises.id')
scope :with_order_cycles_outer,
joins('LEFT OUTER JOIN exchanges ON (exchanges.receiver_id = enterprises.id)').
joins('LEFT OUTER JOIN order_cycles ON (order_cycles.id = exchanges.order_cycle_id)')
scope :active_distributors, with_distributed_products_outer.where('product_distributions.product_id IS NOT NULL')
scope :active_distributors, with_distributed_products_outer.with_order_cycles_outer.
where('product_distributions.product_id IS NOT NULL OR order_cycles.id IS NOT NULL').
select('DISTINCT enterprises.*')
def has_supplied_products_on_hand?