From 24c031b3cd09301d6332b08bcd8f0b0ace93f26d Mon Sep 17 00:00:00 2001 From: Pau Perez Date: Thu, 10 Jan 2019 17:48:09 +0100 Subject: [PATCH] Extract #distributed_product_properties method --- .../api/cached_enterprise_serializer.rb | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/app/serializers/api/cached_enterprise_serializer.rb b/app/serializers/api/cached_enterprise_serializer.rb index 8da705a1b0..caf9164a86 100644 --- a/app/serializers/api/cached_enterprise_serializer.rb +++ b/app/serializers/api/cached_enterprise_serializer.rb @@ -83,19 +83,21 @@ module Api # This results in 3 queries per enterprise def distributed_properties + (distributed_product_properties + distributed_producer_properties).uniq do |property_object| + property_object.property.presentation + end + end + + def distributed_product_properties if active - product_properties = Spree::Property.currently_sold_by(enterprise) + Spree::Property.currently_sold_by(enterprise) else - product_properties = Spree::Property + Spree::Property .joins(products: { variants: { exchanges: :order_cycle } }) .merge(Exchange.outgoing) .merge(Exchange.to_enterprise(enterprise)) .select('DISTINCT spree_properties.*') end - - (product_properties + distributed_producer_properties).uniq do |property_object| - property_object.property.presentation - end end def distributed_producer_properties