diff --git a/app/controllers/homework_common_controller.rb b/app/controllers/homework_common_controller.rb index a0735bf8a..7b510ec91 100644 --- a/app/controllers/homework_common_controller.rb +++ b/app/controllers/homework_common_controller.rb @@ -202,24 +202,24 @@ class HomeworkCommonController < ApplicationController if @homework_detail_manual.comment_status == 1 student_works = @homework.student_works.has_committed if student_works && student_works.size >= 2 - # if @homework.homework_type == 3 - # student_work_projects = @homework.student_work_projects.where("student_work_id is not null") - # student_work_projects.each_with_index do |pro_work, pro_index| - # n = @homework_detail_manual.evaluation_num - # n = n < student_works.size ? n : student_works.size - 1 - # work_index = -1 - # student_works.each_with_index do |stu_work, stu_index| - # if stu_work.id.to_i == pro_work.student_work_id.to_i - # work_index = stu_index - # end - # end - # assigned_homeworks = get_assigned_homeworks(student_works, n, work_index) - # assigned_homeworks.each do |h| - # student_works_evaluation_distributions = StudentWorksEvaluationDistribution.new(user_id: pro_work.user_id, student_work_id: h.id) - # student_works_evaluation_distributions.save - # end - # end - # else + if @homework.homework_type == 3 + student_work_projects = @homework.student_work_projects.where("student_work_id is not null") + student_work_projects.each_with_index do |pro_work, pro_index| + n = @homework_detail_manual.evaluation_num + n = n < student_works.size ? n : student_works.size - 1 + work_index = -1 + student_works.each_with_index do |stu_work, stu_index| + if stu_work.id.to_i == pro_work.student_work_id.to_i + work_index = stu_index + end + end + assigned_homeworks = get_assigned_homeworks(student_works, n, work_index) + assigned_homeworks.each do |h| + student_works_evaluation_distributions = StudentWorksEvaluationDistribution.new(user_id: pro_work.user_id, student_work_id: h.id) + student_works_evaluation_distributions.save + end + end + else student_works.each_with_index do |work, index| user = work.user n = @homework_detail_manual.evaluation_num @@ -230,7 +230,7 @@ class HomeworkCommonController < ApplicationController student_works_evaluation_distributions.save end end - #end + end @homework_detail_manual.update_column('comment_status', 2) @homework_detail_manual.update_column('evaluation_start', Date.today) @statue = 1 @@ -300,13 +300,15 @@ class HomeworkCommonController < ApplicationController def alert_anonymous_comment @cur_size = 0 @totle_size = 0 + @work_size = 0 if @homework_detail_manual.comment_status == 1 @totle_size = @course.student.count - @cur_size = @homework.student_works.has_committed.size + @cur_size = @homework.student_works.where("work_status != 0").size + @work_size = @homework.student_works.has_committed.size elsif @homework_detail_manual.comment_status == 2 - @homework.student_works.has_committed.map { |work| @totle_size += work.student_works_evaluation_distributions.count} + @homework.student_works.where("work_status != 0").map { |work| @totle_size += work.student_works_evaluation_distributions.count} @cur_size = 0 - @homework.student_works.has_committed.map { |work| @cur_size += work.student_works_scores.select("distinct user_id").where(:reviewer_role => 3).count} + @homework.student_works.where("work_status != 0").map { |work| @cur_size += work.student_works_scores.select("distinct user_id").where(:reviewer_role => 3).count} end @percent = format("%.2f",(@cur_size.to_f / ( @totle_size == 0 ? 1 : @totle_size)) * 100) @user_activity_id = params[:user_activity_id].to_i diff --git a/app/views/homework_common/_alert_anonyoms.html.erb b/app/views/homework_common/_alert_anonyoms.html.erb index 8834d6746..9b3e054ac 100644 --- a/app/views/homework_common/_alert_anonyoms.html.erb +++ b/app/views/homework_common/_alert_anonyoms.html.erb @@ -1,44 +1,24 @@ -
- 开启匿评后提交的作品将 - 不能参与匿评, - 匿评评分将被记为 - 0分 - 。目前有 - <%= @totle_size%>个 - 学生,共提交了 - <%= @cur_size %> - 份作品,占 - <%= @percent %>%, - 是否确定开启匿评? -
- <% elsif @homework_detail_manual.comment_status == 2 %> -- 关闭匿评后学生将不能对作品进行 - 匿评 - ,且作品列表将会 - 公开, - 目前分配了 - <%= @totle_size%>份 - 匿评作品,已评了 - <%= @cur_size %> - 份作品,占 - <%= @percent %>%, - 是否确定关闭匿评? -
+开启匿评之后提交作品的学生及其作品,不能参与匿评,匿评评分将被记为 0 分。
+本次作业共 <%= @totle_size %>个 学生,已有 <%= @cur_size %>个 学生共提交了 <%= @work_size %> 份作品,占 <%= @percent %>%,是否确定开启匿评?
+ <% elsif @homework_detail_manual.comment_status == 2 %> +关闭匿评后学生将不能对作品进行匿评,且作品列表将会公开,
+目前分配了 <%= @totle_size %>份 匿评作品,已评了 <%= @cur_size %>份 作品,占 <%= @percent %>%,是否确定关闭匿评?
<% end %> - + 确定 + 取消