Class: Decidim::Budgets::Metrics::BudgetParticipantsMetricMeasure

Inherits:
MetricMeasure
  • Object
show all
Defined in:
app/queries/decidim/budgets/metrics/budget_participants_metric_measure.rb

Overview

Searches for Participants in the following actions

- Vote a participatory budgeting project (Budgets)

Instance Method Summary collapse

Instance Method Details

#calculateObject



13
14
15
16
17
18
19
20
21
22
# File 'app/queries/decidim/budgets/metrics/budget_participants_metric_measure.rb', line 13

def calculate
  budgets = Decidim::Budgets::Order.where(component: @resource).joins(:component)
                                   .finished
                                   .where("decidim_budgets_orders.checked_out_at <= ?", end_time)

  {
    cumulative_users: budgets.pluck(:decidim_user_id),
    quantity_users: budgets.where("decidim_budgets_orders.checked_out_at >= ?", start_time).pluck(:decidim_user_id)
  }
end

#valid?Boolean

Returns:

  • (Boolean)


9
10
11
# File 'app/queries/decidim/budgets/metrics/budget_participants_metric_measure.rb', line 9

def valid?
  super && @resource.is_a?(Decidim::Component)
end