mirror of
https://github.com/edcommonwealth/sqm-dashboards.git
synced 2026-03-07 21:48:16 -08:00
average those groupings and the way up the framework. Likert scores for a survey_item are averaged. Then all the survey_items in a scale are averaged. Then student scales in a measure are averaged. And teacher scales in a measure are averaged. Then the average of those two calculations becomes the score for a measure. Then the measures in a subcategory are averaged.
13 lines
312 B
Ruby
13 lines
312 B
Ruby
class Subcategory < ActiveRecord::Base
|
|
belongs_to :category
|
|
|
|
has_many :measures
|
|
|
|
def score(school:, academic_year:)
|
|
scores = measures.includes([:survey_items]).map do |measure|
|
|
measure.score(school:, academic_year:).average
|
|
end
|
|
scores = scores.reject(&:nil?)
|
|
scores.average
|
|
end
|
|
end
|