module PeriodicCalculations::Base::ClassMethods

Public Instance Methods

periodic_average(*args) click to toggle source
# File lib/periodic_calculations/base.rb, line 26
def periodic_average(*args)
  periodic_calculation(:avg, *args)
end
periodic_calculation(operation, column_name, window_start, window_end, options = {}) click to toggle source
# File lib/periodic_calculations/base.rb, line 30
def periodic_calculation(operation, column_name, window_start, window_end, options = {})
  query_options = QueryOptions.new(operation, column_name, window_start, window_end, options)
  current_scope = Rails::VERSION::MAJOR >= 4 ? all : scoped
  query = Query.new(current_scope, query_options)
  LazyQuery.new(query)
end
periodic_count(*args) click to toggle source
# File lib/periodic_calculations/base.rb, line 10
def periodic_count(*args)
  periodic_calculation(:count, *args)
end
periodic_count_all(*args) click to toggle source
# File lib/periodic_calculations/base.rb, line 6
def periodic_count_all(*args)
  periodic_calculation(:count, "*", *args)
end
periodic_maximum(*args) click to toggle source
# File lib/periodic_calculations/base.rb, line 14
def periodic_maximum(*args)
  periodic_calculation(:max, *args)
end
periodic_minimum(*args) click to toggle source
# File lib/periodic_calculations/base.rb, line 18
def periodic_minimum(*args)
  periodic_calculation(:min, *args)
end
periodic_sum(*args) click to toggle source
# File lib/periodic_calculations/base.rb, line 22
def periodic_sum(*args)
  periodic_calculation(:sum, *args)
end