Class: ReportsKit::Reports::CompositeSeries

Inherits:
AbstractSeries show all
Defined in:
lib/reports_kit/reports/composite_series.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods inherited from AbstractSeries

#value_format_method

Constructor Details

#initialize(properties, context_record:) ⇒ CompositeSeries

Returns a new instance of CompositeSeries.



6
7
8
9
# File 'lib/reports_kit/reports/composite_series.rb', line 6

def initialize(properties, context_record:)
  self.properties = properties.dup
  self.context_record = context_record
end

Instance Attribute Details

#context_recordObject

Returns the value of attribute context_record.



4
5
6
# File 'lib/reports_kit/reports/composite_series.rb', line 4

def context_record
  @context_record
end

#propertiesObject

Returns the value of attribute properties.



4
5
6
# File 'lib/reports_kit/reports/composite_series.rb', line 4

def properties
  @properties
end

Instance Method Details

#composite_operatorObject



19
20
21
# File 'lib/reports_kit/reports/composite_series.rb', line 19

def composite_operator
  properties[:composite_operator]
end

#dimensionsObject



39
40
41
# File 'lib/reports_kit/reports/composite_series.rb', line 39

def dimensions
  primary_series.dimensions
end

#filtersObject



31
32
33
# File 'lib/reports_kit/reports/composite_series.rb', line 31

def filters
  serieses.map(&:filters).flatten
end

#labelObject



11
12
13
# File 'lib/reports_kit/reports/composite_series.rb', line 11

def label
  name
end

#limitObject



23
24
25
# File 'lib/reports_kit/reports/composite_series.rb', line 23

def limit
  properties[:limit]
end

#model_classObject



43
44
45
# File 'lib/reports_kit/reports/composite_series.rb', line 43

def model_class
  primary_series.model_class
end

#nameObject



15
16
17
# File 'lib/reports_kit/reports/composite_series.rb', line 15

def name
  properties[:name]
end

#primary_seriesObject



35
36
37
# File 'lib/reports_kit/reports/composite_series.rb', line 35

def primary_series
  serieses.first
end

#seriesesObject



27
28
29
# File 'lib/reports_kit/reports/composite_series.rb', line 27

def serieses
  @serieses ||= Reports::Series.new_from_properties!(properties, context_record: context_record)
end