From 3624d9d4ca95863bdb2774ee84572370aa4b07d4 Mon Sep 17 00:00:00 2001 From: yuanke <249218296@qq.com> Date: Mon, 19 Sep 2016 13:22:29 +0800 Subject: [PATCH] =?UTF-8?q?=E5=BE=AE=E4=BF=A1=E5=A2=9E=E5=8A=A0=E5=88=86?= =?UTF-8?q?=E7=8F=AD=E7=9B=B8=E5=85=B3=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/api/mobile/apis/courses.rb | 27 +++++++- app/api/mobile/entities/course.rb | 3 + app/api/mobile/entities/user.rb | 4 ++ app/services/courses_service.rb | 2 +- public/assets/wechat/class.html | 3 +- public/assets/wechat/join_classgroup.html | 10 +-- .../assets/wechat/select_my_coursegroup.html | 25 +++++++ .../javascripts/wechat/controllers/class.js | 8 ++- .../wechat/controllers/join_class.js | 6 +- .../wechat/controllers/join_classgroup.js | 63 ++++++++++++++---- .../controllers/select_my_coursegroup.js | 66 +++++++++++++++++++ public/javascripts/wechat/others/routes.js | 1 + 12 files changed, 195 insertions(+), 23 deletions(-) create mode 100644 public/assets/wechat/select_my_coursegroup.html create mode 100644 public/javascripts/wechat/controllers/select_my_coursegroup.js diff --git a/app/api/mobile/apis/courses.rb b/app/api/mobile/apis/courses.rb index f0e4c867d..dd5525fae 100644 --- a/app/api/mobile/apis/courses.rb +++ b/app/api/mobile/apis/courses.rb @@ -757,12 +757,13 @@ module Mobile desc '获取分班列表' params do + requires :id, type: Integer requires :token, type:String end - get ':course_id/course_groups' do + get 'course_groups/:id' do begin authenticate! - course = Course.find(params[:course_id]) + course = Course.find(params[:id]) groups = [] groups = course.course_groups if course.course_groups present :data,groups @@ -772,6 +773,28 @@ module Mobile end end + desc "加入分班" + params do + requires :id, type: Integer + requires :token, type: String + requires :course_group_id, type: Integer + end + post 'join_coursegroup' do + begin + authenticate! + member = Member.where(:course_id => params[:id], :user_id => current_user.id).first + + raise "你还不是该班级的学生!" unless member + + member.course_group_id = params[:course_group_id].to_i + member.save + present :status,0 + rescue Exception=>e + present :message,e.message + present :status,-1 + end + end + end end end diff --git a/app/api/mobile/entities/course.rb b/app/api/mobile/entities/course.rb index 30a5a6cc9..9bf1cc1f6 100644 --- a/app/api/mobile/entities/course.rb +++ b/app/api/mobile/entities/course.rb @@ -19,6 +19,8 @@ module Mobile (format_time(c[field]) if (c.is_a?(Hash) && c.key?(field))) || (format_time(c.send(field)) if c.respond_to?(field)) elsif field == :member_count ::Course===c ? c.members.count : 0 + elsif field == :syllabus_title + c.syllabus.nil? ? "":c.syllabus.title else (c[field] if (c.is_a?(Hash) && c.key?(field))) || (c.send(field) if c.respond_to?(field)) end @@ -38,6 +40,7 @@ module Mobile course_expose :lft course_expose :location course_expose :name + course_expose :syllabus_title course_expose :open_student # course_expose :password course_expose :rgt diff --git a/app/api/mobile/entities/user.rb b/app/api/mobile/entities/user.rb index 30a2a7edd..09ef6a599 100644 --- a/app/api/mobile/entities/user.rb +++ b/app/api/mobile/entities/user.rb @@ -36,6 +36,8 @@ module Mobile u.lastname when :mail u.mail + when :is_me + defined? u.is_me ? u.is_me : 0 end end end @@ -77,6 +79,8 @@ module Mobile user_expose :name + user_expose :is_me + end end diff --git a/app/services/courses_service.rb b/app/services/courses_service.rb index 182d1150f..2c0506d1e 100644 --- a/app/services/courses_service.rb +++ b/app/services/courses_service.rb @@ -115,7 +115,7 @@ class CoursesService role_name: m.roles.first.name, name: m.user.show_name, roles_id: role_ids.include?(7) ? 7 : (role_ids.include?(9) ? 9 : 10 ), - :brief_introduction => m.user.user_extensions.brief_introduction,:realname=>m.user.realname} + :brief_introduction => m.user.user_extensions.brief_introduction,:realname=>m.user.realname,:is_me => current_user.id == m.user.id ? 1:0 } # end end diff --git a/public/assets/wechat/class.html b/public/assets/wechat/class.html index 836575b90..30c9120c3 100644 --- a/public/assets/wechat/class.html +++ b/public/assets/wechat/class.html @@ -25,7 +25,7 @@