Class: Workarea::Admin::Dashboards::ReportsViewModel

Inherits:
ApplicationViewModel
  • Object
show all
Defined in:
app/view_models/workarea/admin/dashboards/reports_view_model.rb

Instance Method Summary collapse

Instance Method Details

#average_order_valueObject



26
27
28
29
30
31
# File 'app/view_models/workarea/admin/dashboards/reports_view_model.rb', line 26

def average_order_value
  @average_order_value ||= Reports::AverageOrderValueViewModel.wrap(
    Workarea::Reports::AverageOrderValue.new(options),
    options
  )
end

#country_graph_dataObject



5
6
7
8
9
# File 'app/view_models/workarea/admin/dashboards/reports_view_model.rb', line 5

def country_graph_data
  sales_by_country.results.take(5).reduce({}) do |memo, result|
    memo.merge(result['_id'] => result['revenue'])
  end
end

#customersObject



75
76
77
78
79
80
# File 'app/view_models/workarea/admin/dashboards/reports_view_model.rb', line 75

def customers
  @customers ||= Reports::CustomersViewModel.wrap(
    Workarea::Reports::Customers.new(options),
    options
  )
end

#first_time_vs_returning_salesObject



82
83
84
85
86
87
# File 'app/view_models/workarea/admin/dashboards/reports_view_model.rb', line 82

def first_time_vs_returning_sales
  @first_time_vs_returning_sales ||= Reports::FirstTimeVsReturningSalesViewModel.wrap(
    Workarea::Reports::FirstTimeVsReturningSales.new(options),
    options
  )
end

#insightsObject



11
12
13
# File 'app/view_models/workarea/admin/dashboards/reports_view_model.rb', line 11

def insights
  @insights ||= Reports::InsightsViewModel.wrap(nil, options).feed
end

#low_inventoryObject



96
97
98
99
100
101
# File 'app/view_models/workarea/admin/dashboards/reports_view_model.rb', line 96

def low_inventory
  @low_inventory ||= Reports::LowInventoryViewModel.wrap(
    Workarea::Reports::LowInventory.new(options),
    options
  )
end

#marketingObject



15
16
17
# File 'app/view_models/workarea/admin/dashboards/reports_view_model.rb', line 15

def marketing
  @marketing ||= Dashboards::MarketingViewModel.wrap(nil, options)
end

#one_time_customersObject



68
69
70
71
72
73
# File 'app/view_models/workarea/admin/dashboards/reports_view_model.rb', line 68

def one_time_customers
  @one_time_customers ||= Reports::OneTimeCustomersViewModel.wrap(
    Workarea::Reports::OneTimeCustomers.new(options),
    options
  )
end

#sales_by_categoryObject



40
41
42
43
44
45
# File 'app/view_models/workarea/admin/dashboards/reports_view_model.rb', line 40

def sales_by_category
  @sales_by_category ||= Reports::SalesByCategoryViewModel.wrap(
    Workarea::Reports::SalesByCategory.new(options),
    options
  )
end

#sales_by_countryObject



61
62
63
64
65
66
# File 'app/view_models/workarea/admin/dashboards/reports_view_model.rb', line 61

def sales_by_country
  @sales_by_country ||= Reports::SalesByCountryViewModel.wrap(
    Workarea::Reports::SalesByCountry.new(options),
    options
  )
end

#sales_by_discountObject



54
55
56
57
58
59
# File 'app/view_models/workarea/admin/dashboards/reports_view_model.rb', line 54

def sales_by_discount
  @sales_by_discount ||= Reports::SalesByDiscountViewModel.wrap(
    Workarea::Reports::SalesByDiscount.new(options),
    options
  )
end

#sales_by_productObject



33
34
35
36
37
38
# File 'app/view_models/workarea/admin/dashboards/reports_view_model.rb', line 33

def sales_by_product
  @sales_by_product ||= Reports::SalesByProductViewModel.wrap(
    Workarea::Reports::SalesByProduct.new(options),
    options
  )
end

#sales_by_skuObject



47
48
49
50
51
52
# File 'app/view_models/workarea/admin/dashboards/reports_view_model.rb', line 47

def sales_by_sku
  @sales_by_sku ||= Reports::SalesBySkuViewModel.wrap(
    Workarea::Reports::SalesBySku.new(options),
    options
  )
end

#sales_over_timeObject



19
20
21
22
23
24
# File 'app/view_models/workarea/admin/dashboards/reports_view_model.rb', line 19

def sales_over_time
  @sales_over_time = Reports::SalesOverTimeViewModel.wrap(
    Workarea::Reports::SalesOverTime.new(options),
    options
  )
end

#searchesObject



89
90
91
92
93
94
# File 'app/view_models/workarea/admin/dashboards/reports_view_model.rb', line 89

def searches
  @searches ||= Reports::SearchesViewModel.wrap(
    Workarea::Reports::Searches.new(options),
    options
  )
end