@ -300,6 +300,7 @@ class CoursesService
#@state == 4 您加入的课程不存在
#@state == 5 您还未登录
#@state == 6 申请成功,请等待审核完毕
#@state == 7 您已经发送过申请了,请耐心等待
#@state 其他 未知错误,请稍后再试
def join_course params , current_user
course = Course . find_by_id params [ :object_id ]
@ -313,6 +314,8 @@ class CoursesService
#如果加入角色为学生
if params [ :role ] == " 10 "
@state = 3
elsif current_user . allowed_to? ( :as_teacher , course )
@state = 3
else
#如果加入角色为教师或者教辅
CourseMessage . create ( :user_id = > course . tea_id , :course_id = > course . id , :viewed = > false , :content = > params [ :role ] , :course_message_id = > User . current . id , :course_message_type = > 'JoinCourseRequest' , :status = > 0 )
@ -330,8 +333,13 @@ class CoursesService
StudentsForCourse . create ( :student_id = > current_user . id , :course_id = > params [ :object_id ] )
@state = 0
else
CourseMessage . create ( :user_id = > course . tea_id , :course_id = > course . id , :viewed = > false , :content = > params [ :role ] , :course_message_id = > User . current . id , :course_message_type = > 'JoinCourseRequest' , :status = > 0 )
@state = 6
#如果已经发送过消息了,那么就要给个提示
if CourseMessage . where ( " course_message_type = 'JoinCourseRequest' and user_id = #{ course . tea_id } and content = #{ params [ :role ] } and course_message_id = #{ User . current . id } and course_id = #{ course . id } and status = 0 " ) . count != 0
@state = 7
else
CourseMessage . create ( :user_id = > course . tea_id , :course_id = > course . id , :viewed = > false , :content = > params [ :role ] , :course_message_id = > User . current . id , :course_message_type = > 'JoinCourseRequest' , :status = > 0 )
@state = 6
end
end
else
@state = 1