Rename ResponseRate to ResponseRateCalculator. Create a new response

rate model.  Create a loader to refresh response rates for all
subcategories.

Use precalculated response rates in views

Wrap more elements in page caching

Calculate a response rate for a subcategory if one does not already
exist
This commit is contained in:
rebuilt 2022-06-15 09:35:13 -07:00
parent dfc5202b88
commit c03615cb43
16 changed files with 352 additions and 177 deletions

View file

@ -42,6 +42,17 @@ namespace :data do
SurveyResponsesDataLoader.load_data filepath:
end
puts "=====================> Completed loading #{SurveyItemResponse.count} survey responses"
puts 'Refreshing response rates'
ResponseRateLoader.refresh
puts "=====================> Completed loading #{ResponseRate.count} survey responses"
end
desc 'refresh response rate values'
task refresh_response_rates: :environment do
puts 'Refreshing response rates'
ResponseRateLoader.refresh
puts "=====================> Completed loading #{ResponseRate.count} survey responses"
end
desc 'load admin_data'

View file

@ -51,6 +51,9 @@ namespace :one_off do
puts "=====================> Loading data from csv at path: #{filepath}"
SurveyResponsesDataLoader.load_data filepath: filepath
puts "=====================> Completed loading #{SurveyItemResponse.count} survey responses"
puts 'Refreshing response rates'
ResponseRateLoader.refresh
puts "=====================> Completed loading #{ResponseRate.count} survey responses"
end
desc 'load winchester results for 2021-22'
@ -61,6 +64,9 @@ namespace :one_off do
puts "=====================> Loading data from csv at path: #{filepath}"
SurveyResponsesDataLoader.load_data filepath:
end
puts 'Refreshing response rates'
ResponseRateLoader.refresh
puts "=====================> Completed loading #{ResponseRate.count} survey responses"
end
desc 'list scales that have no survey responses'