Class: Spree::UserPoolReport

Inherits:
Report
  • Object
show all
Defined in:
app/reports/spree/user_pool_report.rb

Defined Under Namespace

Classes: DistributionColumnChart, Result

Constant Summary collapse

HEADERS =
{ guest_users: :integer, active_users: :integer, new_sign_ups: :integer }
SEARCH_ATTRIBUTES =
{ start_date: :users_created_from, end_date: :users_created_till }
SORTABLE_ATTRIBUTES =
[]

Constants inherited from Report

Report::TIME_SCALES

Instance Attribute Summary

Attributes inherited from Report

#current_page, #paginate, #records_per_page, #reporting_period, #search, #sortable_attribute, #sortable_type, #total_records

Instance Method Summary collapse

Methods inherited from Report

#active_record_sort, deeplink, #deeplink_properties, #generate, #get_results, #header_sorted?, #initialize, #name, #paginated?, #pagination_required?, #set_sortable_attributes, #time_scale_columns, #time_scale_columns_to_s, #time_scale_selects, #total_pages

Constructor Details

This class inherits a constructor from Spree::Report

Instance Method Details

#report_queryObject



15
16
17
18
19
20
21
22
23
24
25
26
# File 'app/reports/spree/user_pool_report.rb', line 15

def report_query
  Report::QueryFragments
    .from_union(grouped_sign_ups, grouped_visitors)
    .group(*time_scale_columns)
    .order(*time_scale_columns_to_s)
    .project(
      *time_scale_columns,
      'SUM(active_users)  as active_users',
      'SUM(guest_users)   as guest_users',
      'SUM(new_sign_ups)  as new_sign_ups'
    )
end