|
|
|
@ -10,9 +10,9 @@ module ExercisesHelper
|
|
|
|
|
exercise_obj_status.each do |q|
|
|
|
|
|
q_type = q.question_type
|
|
|
|
|
if q_type == Exercise::PRACTICAL
|
|
|
|
|
answers_content = q.exercise_shixun_answers.search_shixun_answers("user_id",user_id)
|
|
|
|
|
answers_content = q.exercise_shixun_answers.select{|answer| answer.user_id == user_id}
|
|
|
|
|
else
|
|
|
|
|
answers_content = q.exercise_answers.search_answer_users("user_id",user_id)
|
|
|
|
|
answers_content = q.exercise_answers.select{|answer| answer.user_id == user_id}
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
if q_type <= Exercise::JUDGMENT
|
|
|
|
@ -40,7 +40,7 @@ module ExercisesHelper
|
|
|
|
|
ques_score = 0.0
|
|
|
|
|
end
|
|
|
|
|
else
|
|
|
|
|
ques_score = answers_content.score_reviewed.select(:score).pluck(:score).sum
|
|
|
|
|
ques_score = answers_content.select{|answer| answer.score >= 0.0}.pluck(:score).sum
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
if ques_score >= q.question_score #满分作答为正确
|
|
|
|
@ -64,7 +64,7 @@ module ExercisesHelper
|
|
|
|
|
exercise_sub_status = exercise_questions.find_by_custom("question_type",Exercise::SUBJECTIVE) #主观题
|
|
|
|
|
@ex_sub_array = [] #主观题的已答/未答
|
|
|
|
|
exercise_sub_status.each do |s|
|
|
|
|
|
sub_answer = s.exercise_answers.search_answer_users("user_id",user_id) #主观题只有一个回答
|
|
|
|
|
sub_answer = s.exercise_answers.select{|answer| answer.user_id == user_id} #主观题只有一个回答
|
|
|
|
|
if sub_answer.present? && sub_answer.first.score >= 0.0
|
|
|
|
|
if s.question_score <= sub_answer.first.score
|
|
|
|
|
stand_status = 1
|
|
|
|
@ -772,12 +772,12 @@ module ExercisesHelper
|
|
|
|
|
question_comment = []
|
|
|
|
|
# user_score_pre = nil
|
|
|
|
|
if ques_type == 5
|
|
|
|
|
exercise_answers = q.exercise_shixun_answers.search_shixun_answers("user_id",ex_answerer_id)
|
|
|
|
|
exercise_answers = q.exercise_shixun_answers.select{|answer| answer.user_id == ex_answerer_id}
|
|
|
|
|
else
|
|
|
|
|
exercise_answers = q.exercise_answers.search_exercise_answer("user_id",ex_answerer_id) #试卷用户的回答
|
|
|
|
|
exercise_answers = q.exercise_answers.select{|answer| answer.user_id == ex_answerer_id} #试卷用户的回答
|
|
|
|
|
end
|
|
|
|
|
if student_status == 2 #当前为老师,或为学生且已提交
|
|
|
|
|
user_score_pre = exercise_answers.score_reviewed
|
|
|
|
|
user_score_pre = exercise_answers.select{|answer| answer.score >= 0.0}
|
|
|
|
|
if ques_type == 4 #主观题时,且没有大于0的分数时,为空
|
|
|
|
|
user_score = user_score_pre.present? ? user_score_pre.pluck(:score).sum : nil
|
|
|
|
|
elsif ques_type == 5 || ques_type == 3
|
|
|
|
@ -829,7 +829,7 @@ module ExercisesHelper
|
|
|
|
|
|
|
|
|
|
if ex_type == 4 #填空题/主观题/实训题有评论的
|
|
|
|
|
q_answer_id = exercise_answers.present? ? exercise_answers.first.id : nil
|
|
|
|
|
question_comment = q.exercise_answer_comments.search_answer_comments("exercise_answer_id",q_answer_id)
|
|
|
|
|
question_comment = q.exercise_answer_comments.select{|comment| comment.exercise_answer_id == q_answer_id}
|
|
|
|
|
end
|
|
|
|
|
{
|
|
|
|
|
"user_score": (user_score.present? ? user_score.round(1).to_s : nil),
|
|
|
|
|