parent
41d9af1ab9
commit
4a6c26d499
@ -1,74 +1,33 @@
|
|||||||
module Mobile
|
module Mobile
|
||||||
|
|
||||||
module Apis
|
module Apis
|
||||||
|
class Courses < Grape::API
|
||||||
module Entities
|
resource :courses do
|
||||||
|
desc "get all courses"
|
||||||
class Course < Grape::Entity
|
params do
|
||||||
def self.course_expose(field)
|
optional :school_id, type: Integer, desc: 'school number'
|
||||||
expose field do |f,opt|
|
requires :per_page_count, type: Integer
|
||||||
f[:course][field] || f[:course].__send__(field)
|
requires :page, type: Integer, desc: 'current page no'
|
||||||
end
|
end
|
||||||
end
|
|
||||||
expose :img_url
|
|
||||||
course_expose :attachmenttype
|
|
||||||
course_expose :class_period
|
|
||||||
course_expose :code
|
|
||||||
course_expose :created_at
|
|
||||||
course_expose :description
|
|
||||||
course_expose :endup_time
|
|
||||||
course_expose :extra
|
|
||||||
course_expose :id
|
|
||||||
course_expose :inherit_members
|
|
||||||
course_expose :is_public
|
|
||||||
course_expose :lft
|
|
||||||
course_expose :location
|
|
||||||
course_expose :name
|
|
||||||
course_expose :open_student
|
|
||||||
# course_expose :password
|
|
||||||
course_expose :rgt
|
|
||||||
course_expose :school_id
|
|
||||||
course_expose :setup_time
|
|
||||||
course_expose :state
|
|
||||||
course_expose :status
|
|
||||||
course_expose :string
|
|
||||||
course_expose :tea_id
|
|
||||||
course_expose :term
|
|
||||||
course_expose :time
|
|
||||||
course_expose :updated_at
|
|
||||||
course_expose :teacher
|
|
||||||
end
|
|
||||||
|
|
||||||
end
|
|
||||||
|
|
||||||
class Courses < Grape::API
|
|
||||||
resource :courses do
|
|
||||||
desc "get all courses"
|
|
||||||
params do
|
|
||||||
optional :school_id, type: Integer, desc: 'school number'
|
|
||||||
requires :per_page_count, type: Integer
|
|
||||||
requires :page, type: Integer, desc: 'current page no'
|
|
||||||
end
|
|
||||||
get do
|
|
||||||
cs = CoursesService.new
|
|
||||||
courses = cs.course_list(params)
|
|
||||||
present :data, courses, with: Entities::Course
|
|
||||||
present :status, 0
|
|
||||||
end
|
|
||||||
|
|
||||||
desc "Return a course"
|
|
||||||
params do
|
|
||||||
requires :id, type: Integer
|
|
||||||
end
|
|
||||||
route_param :id do
|
|
||||||
get do
|
get do
|
||||||
course = Course.find(params[:id])
|
cs = CoursesService.new
|
||||||
{status: 0, data: course}
|
courses = cs.course_list(params)
|
||||||
|
present :data, courses, with: Mobile::Entities::Course
|
||||||
|
present :status, 0
|
||||||
end
|
end
|
||||||
end
|
|
||||||
|
|
||||||
|
desc "Return a course"
|
||||||
|
params do
|
||||||
|
requires :id, type: Integer
|
||||||
|
end
|
||||||
|
route_param :id do
|
||||||
|
get do
|
||||||
|
course = Course.find(params[:id])
|
||||||
|
{status: 0, data: course}
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
|
||||||
end
|
end
|
||||||
|
|
||||||
|
@ -1,38 +1,34 @@
|
|||||||
module Mobile
|
module Mobile
|
||||||
module Apis
|
module Apis
|
||||||
class Users < Grape::API
|
class Users < Grape::API
|
||||||
resource :users do
|
resource :users do
|
||||||
desc "get all users"
|
desc "get all users"
|
||||||
get do
|
get do
|
||||||
['hello']
|
['hello']
|
||||||
end
|
end
|
||||||
|
|
||||||
desc "add a user"
|
desc "add a user"
|
||||||
params do
|
params do
|
||||||
requires :login, type: String, desc: 'username'
|
requires :login, type: String, desc: 'username'
|
||||||
requires :mail, type: String, desc: 'mail'
|
requires :mail, type: String, desc: 'mail'
|
||||||
requires :password, type: String, desc: 'password'
|
requires :password, type: String, desc: 'password'
|
||||||
end
|
end
|
||||||
post do
|
post do
|
||||||
us = UsersService.new
|
us = UsersService.new
|
||||||
begin
|
begin
|
||||||
user = us.register params.merge(:password_confirmation => params[:password],
|
user = us.register params.merge(:password_confirmation => params[:password],
|
||||||
:should_confirmation_password => true)
|
:should_confirmation_password => true)
|
||||||
raise "register failed #{user.errors.full_messages}" if user.new_record?
|
raise "register failed #{user.errors.full_messages}" if user.new_record?
|
||||||
{status: 0, data: user}
|
present :data, user, with: Mobile::Entities::User
|
||||||
rescue => e
|
present :status, 0
|
||||||
{status: 1, message: e.message}
|
rescue => e
|
||||||
|
{status: 1, message: e.message}
|
||||||
|
end
|
||||||
end
|
end
|
||||||
end
|
|
||||||
|
|
||||||
desc "test upload"
|
|
||||||
post "upload" do
|
|
||||||
puts "haha11"
|
|
||||||
end
|
end
|
||||||
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
||||||
|
@ -0,0 +1,38 @@
|
|||||||
|
module Mobile
|
||||||
|
module Entities
|
||||||
|
class Course < Grape::Entity
|
||||||
|
def self.course_expose(field)
|
||||||
|
expose field do |f,opt|
|
||||||
|
f[:course][field] || f[:course].__send__(field)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
expose :img_url
|
||||||
|
course_expose :attachmenttype
|
||||||
|
course_expose :class_period
|
||||||
|
course_expose :code
|
||||||
|
course_expose :created_at
|
||||||
|
course_expose :description
|
||||||
|
course_expose :endup_time
|
||||||
|
course_expose :extra
|
||||||
|
course_expose :id
|
||||||
|
course_expose :inherit_members
|
||||||
|
course_expose :is_public
|
||||||
|
course_expose :lft
|
||||||
|
course_expose :location
|
||||||
|
course_expose :name
|
||||||
|
course_expose :open_student
|
||||||
|
# course_expose :password
|
||||||
|
course_expose :rgt
|
||||||
|
course_expose :school_id
|
||||||
|
course_expose :setup_time
|
||||||
|
course_expose :state
|
||||||
|
course_expose :status
|
||||||
|
course_expose :string
|
||||||
|
course_expose :tea_id
|
||||||
|
course_expose :term
|
||||||
|
course_expose :time
|
||||||
|
course_expose :updated_at
|
||||||
|
course_expose :teacher
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
@ -0,0 +1,20 @@
|
|||||||
|
module Mobile
|
||||||
|
module Entities
|
||||||
|
class User < Grape::Entity
|
||||||
|
#头像
|
||||||
|
#昵称
|
||||||
|
expose :login
|
||||||
|
#性别
|
||||||
|
expose :gender do |user, opt|
|
||||||
|
user.user_extentions.gender
|
||||||
|
end
|
||||||
|
#我的二维码
|
||||||
|
#工作单位
|
||||||
|
#邮箱地址
|
||||||
|
expose :mail
|
||||||
|
#地区
|
||||||
|
#签名
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
end
|
Loading…
Reference in new issue