parent
0c5fbea203
commit
67d51aff5e
@ -0,0 +1,27 @@
|
|||||||
|
class StudentResponseRate < ResponseRate
|
||||||
|
def rate
|
||||||
|
super
|
||||||
|
end
|
||||||
|
|
||||||
|
private
|
||||||
|
|
||||||
|
def survey_item_count
|
||||||
|
@student_survey_item_count ||= @subcategory.measures.map do |measure|
|
||||||
|
measure.student_survey_items.count
|
||||||
|
end.sum
|
||||||
|
end
|
||||||
|
|
||||||
|
def response_count
|
||||||
|
@student_response_count ||= SurveyItemResponse.student_responses_for_measures(@subcategory.measures, @school,
|
||||||
|
@academic_year).count
|
||||||
|
end
|
||||||
|
|
||||||
|
def total_possible_responses
|
||||||
|
@total_possible_student_responses ||= begin
|
||||||
|
total_responses = Respondent.where(school: @school, academic_year: @academic_year).first
|
||||||
|
return 0 unless total_responses.present?
|
||||||
|
|
||||||
|
total_responses.total_students
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
@ -0,0 +1,31 @@
|
|||||||
|
class TeacherResponseRate < ResponseRate
|
||||||
|
def rate
|
||||||
|
cap_at_100(super)
|
||||||
|
end
|
||||||
|
|
||||||
|
private
|
||||||
|
|
||||||
|
def cap_at_100(response_rate)
|
||||||
|
response_rate > 100 ? 100 : response_rate
|
||||||
|
end
|
||||||
|
|
||||||
|
def survey_item_count
|
||||||
|
@teacher_survey_item_count ||= @subcategory.measures.map do |measure|
|
||||||
|
measure.teacher_survey_items.count
|
||||||
|
end.sum
|
||||||
|
end
|
||||||
|
|
||||||
|
def response_count
|
||||||
|
@teacher_response_count ||= SurveyItemResponse.teacher_responses_for_measures(@subcategory.measures, @school,
|
||||||
|
@academic_year).count
|
||||||
|
end
|
||||||
|
|
||||||
|
def total_possible_responses
|
||||||
|
@total_possible_teacher_responses ||= begin
|
||||||
|
total_responses = Respondent.where(school: @school, academic_year: @academic_year).first
|
||||||
|
return 0 unless total_responses.present?
|
||||||
|
|
||||||
|
total_responses.total_teachers
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
Loading…
Reference in new issue