change SearchOrders service to search with shipping_method

This commit is contained in:
Eduardo
2020-05-05 20:38:34 -03:00
parent 473b4c63c4
commit 6d54e6d4a0

View File

@@ -24,13 +24,25 @@ class SearchOrders
attr_reader :params, :current_user
def fetch_orders
@search = ::Permissions::Order.new(current_user).editable_orders.ransack(params[:q])
@search = search_query.ransack(params[:q])
return paginated_results if using_pagination?
@search.result(distinct: true)
end
def search_query
base_query = ::Permissions::Order.new(current_user).editable_orders
return base_query unless params[:shipping_method_id]
base_query
.joins(shipments: :shipping_rates)
.where(spree_shipping_rates: {
selected: true,
shipping_method_id: params[:shipping_method_id]
})
end
def paginated_results
@search.result(distinct: true)
.page(params[:page])