Class: Workarea::Admin::ReportsController
Instance Method Summary
collapse
#current_user, #find_sort, #wrap_in_view_model, wrap_in_view_model
Methods included from Publishing
#allow_publishing!, #allow_publishing?, #set_publishing_options
Methods included from Visiting
#most_visited
Instance Method Details
#average_order_value ⇒ Object
6
7
8
9
10
11
|
# File 'app/controllers/workarea/admin/reports_controller.rb', line 6
def average_order_value
@report = Reports::AverageOrderValueViewModel.wrap(
Workarea::Reports::AverageOrderValue.new(params),
view_model_options
)
end
|
#customers ⇒ Object
24
25
26
27
28
29
|
# File 'app/controllers/workarea/admin/reports_controller.rb', line 24
def customers
@report = Reports::CustomersViewModel.wrap(
Workarea::Reports::Customers.new(params),
view_model_options
)
end
|
#download ⇒ Object
127
128
129
130
|
# File 'app/controllers/workarea/admin/reports_controller.rb', line 127
def download
export = Workarea::Reports::Export.find(params[:id])
send_file export.file.file, filename: export.file_name
end
|
#export ⇒ Object
115
116
117
118
119
120
121
122
123
124
125
|
# File 'app/controllers/workarea/admin/reports_controller.rb', line 115
def export
export = Workarea::Reports::Export.new(params[:export])
if export.save
flash[:success] = t('workarea.admin.reports.flash_messages.success')
redirect_back fallback_location: root_path
else
flash[:error] = export.errors.full_messages.to_sentence
export.report_type.present? ? send(export.report_type) : redirect_to(root_path)
end
end
|
#first_time_vs_returning_sales ⇒ Object
13
14
15
16
17
18
|
# File 'app/controllers/workarea/admin/reports_controller.rb', line 13
def first_time_vs_returning_sales
@report = Reports::FirstTimeVsReturningSalesViewModel.wrap(
Workarea::Reports::FirstTimeVsReturningSales.new(params),
view_model_options
)
end
|
#insights ⇒ Object
20
21
22
|
# File 'app/controllers/workarea/admin/reports_controller.rb', line 20
def insights
@insights = Reports::InsightsViewModel.wrap(nil, view_model_options)
end
|
#low_inventory ⇒ Object
108
109
110
111
112
113
|
# File 'app/controllers/workarea/admin/reports_controller.rb', line 108
def low_inventory
@report = Reports::LowInventoryViewModel.wrap(
Workarea::Reports::LowInventory.new(params),
view_model_options
)
end
|
#reference ⇒ Object
31
32
33
34
35
36
|
# File 'app/controllers/workarea/admin/reports_controller.rb', line 31
def reference
@terms =
t('workarea.admin.reports.reference.terms')
.sort_by(&:first)
.map { |_key, term| OpenStruct.new(term) }
end
|
#sales_by_category ⇒ Object
38
39
40
41
42
43
|
# File 'app/controllers/workarea/admin/reports_controller.rb', line 38
def sales_by_category
@report = Reports::SalesByCategoryViewModel.wrap(
Workarea::Reports::SalesByCategory.new(params),
view_model_options
)
end
|
#sales_by_country ⇒ Object
45
46
47
48
49
50
|
# File 'app/controllers/workarea/admin/reports_controller.rb', line 45
def sales_by_country
@report = Reports::SalesByCountryViewModel.wrap(
Workarea::Reports::SalesByCountry.new(params),
view_model_options
)
end
|
#sales_by_discount ⇒ Object
52
53
54
55
56
57
|
# File 'app/controllers/workarea/admin/reports_controller.rb', line 52
def sales_by_discount
@report = Reports::SalesByDiscountViewModel.wrap(
Workarea::Reports::SalesByDiscount.new(params),
view_model_options
)
end
|
#sales_by_product ⇒ Object
59
60
61
62
63
64
|
# File 'app/controllers/workarea/admin/reports_controller.rb', line 59
def sales_by_product
@report = Reports::SalesByProductViewModel.wrap(
Workarea::Reports::SalesByProduct.new(params),
view_model_options
)
end
|
#sales_by_sku ⇒ Object
73
74
75
76
77
78
|
# File 'app/controllers/workarea/admin/reports_controller.rb', line 73
def sales_by_sku
@report = Reports::SalesBySkuViewModel.wrap(
Workarea::Reports::SalesBySku.new(params),
view_model_options
)
end
|
#sales_by_tender ⇒ Object
80
81
82
83
84
85
|
# File 'app/controllers/workarea/admin/reports_controller.rb', line 80
def sales_by_tender
@report = Reports::SalesByTenderViewModel.wrap(
Workarea::Reports::SalesByTender.new(params),
view_model_options
)
end
|
#sales_by_traffic_referrer ⇒ Object
66
67
68
69
70
71
|
# File 'app/controllers/workarea/admin/reports_controller.rb', line 66
def sales_by_traffic_referrer
@report = Reports::SalesByTrafficReferrerViewModel.wrap(
Workarea::Reports::SalesByTrafficReferrer.new(params),
view_model_options
)
end
|
#sales_over_time ⇒ Object
87
88
89
90
91
92
|
# File 'app/controllers/workarea/admin/reports_controller.rb', line 87
def sales_over_time
@report = Reports::SalesOverTimeViewModel.wrap(
Workarea::Reports::SalesOverTime.new(params),
view_model_options
)
end
|
#searches ⇒ Object
94
95
96
97
98
99
|
# File 'app/controllers/workarea/admin/reports_controller.rb', line 94
def searches
@report = Reports::SearchesViewModel.wrap(
Workarea::Reports::Searches.new(params),
view_model_options
)
end
|
#timeline ⇒ Object
101
102
103
104
105
106
|
# File 'app/controllers/workarea/admin/reports_controller.rb', line 101
def timeline
@report = Reports::TimelineViewModel.wrap(
Workarea::Reports::SalesOverTime.new(params.merge(group_by: 'day')),
view_model_options
)
end
|