diff --git a/app/controllers/courses_controller.rb b/app/controllers/courses_controller.rb index 8de98f0cb..253bafa48 100644 --- a/app/controllers/courses_controller.rb +++ b/app/controllers/courses_controller.rb @@ -737,11 +737,11 @@ class CoursesController < ApplicationController end end - # 获取历史课堂,即用户管理的所有课堂以及课堂下的分班 + # 获取历史课堂,即用户管理的所有课堂以及课堂下的分班(去除当前课堂) def get_historical_courses - user_id = current_user.id - - @courses = Course.includes(:course_groups).where(tea_id: user_id, is_delete: 0) + @courses = Course.where.not(id: @course.id).joins(:course_members). + where(is_delete: 0, course_members: {user_id: current_user.id, role: %i[CREATOR PROFESSOR ASSISTANT_PROFESSOR]}).includes(:course_groups) + # @courses = Course.includes(:course_groups).where(id: current_user.course_members, is_delete: 0) end # 根据历史课堂的课堂id和分班id获取所有学生 @@ -754,6 +754,7 @@ class CoursesController < ApplicationController @students = @students.where(course_group_id: course_group_id) end + @students = @students.includes(user: [user_extension: :school]) @students_count = @students.size end diff --git a/app/controllers/myshixuns_controller.rb b/app/controllers/myshixuns_controller.rb index 91cff3c19..035b43955 100644 --- a/app/controllers/myshixuns_controller.rb +++ b/app/controllers/myshixuns_controller.rb @@ -182,7 +182,13 @@ class MyshixunsController < ApplicationController test_set_percentage = test_set_score / 100.to_f # 测试集得分比 score = (challenge.score * test_set_percentage * answer_deduction_percentage).to_i # 如果分数比上次多,则更新成绩 - game.update_attributes!(:status => 0, :final_score => score) if game.final_score < score + game_update = + if game.final_score < score + {final_score: score, status: 0} + else + {status: 0} + end + game.update_attributes!(game_update) end end test_cases_time = format("%.3f", (Time.now.to_f - t1.to_f)).to_f diff --git a/app/views/courses/get_historical_course_students.json.jbuilder b/app/views/courses/get_historical_course_students.json.jbuilder index a2d3a3f57..be58ff06a 100644 --- a/app/views/courses/get_historical_course_students.json.jbuilder +++ b/app/views/courses/get_historical_course_students.json.jbuilder @@ -1,9 +1,9 @@ json.students do json.array! @students do |student| - json.course_member_id student.id + json.user_id student.user_id json.name student.user.real_name - json.student_id student.user.user_extension.try(:student_id) - json.school_name student.user.user_extension.school.try(:name) + json.student_id student.user.student_id + json.school_name student.user.school_name end end json.students_count @students_count \ No newline at end of file diff --git a/config/locales/shixuns/en.yml b/config/locales/shixuns/en.yml index 0f1a9f695..10de1eaef 100644 --- a/config/locales/shixuns/en.yml +++ b/config/locales/shixuns/en.yml @@ -1,7 +1,7 @@ 'en': shixun: status: - 0: editing - 1: applying - 2: published - 3: closed + '0': editing + '1': applying + '2': published + '3': closed diff --git a/config/locales/shixuns/zh-CN.yml b/config/locales/shixuns/zh-CN.yml index c5ba574d8..d7ad5f7e2 100644 --- a/config/locales/shixuns/zh-CN.yml +++ b/config/locales/shixuns/zh-CN.yml @@ -1,7 +1,7 @@ 'zh-CN': shixun: status: - 0: 编辑中 - 1: 审核中 - 2: 已发布 - 3: 已关闭 + '0': 编辑中 + '1': 审核中 + '2': 已发布 + '3': 已关闭