作业列表的优化、课堂的动态隐藏

dev_course
cxt 6 years ago
parent 4a6909b59f
commit b1b9d7103b

@ -90,13 +90,13 @@ class HomeworkCommonsController < ApplicationController
if @homework_type == 4 if @homework_type == 4
if @user_course_identity == Course::STUDENT if @user_course_identity == Course::STUDENT
@homework_commons = @homework_commons.includes(:homework_detail_manual, :homework_group_settings, :shixuns, @homework_commons = @homework_commons.includes(:homework_detail_manual, :published_settings, :shixuns,
student_works: [myshixun: [:games]]) student_works: [myshixun: [:games]])
else else
@homework_commons = @homework_commons.includes(:homework_detail_manual, :homework_group_settings, :shixuns, :student_works) @homework_commons = @homework_commons.includes(:homework_detail_manual, :published_settings, :shixuns, :student_works)
end end
else else
@homework_commons = @homework_commons.includes(:homework_detail_manual, :homework_group_settings, :homework_detail_group, @homework_commons = @homework_commons.includes(:homework_detail_manual, :published_settings, :homework_detail_group,
:student_works) :student_works)
end end
end end

@ -2,6 +2,7 @@ class HomeworkCommon < ApplicationRecord
# homework_type 1普通作业 2编程作业弃用 3分组作业 4实训作业 # homework_type 1普通作业 2编程作业弃用 3分组作业 4实训作业
enum homework_type: { normal: 1, program: 2, group: 3, practice: 4 }, _suffix: true enum homework_type: { normal: 1, program: 2, group: 3, practice: 4 }, _suffix: true
has_many :homework_group_settings, dependent: :destroy has_many :homework_group_settings, dependent: :destroy
has_many :published_settings, -> { group_published }, class_name: "HomeworkGroupSetting"
has_many :student_works, -> { where("is_delete != 1") } has_many :student_works, -> { where("is_delete != 1") }
has_one :homework_detail_manual, dependent: :destroy has_one :homework_detail_manual, dependent: :destroy
@ -78,7 +79,7 @@ class HomeworkCommon < ApplicationRecord
def all_works def all_works
student_works = self.unified_setting ? self.student_works : student_works = self.unified_setting ? self.student_works :
self.student_works.where(user_id: self.course.students.where( self.student_works.where(user_id: self.course.students.where(
course_group_id: self.homework_group_settings.group_published.pluck(:course_group_id)). course_group_id: self.published_settings.pluck(:course_group_id)).
pluck(:user_id)) pluck(:user_id))
end end

@ -0,0 +1,5 @@
class MigrateCourseModuleActivity < ActiveRecord::Migration[5.2]
def change
CourseModule.where(module_type: 'activity').update_all(hidden: 1)
end
end
Loading…
Cancel
Save