You can not select more than 25 topics
Topics must start with a chinese character,a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
- module Mobile
- module Entities
- class User < Grape::Entity
- include ApplicationHelper
- include ApiHelper
- def self.user_expose(f)
- expose f do |u,opt|
- if u.is_a?(Hash) && u.key?(f)
- u[f]
- elsif u.is_a?(::User)
- if u.respond_to?(f)
- u.send(f) unless u.user_extensions.nil?
- else
- case f
- when :img_url
- "/images/#{url_to_avatar(u)}"
- when :gender
- u.nil? || u.user_extensions.nil? || u.user_extensions.gender.nil? ? 0 : u.user_extensions.gender
- when :work_unit
- get_user_work_unit u unless u.user_extensions.nil?
- when :location
- get_user_location u unless u.user_extensions.nil?
- when :brief_introduction
- u.nil? || u.user_extensions.nil? ? "" : u.user_extensions.brief_introduction
- when :student_num
- u.nil? || u.user_extensions.nil? ? "" : u.user_extensions.student_id
- when :real_name
- u.nil? ? "" : get_user_realname(u).gsub(/\s*/,"");
- when :name
- u.nil? ? "" : u.show_name
- when :roles_id
- u[:roles_id].nil? ? nil : u.roles_id
- when :login
- u.login
- when :lastname
- u.lastname
- when :mail
- u.mail
- when :is_me
- defined? u.is_me ? u.is_me : 0
- end
- end
- end
- end
- end
-
- expose :id
- #头像
- user_expose :login
- user_expose :lastname
- #邮箱地址
- user_expose :mail
- expose :nickname
- #真名
- user_expose :img_url
- #昵称
- expose :realname
- #昵称
- user_expose :real_name
- #性别
- user_expose :gender
- #我的二维码
- #工作单位
- user_expose :work_unit
- #地区
- user_expose :location
- #签名
- user_expose :brief_introduction
- #总成绩
- user_expose :score
- #学号
- user_expose :student_num
- # 活跃值
- user_expose :active_count
-
- user_expose :role_name
-
- user_expose :roles_id
-
- user_expose :name
-
- user_expose :is_me
-
- end
- end
-
- end
|