You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
sqm-dashboards/app/models/measure.rb

31 lines
814 B

class Measure < ActiveRecord::Base
belongs_to :subcategory
has_many :survey_items
has_many :admin_data_items
has_many :survey_item_responses, through: :survey_items
scope :source_includes_survey_items, ->() { joins(:survey_items).uniq }
def self.none_meet_threshold?(school:, academic_year:)
none? { |measure| SurveyItemResponse.sufficient_data?(measure: measure, school: school, academic_year: academic_year) }
end
def teacher_survey_items
@teacher_survey_items ||= survey_items.where("survey_item_id LIKE 't-%'")
end
def student_survey_items
@student_survey_items ||= survey_items.where("survey_item_id LIKE 's-%'")
end
def includes_teacher_survey_items?
teacher_survey_items.any?
end
def includes_student_survey_items?
student_survey_items.any?
end
end