diff --git a/app/helpers/exercises_helper.rb b/app/helpers/exercises_helper.rb index bacb95309..33d61d203 100644 --- a/app/helpers/exercises_helper.rb +++ b/app/helpers/exercises_helper.rb @@ -164,7 +164,7 @@ module ExercisesHelper question_answer_infos.push(answer_option) end elsif ex.question_type == Exercise::COMPLETION #填空题 - effictive_users_count = effictive_users.pluck(:user_id).uniq.size + effictive_users_count = effictive_users.where("answer_text is not null").pluck(:user_id).uniq.size ex_ordered = ex.is_ordered null_standard_answer = ex.exercise_standard_answers null_stand_choice = null_standard_answer.pluck(:exercise_choice_id) #一个exercise_choice_id可能对应多个answer_text @@ -214,7 +214,7 @@ module ExercisesHelper # percent = commit_user_ids > 0 ? (all_user_count / commit_user_ids.to_f).round(3)*100 : 0.0 user_right_count = effictive_users.where("score > 0.0").pluck(:user_id).uniq - user_wrong_counts = effictive_users.where("score < 0.0").pluck(:user_id).uniq + user_wrong_counts = effictive_users.where("score < 0.0 and answer_text is not null").pluck(:user_id).uniq user_wrong_count = (user_wrong_counts - user_right_count).size if effictive_users_count > 0 && user_wrong_count >= 0