mirror of
https://github.com/edcommonwealth/sqm-dashboards.git
synced 2026-03-07 21:48:16 -08:00
WIP: refactor so multiple graphs can be defined for a given slug WIP: fixed scale view but broke 'All Parent' graph WIP: working state. All views working properly WIP: Refactor graph_map into two collections; measure_level_graphs and scale_level_graphs WIP: refacter GroupedBarColumnPresenter to accept a 'construct' instead of specifying measure or scale WIP: fix scale graphs being shown on incorrect view WIP: Merge parents_by_language class with parents_by_language_by_scale so it can handle display of both measure-level and scale-level graphs
47 lines
1.3 KiB
Ruby
47 lines
1.3 KiB
Ruby
# frozen_string_literal: true
|
|
|
|
module Analyze
|
|
module Graph
|
|
module Column
|
|
class AllStudent
|
|
def label
|
|
["All", "Students"]
|
|
end
|
|
|
|
def basis
|
|
"student surveys"
|
|
end
|
|
|
|
def insufficiency_message
|
|
["survey response", "rate below 25%"]
|
|
end
|
|
|
|
def show_irrelevancy_message?(construct:)
|
|
!construct.includes_student_survey_items?
|
|
end
|
|
|
|
def show_insufficient_data_message?(construct:, school:, academic_years:)
|
|
scores = academic_years.map do |academic_year|
|
|
construct.student_score(school:, academic_year:)
|
|
end
|
|
|
|
scores.none? { |score| score.meets_student_threshold? }
|
|
end
|
|
|
|
def score(construct:, school:, academic_year:)
|
|
construct.student_score(school:, academic_year:)
|
|
end
|
|
|
|
def type
|
|
:student
|
|
end
|
|
|
|
def n_size(construct:, school:, academic_year:)
|
|
grades = Respondent.by_school_and_year(school:, academic_year:)&.enrollment_by_grade&.keys
|
|
SurveyItemResponse.where(survey_item: construct.student_survey_items, school:, grade: grades,
|
|
academic_year:).select(:response_id).distinct.count
|
|
end
|
|
end
|
|
end
|
|
end
|
|
end
|