Class: ForestAdminDatasourceMongoid::Utils::Pipeline::GroupGenerator
- Inherits:
-
Object
- Object
- ForestAdminDatasourceMongoid::Utils::Pipeline::GroupGenerator
- Defined in:
- lib/forest_admin_datasource_mongoid/utils/pipeline/group_generator.rb
Constant Summary collapse
- AGGREGATION_OPERATION =
{ 'Sum' => '$sum', 'Avg' => '$avg', 'Count' => '$sum', 'Max' => '$max', 'Min' => '$min' }.freeze
- GROUP_OPERATION =
{ 'Year' => '%Y-01-01', 'Month' => '%Y-%m-01', 'Day' => '%Y-%m-%d', 'Week' => '%Y-%m-%d' }.freeze
Class Method Summary collapse
Class Method Details
.group(aggregation) ⇒ Object
20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 |
# File 'lib/forest_admin_datasource_mongoid/utils/pipeline/group_generator.rb', line 20 def self.group(aggregation) [ { '$group' => { _id: compute_groups(aggregation.groups), value: compute_value(aggregation) } }, { '$project' => { '_id' => 0, 'value' => '$value', 'group' => compute_groups_projection(aggregation.groups) } } ] end |