mirror of
https://github.com/edcommonwealth/sqm-dashboards.git
synced 2026-03-08 15:08:15 -07:00
28 lines
873 B
Ruby
28 lines
873 B
Ruby
class OverviewController < SqmApplicationController
|
|
before_action :check_empty_dataset, only: [:index]
|
|
helper VarianceHelper
|
|
|
|
def index
|
|
@variance_chart_row_presenters = measures.map(&method(:presenter_for_measure))
|
|
@category_presenters = Category.sorted.map { |category| CategoryPresenter.new(category:) }
|
|
end
|
|
|
|
private
|
|
|
|
def presenter_for_measure(measure)
|
|
score = measure.score(school: @school, academic_year: @academic_year)
|
|
|
|
VarianceChartRowPresenter.new(measure:, score:)
|
|
end
|
|
|
|
def check_empty_dataset
|
|
@has_empty_dataset = measures.all? do |measure|
|
|
measure.none_meet_threshold? school: @school, academic_year: @academic_year
|
|
end
|
|
end
|
|
|
|
def measures
|
|
@measures ||= Measure.all.includes(%i[scales admin_data_items subcategory
|
|
category]).includes(subcategory: :measures)
|
|
end
|
|
end
|