From a1f037355374e2c45e77021bbdf1e08981aade05 Mon Sep 17 00:00:00 2001 From: rebuilt Date: Tue, 15 Apr 2025 13:44:03 -0700 Subject: [PATCH] fix: change measure summary so it reports correct grade range --- app/models/report/measure_summary.rb | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/app/models/report/measure_summary.rb b/app/models/report/measure_summary.rb index ae8099d7..b9b64242 100644 --- a/app/models/report/measure_summary.rb +++ b/app/models/report/measure_summary.rb @@ -21,15 +21,11 @@ module Report Thread.new do while measure = jobs.pop(true) academic_years.each do |academic_year| - all_grades = Set.new - respondents = Respondent.where(school: schools, academic_year:) - respondents.each do |respondent| - respondent.enrollment_by_grade.keys.each do |grade| - all_grades.add(grade) - end - end - all_grades = all_grades.to_a + + enrollment = respondents.map do | respondent| respondent.enrollment_by_grade.keys end.flatten.compact.uniq.sort + grades_with_responses = ::SurveyItemResponse.where(school: schools, academic_year:).where.not(grade: nil).pluck(:grade).uniq.sort + all_grades = (enrollment & grades_with_responses).sort grades = "#{all_grades.first}-#{all_grades.last}" begin_date = ::SurveyItemResponse.where(school: schools,