mirror of
https://github.com/openfoodfoundation/openfoodnetwork
synced 2026-01-24 20:36:49 +00:00
Compile Order Cycle Management only on search
This commit is contained in:
@@ -84,7 +84,7 @@ Spree::Admin::ReportsController.class_eval do
|
||||
@report_type = params[:report_type]
|
||||
|
||||
# -- Build Report with Order Grouper
|
||||
@report = OpenFoodNetwork::OrderCycleManagementReport.new spree_current_user, params
|
||||
@report = OpenFoodNetwork::OrderCycleManagementReport.new spree_current_user, params, render_content?
|
||||
@table = @report.table_items
|
||||
|
||||
render_report(@report.header, @table, params[:csv], "order_cycle_management_#{timestamp}.csv")
|
||||
|
||||
@@ -3,9 +3,10 @@ require 'open_food_network/user_balance_calculator'
|
||||
module OpenFoodNetwork
|
||||
class OrderCycleManagementReport
|
||||
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
|
||||
@@ -50,6 +51,8 @@ module OpenFoodNetwork
|
||||
end
|
||||
|
||||
def table_items
|
||||
return [] unless @render_table
|
||||
|
||||
if is_payment_methods?
|
||||
orders.map { |o| payment_method_row o }
|
||||
else
|
||||
|
||||
@@ -10,7 +10,7 @@ module OpenFoodNetwork
|
||||
user.spree_roles << Spree::Role.find_or_create_by_name!("admin")
|
||||
user
|
||||
end
|
||||
subject { OrderCycleManagementReport.new user }
|
||||
subject { OrderCycleManagementReport.new user, {}, true }
|
||||
|
||||
describe "fetching orders" do
|
||||
it "fetches completed orders" do
|
||||
@@ -30,7 +30,7 @@ module OpenFoodNetwork
|
||||
context "as an enterprise user" do
|
||||
let!(:user) { create_enterprise_user }
|
||||
|
||||
subject { OrderCycleManagementReport.new user }
|
||||
subject { OrderCycleManagementReport.new user, {}, true }
|
||||
|
||||
describe "fetching orders" do
|
||||
let(:supplier) { create(:supplier_enterprise) }
|
||||
|
||||
Reference in New Issue
Block a user