|
|
@ -577,8 +577,8 @@ class HomeworkCommonsController < ApplicationController
|
|
|
|
tip_exception("缺少answer_open_evaluation参数") if params[:answer_open_evaluation].nil?
|
|
|
|
tip_exception("缺少answer_open_evaluation参数") if params[:answer_open_evaluation].nil?
|
|
|
|
tip_exception("缺少work_efficiency参数") if params[:work_efficiency].nil?
|
|
|
|
tip_exception("缺少work_efficiency参数") if params[:work_efficiency].nil?
|
|
|
|
tip_exception("缺少eff_score参数") if params[:work_efficiency] && params[:eff_score].blank?
|
|
|
|
tip_exception("缺少eff_score参数") if params[:work_efficiency] && params[:eff_score].blank?
|
|
|
|
tip_exception("效率分不能小于等于0") if params[:eff_score] && params[:eff_score].to_i <= 0
|
|
|
|
tip_exception("效率分不能小于等于0") if params[:eff_score] && params[:eff_score].to_f <= 0
|
|
|
|
tip_exception("效率分不能大于总分值") if params[:eff_score] && params[:eff_score].to_i > params[:total_score].to_i
|
|
|
|
tip_exception("效率分不能大于总分值") if params[:eff_score] && params[:eff_score].to_f.round(2) > params[:total_score].to_f.round(2)
|
|
|
|
tip_exception("缺少shixun_evaluation参数") if params[:shixun_evaluation].blank?
|
|
|
|
tip_exception("缺少shixun_evaluation参数") if params[:shixun_evaluation].blank?
|
|
|
|
tip_exception("缺少challenge_settings参数") if params[:challenge_settings].blank?
|
|
|
|
tip_exception("缺少challenge_settings参数") if params[:challenge_settings].blank?
|
|
|
|
# tip_exception("缺少challenge_id参数") if params[:challenge_settings][:challenge_id].blank?
|
|
|
|
# tip_exception("缺少challenge_id参数") if params[:challenge_settings][:challenge_id].blank?
|
|
|
@ -586,12 +586,12 @@ class HomeworkCommonsController < ApplicationController
|
|
|
|
# tip_exception("challenge_id参数的长度与challenge_score参数的长度不匹配") if
|
|
|
|
# tip_exception("challenge_id参数的长度与challenge_score参数的长度不匹配") if
|
|
|
|
# params[:challenge_settings][:challenge_score].length != params[:challenge_settings][:challenge_id].length
|
|
|
|
# params[:challenge_settings][:challenge_score].length != params[:challenge_settings][:challenge_id].length
|
|
|
|
|
|
|
|
|
|
|
|
current_eff_score = @homework.eff_score
|
|
|
|
current_eff_score = @homework.eff_score.to_f.round(2)
|
|
|
|
@homework.total_score = params[:total_score]
|
|
|
|
@homework.total_score = params[:total_score]
|
|
|
|
@homework.work_efficiency = params[:work_efficiency]
|
|
|
|
@homework.work_efficiency = params[:work_efficiency]
|
|
|
|
@homework.eff_score = params[:work_efficiency] ? params[:eff_score].to_i : 0
|
|
|
|
@homework.eff_score = params[:work_efficiency] ? params[:eff_score].to_f.round(2) : 0
|
|
|
|
|
|
|
|
|
|
|
|
update_eff_score = current_eff_score != @homework.eff_score
|
|
|
|
update_eff_score = current_eff_score.round(2) != @homework.eff_score.round(2)
|
|
|
|
|
|
|
|
|
|
|
|
if @homework_detail_manual.answer_open_evaluation != params[:answer_open_evaluation]
|
|
|
|
if @homework_detail_manual.answer_open_evaluation != params[:answer_open_evaluation]
|
|
|
|
@homework_detail_manual.answer_open_evaluation = params[:answer_open_evaluation]
|
|
|
|
@homework_detail_manual.answer_open_evaluation = params[:answer_open_evaluation]
|
|
|
@ -627,10 +627,8 @@ class HomeworkCommonsController < ApplicationController
|
|
|
|
@homework.save!
|
|
|
|
@homework.save!
|
|
|
|
if score_change && @homework.end_or_late_none_group
|
|
|
|
if score_change && @homework.end_or_late_none_group
|
|
|
|
UpdateShixunWorkScoreJob.perform_now(@homework.id)
|
|
|
|
UpdateShixunWorkScoreJob.perform_now(@homework.id)
|
|
|
|
end
|
|
|
|
elsif update_eff_score && (@homework.end_or_late_none_group || @homework.max_efficiency > 0)
|
|
|
|
|
|
|
|
# 更新所有学生的效率分(作业允许补交且补交已截止 或者 作业不允许补交且提交已截止 或者作业已计算过效率分)
|
|
|
|
# 更新所有学生的效率分(作业允许补交且补交已截止 或者 作业不允许补交且提交已截止)
|
|
|
|
|
|
|
|
if !score_change && update_eff_score && @homework.end_or_late_none_group
|
|
|
|
|
|
|
|
HomeworksService.new.update_student_eff_score HomeworkCommon.find_by(id: @homework.id)
|
|
|
|
HomeworksService.new.update_student_eff_score HomeworkCommon.find_by(id: @homework.id)
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|