diff --git a/app/api/mobile/apis/courses.rb b/app/api/mobile/apis/courses.rb index 515ebce77..4920f6f30 100644 --- a/app/api/mobile/apis/courses.rb +++ b/app/api/mobile/apis/courses.rb @@ -16,6 +16,79 @@ module Mobile present :status, 0 end + desc "新建课程[TODO,参数没弄清]" + params do + end + post do + end + + desc "编辑课程[TODO,参数没弄清]" + params do + end + post do + end + + desc "加入课程" + params do + end + post ":id" do + authenticate! + cs = CoursesService.new + status = cs.join_course({"object_id" => params[:id]},current_user.id) + out = {status: status} + message = case status + when 0; "加入成功" + when 1; "密码错误" + when 2; "课程已过期 请联系课程管理员重启课程。(在配置课程处)" + when 3; "您已经加入了课程" + when 4; "您加入的课程不存在" + when 5; "您还未登录" + else; "未知错误,请稍后再试" + end + out.merge(message: message) + end + + desc "退出课程" + params do + end + delete ":id" do + authenticate! + cs = CoursesService.new + cs.exit_course({"object_id" => params[:id]}, current_user.id) + {status: 0} + end + + desc "搜索课程" + params do + requires :name, type: String, desc: "课程名" + end + get 'search' do + cs = CoursesService.new + courses = cs.search_course(params) + present :data, courses, with: Mobile::Entities::Course + present :status, 0 + end + + desc "课程老师列表" + params do + requires :course_id, type: Integer, desc: "课程id" + end + get 'teachers' do + cs = CoursesService.new + teachers = cs.course_teacher_or_student_list({role: 1}, params[:course_id]) + {status: 0, data: teachers} + end + + desc "课程学生列表" + params do + requires :course_id, type: Integer, desc: "课程id" + end + get 'teachers' do + cs = CoursesService.new + teachers = cs.course_teacher_or_student_list({role: 2}, params[:course_id]) + {status: 0, data: teachers} + end + desc "返回单个课程" params do requires :id, type: Integer diff --git a/app/api/mobile/apis/users.rb b/app/api/mobile/apis/users.rb index 6e2952290..f31f1d834 100644 --- a/app/api/mobile/apis/users.rb +++ b/app/api/mobile/apis/users.rb @@ -53,6 +53,17 @@ module Mobile present :status, 0 end + desc "用户搜索" + params do + requires :name, type: String, desc: '用户名关键字' + end + get 'search' do + us = UsersService.new + user = us.search_user params + present :data, user, with: Mobile::Entities::User + present :status, 0 + end + end end end