diff --git a/app/models/measure.rb b/app/models/measure.rb index 00e2fb46..dad2fd37 100644 --- a/app/models/measure.rb +++ b/app/models/measure.rb @@ -25,13 +25,13 @@ class Measure < ActiveRecord::Base end def student_survey_items_with_sufficient_responses(school:, academic_year:) - SurveyItem.where(id: SurveyItem.joins('inner join survey_item_responses on survey_item_responses.survey_item_id = survey_items.id') + SurveyItem.where(id: SurveyItem.joins("inner join survey_item_responses on survey_item_responses.survey_item_id = survey_items.id") .student_survey_items .where("survey_item_responses.school": school, - "survey_item_responses.academic_year": academic_year, - "survey_item_responses.survey_item_id": survey_items.student_survey_items) - .group('survey_items.id') - .having('count(*) >= 10') + "survey_item_responses.academic_year": academic_year, + "survey_item_responses.survey_item_id": survey_items.student_survey_items) + .group("survey_items.id") + .having("count(*) >= 10") .count.keys) end @@ -60,7 +60,7 @@ class Measure < ActiveRecord::Base next Score::NIL_SCORE if incalculable_score(school:, academic_year:) scores = collect_averages_for_teacher_student_and_admin_data(school:, academic_year:) - average = scores.flatten.compact.remove_blanks.average + average = scores.flatten.compact.remove_blanks.average.round(2) next Score::NIL_SCORE if average.nan? @@ -72,7 +72,7 @@ class Measure < ActiveRecord::Base def student_score(school:, academic_year:) @student_score ||= Hash.new do |memo, (school, academic_year)| meets_student_threshold = sufficient_student_data?(school:, academic_year:) - average = student_average(school:, academic_year:) if meets_student_threshold + average = student_average(school:, academic_year:).round(2) if meets_student_threshold memo[[school, academic_year]] = scorify(average:, school:, academic_year:) end @@ -82,7 +82,7 @@ class Measure < ActiveRecord::Base def teacher_score(school:, academic_year:) @teacher_score ||= Hash.new do |memo, (school, academic_year)| meets_teacher_threshold = sufficient_teacher_data?(school:, academic_year:) - average = teacher_average(school:, academic_year:) if meets_teacher_threshold + average = teacher_average(school:, academic_year:).round(2) if meets_teacher_threshold memo[[school, academic_year]] = scorify(average:, school:, academic_year:) end @@ -92,7 +92,7 @@ class Measure < ActiveRecord::Base def admin_score(school:, academic_year:) @admin_score ||= Hash.new do |memo, (school, academic_year)| meets_admin_threshold = sufficient_admin_data?(school:, academic_year:) - average = admin_data_averages(school:, academic_year:).average if meets_admin_threshold + average = admin_data_averages(school:, academic_year:).average.round(2) if meets_admin_threshold memo[[school, academic_year]] = scorify(average:, school:, academic_year:) end @@ -222,7 +222,7 @@ class Measure < ActiveRecord::Base def incalculable_score(school:, academic_year:) @incalculable_score ||= Hash.new do |memo, (school, academic_year)| lacks_sufficient_survey_data = !sufficient_student_data?(school:, academic_year:) && - !sufficient_teacher_data?(school:, academic_year:) + !sufficient_teacher_data?(school:, academic_year:) memo[[school, academic_year]] = lacks_sufficient_survey_data && !includes_admin_data_items? end diff --git a/app/presenters/analyze/graph/column/gender_column/score_for_gender.rb b/app/presenters/analyze/graph/column/gender_column/score_for_gender.rb index 212c9ccc..07dfb87c 100644 --- a/app/presenters/analyze/graph/column/gender_column/score_for_gender.rb +++ b/app/presenters/analyze/graph/column/gender_column/score_for_gender.rb @@ -7,7 +7,7 @@ module Analyze academic_year = academic_years[year_index] averages = SurveyItemResponse.averages_for_gender(measure.student_survey_items, school, academic_year, gender) - average = bubble_up_averages(averages:) + average = bubble_up_averages(averages:).round(2) scorify(average:, meets_student_threshold: sufficient_student_responses?(academic_year:)) end diff --git a/app/presenters/analyze/graph/column/grade/score_for_grade.rb b/app/presenters/analyze/graph/column/grade/score_for_grade.rb index f6434dc8..75e28b85 100644 --- a/app/presenters/analyze/graph/column/grade/score_for_grade.rb +++ b/app/presenters/analyze/graph/column/grade/score_for_grade.rb @@ -4,8 +4,9 @@ module Analyze module Grade module ScoreForGrade def score(year_index) - averages = SurveyItemResponse.averages_for_grade(measure.student_survey_items, school, academic_years[year_index], grade) - average = bubble_up_averages(averages:) + averages = SurveyItemResponse.averages_for_grade(measure.student_survey_items, school, + academic_years[year_index], grade) + average = bubble_up_averages(averages:).round(2) Score.new(average:, meets_teacher_threshold: false, diff --git a/app/presenters/analyze/graph/column/score_for_race.rb b/app/presenters/analyze/graph/column/score_for_race.rb index 5fd661d3..207e198f 100644 --- a/app/presenters/analyze/graph/column/score_for_race.rb +++ b/app/presenters/analyze/graph/column/score_for_race.rb @@ -4,7 +4,7 @@ module Analyze module ScoreForRace def score(year_index) s = ::RaceScore.find_by(measure:, school:, academic_year: academic_years[year_index], race:) - average = s.average unless s.nil? + average = s.average.round(2) unless s.nil? average ||= 0 meets_student_threshold = s.meets_student_threshold? unless s.nil? meets_student_threshold ||= false diff --git a/app/presenters/gauge_presenter.rb b/app/presenters/gauge_presenter.rb index 00438954..10d76d35 100644 --- a/app/presenters/gauge_presenter.rb +++ b/app/presenters/gauge_presenter.rb @@ -3,7 +3,7 @@ class GaugePresenter def initialize(zones:, score:) @zones = zones - @score = score + @score = score&.round(2) end def title diff --git a/app/views/analyze/_grouped_bar_column.html.erb b/app/views/analyze/_grouped_bar_column.html.erb index 14fe98cc..cbf722fe 100644 --- a/app/views/analyze/_grouped_bar_column.html.erb +++ b/app/views/analyze/_grouped_bar_column.html.erb @@ -4,7 +4,7 @@ <% if ENV["SCORES"].present? && ENV["SCORES"].upcase == "SHOW" %> - + <%= bar.average %> <% end %> diff --git a/app/views/categories/_gauge_graph.html.erb b/app/views/categories/_gauge_graph.html.erb index b593dc65..fec3775a 100644 --- a/app/views/categories/_gauge_graph.html.erb +++ b/app/views/categories/_gauge_graph.html.erb @@ -1,6 +1,6 @@
<% if ENV["SCORES"].present? && ENV["SCORES"].upcase == "SHOW" %> -

Score is : <%=gauge.score %>

+

Score is : <%= gauge.score %>

<% end %>