From 40d08fb8e6fe4aac8a92169b3c44c09ece3115e4 Mon Sep 17 00:00:00 2001 From: cxt <853663049@qq.com> Date: Wed, 16 Oct 2019 16:22:42 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E8=A7=92=E8=89=B2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controllers/courses_controller.rb | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/app/controllers/courses_controller.rb b/app/controllers/courses_controller.rb index 0b3e35519..a1bd16e94 100644 --- a/app/controllers/courses_controller.rb +++ b/app/controllers/courses_controller.rb @@ -583,6 +583,8 @@ class CoursesController < ApplicationController # 学生身份的处理 student_member = course_members.where(role: %i[STUDENT]).take + + # 不存在则创建学生身份 if params[:roles].include?("STUDENT") && student_member.blank? correspond_teacher_exist = CourseMember.exists?(user_id: params[:user_id], is_active: 1, course_id: @course.id, role: %i[CREATOR PROFESSOR ASSISTANT_PROFESSOR]) new_student = CourseMember.new(user_id: params[:user_id], course_id: @course.id, role: 4) @@ -597,6 +599,9 @@ class CoursesController < ApplicationController student_member.destroy! CourseDeleteStudentDeleteWorksJob.perform_later(@course.id, [params[:user_id]]) # CourseDeleteStudentNotifyJob.perform_later(@course.id, [params[:user_id]], current_user.id) + elsif params[:roles].include?("STUDENT") && student_member.present? && !params[:roles].include?("PROFESSOR") && !params[:roles].include?("ASSISTANT_PROFESSOR") + # 学生身份存在且学生没有教师身份时更新is_active + student_member.update_attributes!(is_active: 1) end normal_status(0, "修改成功")