|
|
|
@ -8,38 +8,12 @@ class ExerciseBanksController < ApplicationController
|
|
|
|
|
def show
|
|
|
|
|
@exercise_questions = @bank.exercise_bank_questions&.includes(:exercise_bank_choices, :exercise_bank_shixun_challenges,
|
|
|
|
|
:exercise_bank_standard_answers).order("question_number ASC")
|
|
|
|
|
@exercise_ques_count = @exercise_questions.size # 全部的题目数
|
|
|
|
|
@exercise_ques_scores = @exercise_questions.pluck(:question_score).sum
|
|
|
|
|
|
|
|
|
|
#单选题的数量及分数
|
|
|
|
|
exercise_single_ques = @exercise_questions.find_by_custom("question_type", Exercise::SINGLE)
|
|
|
|
|
@exercise_single_ques_count = exercise_single_ques.size
|
|
|
|
|
@exercise_single_ques_scores = exercise_single_ques.pluck(:question_score).sum
|
|
|
|
|
|
|
|
|
|
#多选题的数量及分数
|
|
|
|
|
exercise_double_ques = @exercise_questions.find_by_custom("question_type", Exercise::MULTIPLE)
|
|
|
|
|
@exercise_double_ques_count = exercise_double_ques.size
|
|
|
|
|
@exercise_double_ques_scores = exercise_double_ques.pluck(:question_score).sum
|
|
|
|
|
|
|
|
|
|
# 判断题数量及分数
|
|
|
|
|
exercise_ques_judge = @exercise_questions.find_by_custom("question_type", Exercise::JUDGMENT)
|
|
|
|
|
@exercise_ques_judge_count = exercise_ques_judge.size
|
|
|
|
|
@exercise_ques_judge_scores = exercise_ques_judge.pluck(:question_score).sum
|
|
|
|
|
|
|
|
|
|
#填空题数量及分数
|
|
|
|
|
exercise_ques_null = @exercise_questions.find_by_custom("question_type", Exercise::COMPLETION)
|
|
|
|
|
@exercise_ques_null_count = exercise_ques_null.size
|
|
|
|
|
@exercise_ques_null_scores = exercise_ques_null.pluck(:question_score).sum
|
|
|
|
|
|
|
|
|
|
#简答题数量及分数
|
|
|
|
|
exercise_ques_main = @exercise_questions.find_by_custom("question_type", Exercise::SUBJECTIVE)
|
|
|
|
|
@exercise_ques_main_count = exercise_ques_main.size
|
|
|
|
|
@exercise_ques_main_scores = exercise_ques_main.pluck(:question_score).sum
|
|
|
|
|
|
|
|
|
|
#实训题数量及分数
|
|
|
|
|
exercise_ques_shixun = @exercise_questions.find_by_custom("question_type", Exercise::PRACTICAL)
|
|
|
|
|
@exercise_ques_shixun_count = exercise_ques_shixun.size
|
|
|
|
|
@exercise_ques_shixun_scores = exercise_ques_shixun.pluck(:question_score).sum
|
|
|
|
|
if @bank.container_type == "Exercise"
|
|
|
|
|
get_exercise_question_count
|
|
|
|
|
else
|
|
|
|
|
get_poll_question_count
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
def update
|
|
|
|
@ -103,4 +77,46 @@ class ExerciseBanksController < ApplicationController
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
def get_exercise_question_count
|
|
|
|
|
@exercise_ques_count = @exercise_questions.size # 全部的题目数
|
|
|
|
|
@exercise_ques_scores = @exercise_questions.pluck(:question_score).sum
|
|
|
|
|
|
|
|
|
|
#单选题的数量及分数
|
|
|
|
|
exercise_single_ques = @exercise_questions.find_by_custom("question_type", Exercise::SINGLE)
|
|
|
|
|
@exercise_single_ques_count = exercise_single_ques.size
|
|
|
|
|
@exercise_single_ques_scores = exercise_single_ques.pluck(:question_score).sum
|
|
|
|
|
|
|
|
|
|
#多选题的数量及分数
|
|
|
|
|
exercise_double_ques = @exercise_questions.find_by_custom("question_type", Exercise::MULTIPLE)
|
|
|
|
|
@exercise_double_ques_count = exercise_double_ques.size
|
|
|
|
|
@exercise_double_ques_scores = exercise_double_ques.pluck(:question_score).sum
|
|
|
|
|
|
|
|
|
|
# 判断题数量及分数
|
|
|
|
|
exercise_ques_judge = @exercise_questions.find_by_custom("question_type", Exercise::JUDGMENT)
|
|
|
|
|
@exercise_ques_judge_count = exercise_ques_judge.size
|
|
|
|
|
@exercise_ques_judge_scores = exercise_ques_judge.pluck(:question_score).sum
|
|
|
|
|
|
|
|
|
|
#填空题数量及分数
|
|
|
|
|
exercise_ques_null = @exercise_questions.find_by_custom("question_type", Exercise::COMPLETION)
|
|
|
|
|
@exercise_ques_null_count = exercise_ques_null.size
|
|
|
|
|
@exercise_ques_null_scores = exercise_ques_null.pluck(:question_score).sum
|
|
|
|
|
|
|
|
|
|
#简答题数量及分数
|
|
|
|
|
exercise_ques_main = @exercise_questions.find_by_custom("question_type", Exercise::SUBJECTIVE)
|
|
|
|
|
@exercise_ques_main_count = exercise_ques_main.size
|
|
|
|
|
@exercise_ques_main_scores = exercise_ques_main.pluck(:question_score).sum
|
|
|
|
|
|
|
|
|
|
#实训题数量及分数
|
|
|
|
|
exercise_ques_shixun = @exercise_questions.find_by_custom("question_type", Exercise::PRACTICAL)
|
|
|
|
|
@exercise_ques_shixun_count = exercise_ques_shixun.size
|
|
|
|
|
@exercise_ques_shixun_scores = exercise_ques_shixun.pluck(:question_score).sum
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
def get_poll_question_count
|
|
|
|
|
@poll_questions_count = @exercise_questions&.size # 全部的题目数
|
|
|
|
|
@poll_question_singles = @exercise_questions.find_by_custom("question_type", 1).size # 单选题
|
|
|
|
|
@poll_question_doubles = @exercise_questions.find_by_custom("question_type", 2).size # 多选题
|
|
|
|
|
@poll_question_mains = @exercise_questions.find_by_custom("question_type", 3).size #主观题
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
end
|
|
|
|
|