diff --git a/app/controllers/spree/admin/reports_controller_decorator.rb b/app/controllers/spree/admin/reports_controller_decorator.rb index 7ef916bcc4..2016eaba72 100644 --- a/app/controllers/spree/admin/reports_controller_decorator.rb +++ b/app/controllers/spree/admin/reports_controller_decorator.rb @@ -107,7 +107,7 @@ Spree::Admin::ReportsController.class_eval do @report_type = params[:report_type] # -- Build Report with Order Grouper - @report = OpenFoodNetwork::PackingReport.new spree_current_user, params + @report = OpenFoodNetwork::PackingReport.new spree_current_user, params, render_content? order_grouper = OpenFoodNetwork::OrderGrouper.new @report.rules, @report.columns @table = order_grouper.table(@report.table_items) diff --git a/lib/open_food_network/packing_report.rb b/lib/open_food_network/packing_report.rb index d24048fcf6..4b3a9cbc64 100644 --- a/lib/open_food_network/packing_report.rb +++ b/lib/open_food_network/packing_report.rb @@ -1,9 +1,10 @@ module OpenFoodNetwork class PackingReport attr_reader :params - def initialize(user, params = {}) + def initialize(user, params = {}, render_table = false) @params = params @user = user + @render_table = render_table end def header @@ -39,6 +40,8 @@ module OpenFoodNetwork end def table_items + return [] unless @render_table + orders = search.result line_items = permissions.visible_line_items.merge(Spree::LineItem.where(order_id: orders)) diff --git a/spec/lib/open_food_network/packing_report_spec.rb b/spec/lib/open_food_network/packing_report_spec.rb index 6b02a26fed..b9074a92bf 100644 --- a/spec/lib/open_food_network/packing_report_spec.rb +++ b/spec/lib/open_food_network/packing_report_spec.rb @@ -14,7 +14,7 @@ module OpenFoodNetwork context "as a site admin" do let(:user) { create(:admin_user) } - subject { PackingReport.new user } + subject { PackingReport.new user, {}, true } it "fetches completed orders" do o2 = create(:order) @@ -31,7 +31,7 @@ module OpenFoodNetwork context "as a manager of a supplier" do let!(:user) { create(:user) } - subject { PackingReport.new user } + subject { PackingReport.new user, {}, true } let(:s1) { create(:supplier_enterprise) } @@ -70,7 +70,7 @@ module OpenFoodNetwork context "as a manager of a distributor" do let!(:user) { create(:user) } - subject { PackingReport.new user } + subject { PackingReport.new user, {}, true } before do d1.enterprise_roles.create!(user: user)