|
|
|
@ -614,38 +614,60 @@ class StudentWorkController < ApplicationController
|
|
|
|
|
render_403 and return unless @is_teacher || @homework.homework_detail_manual.comment_status == 2
|
|
|
|
|
@score = student_work_score @work,User.current
|
|
|
|
|
if @score
|
|
|
|
|
@score.comment = params[:new_form][:user_message] if params[:new_form] && params[:new_form][:user_message] && params[:new_form][:user_message] != ""
|
|
|
|
|
@score.score = params[:score] if params[:score]
|
|
|
|
|
@new_score = StudentWorksScore.new
|
|
|
|
|
if params[:score]
|
|
|
|
|
@new_score.score = params[:score].to_i == -1 ? @score.score : params[:score]
|
|
|
|
|
end
|
|
|
|
|
@new_score.comment = params[:new_form][:user_message] if params[:new_form] && params[:new_form][:user_message] && params[:new_form][:user_message] != ""
|
|
|
|
|
@new_score.user_id = User.current.id
|
|
|
|
|
@new_score.student_work_id = @work.id
|
|
|
|
|
if User.current.admin?
|
|
|
|
|
@score.reviewer_role = 1
|
|
|
|
|
@new_score.reviewer_role = 1
|
|
|
|
|
else
|
|
|
|
|
role = User.current.members.where("course_id = ?",@course.id).first.roles.first.name
|
|
|
|
|
@score.reviewer_role = get_role_by_name(role)
|
|
|
|
|
@new_score.reviewer_role = get_role_by_name(role)
|
|
|
|
|
end
|
|
|
|
|
if @is_teacher
|
|
|
|
|
@is_new = true
|
|
|
|
|
@is_last_a = false
|
|
|
|
|
else
|
|
|
|
|
@is_new = false
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
#@score.comment = params[:new_form][:user_message] if params[:new_form] && params[:new_form][:user_message] && params[:new_form][:user_message] != ""
|
|
|
|
|
#@score.score = params[:score] if params[:score]
|
|
|
|
|
#if User.current.admin?
|
|
|
|
|
# @score.reviewer_role = 1
|
|
|
|
|
#else
|
|
|
|
|
# role = User.current.members.where("course_id = ?",@course.id).first.roles.first.name
|
|
|
|
|
# @score.reviewer_role = get_role_by_name(role)
|
|
|
|
|
#end
|
|
|
|
|
#@is_new = false
|
|
|
|
|
else
|
|
|
|
|
@is_last_a = @work.student_works_scores.empty?
|
|
|
|
|
@score = StudentWorksScore.new
|
|
|
|
|
@score.score = params[:score] if params[:score]
|
|
|
|
|
@score.comment = params[:new_form][:user_message] if params[:new_form] && params[:new_form][:user_message] && params[:new_form][:user_message] != ""
|
|
|
|
|
@score.user_id = User.current.id
|
|
|
|
|
@score.student_work_id = @work.id
|
|
|
|
|
@new_score = StudentWorksScore.new
|
|
|
|
|
if params[:score]
|
|
|
|
|
@new_score.score = params[:score].to_i == -1 ? nil : params[:score]
|
|
|
|
|
end
|
|
|
|
|
@new_score.comment = params[:new_form][:user_message] if params[:new_form] && params[:new_form][:user_message] && params[:new_form][:user_message] != ""
|
|
|
|
|
@new_score.user_id = User.current.id
|
|
|
|
|
@new_score.student_work_id = @work.id
|
|
|
|
|
if User.current.admin?
|
|
|
|
|
@score.reviewer_role = 1
|
|
|
|
|
@new_score.reviewer_role = 1
|
|
|
|
|
else
|
|
|
|
|
role = User.current.members.where("course_id = ?",@course.id).first.roles.first.name
|
|
|
|
|
@score.reviewer_role = get_role_by_name(role)
|
|
|
|
|
@new_score.reviewer_role = get_role_by_name(role)
|
|
|
|
|
end
|
|
|
|
|
@is_new = true
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
@score.save_attachments(params[:attachments])
|
|
|
|
|
render_attachment_warning_if_needed(@score)
|
|
|
|
|
@new_score.save_attachments(params[:attachments])
|
|
|
|
|
render_attachment_warning_if_needed(@new_score)
|
|
|
|
|
|
|
|
|
|
if @score.save
|
|
|
|
|
case @score.reviewer_role
|
|
|
|
|
if @new_score.save
|
|
|
|
|
case @new_score.reviewer_role
|
|
|
|
|
when 1 #教师评分:最后一个教师评分为最终评分
|
|
|
|
|
@work.teacher_score = @score.score
|
|
|
|
|
@work.teacher_score = @new_score.score
|
|
|
|
|
when 2 #教辅评分 教辅评分显示平均分
|
|
|
|
|
@work.teaching_asistant_score = @work.student_works_scores.where(:reviewer_role => 2).average(:score).try(:round, 2).to_f
|
|
|
|
|
when 3 #学生评分 学生评分显示平均分
|
|
|
|
|