refactor teacher response rate calculator

pull/1/head
rebuilt 4 years ago
parent d0dcac701e
commit fa35a4230c

@ -4,7 +4,7 @@ class TeacherResponseRateCalculator
def survey_item_count def survey_item_count
@survey_item_count ||= @subcategory.measures.map do |measure| @survey_item_count ||= @subcategory.measures.map do |measure|
measure.teacher_survey_items.reject do |survey_item| measure.teacher_survey_items.reject do |survey_item|
survey_item.survey_item_responses.where(school: @school, academic_year: @academic_year).none? survey_item.survey_item_responses.where(school:, academic_year:).none?
end.count end.count
end.sum end.sum
end end
@ -12,15 +12,15 @@ class TeacherResponseRateCalculator
def response_count def response_count
@response_count ||= @subcategory.measures.map do |measure| @response_count ||= @subcategory.measures.map do |measure|
measure.teacher_survey_items.map do |survey_item| measure.teacher_survey_items.map do |survey_item|
survey_item.survey_item_responses.where(school: @school, survey_item.survey_item_responses.where(school:,
academic_year: @academic_year).exclude_boston.count academic_year:).exclude_boston.count
end.sum end.sum
end.sum end.sum
end end
def total_possible_responses def total_possible_responses
@total_possible_responses ||= begin @total_possible_responses ||= begin
total_responses = Respondent.where(school: @school, academic_year: @academic_year).first total_responses = Respondent.where(school:, academic_year:).first
return 0 unless total_responses.present? return 0 unless total_responses.present?
total_responses.total_teachers total_responses.total_teachers

Loading…
Cancel
Save