Commit f0c889c67132189372ec5e6fb899933efef27692

Authored by Tao Huang
1 parent 47545c86
Exists in master

Add more user APIs

lib/dingtalk/api/department.rb
1 module Dingtalk 1 module Dingtalk
2 module Api 2 module Api
3 class Department < Base 3 class Department < Base
4 - def list  
5 - http_get("list?access_token=#{access_token}") 4 + def list(parent_id = 1, fetch_child = false)
  5 + http_get("list?id=#{parent_id}&fetch_child=#{fetch_child}&access_token=#{access_token}")
6 end 6 end
7 7
8 def create(params) 8 def create(params)
lib/dingtalk/api/user.rb
@@ -5,14 +5,43 @@ module Dingtalk @@ -5,14 +5,43 @@ module Dingtalk
5 http_get("getuserinfo?access_token=#{access_token}&code=#{code}") 5 http_get("getuserinfo?access_token=#{access_token}&code=#{code}")
6 end 6 end
7 7
8 - def list(department=1)  
9 - http_get("list?access_token=#{access_token}&department_id=#{department}") 8 + def userids(department=1)
  9 + http_get("getDeptMember?access_token=#{access_token}&deptId=#{department}")
  10 + end
  11 +
  12 + def simplelist(department=1)
  13 + http_get("simplelist?access_token=#{access_token}&department_id=#{department}")
  14 + end
  15 +
  16 + def listbypage(department=1, offset=0, size=20, order='custom')
  17 + http_get("list?access_token=#{access_token}&department_id=#{department}&offset=#{offset}&size=#{size}&order=#{order}")
10 end 18 end
11 19
12 def get(userid) 20 def get(userid)
13 http_get("get?access_token=#{access_token}&userid=#{URI.escape userid}") 21 http_get("get?access_token=#{access_token}&userid=#{URI.escape userid}")
14 end 22 end
15 23
  24 + def get_admin
  25 + http_get("get_admin?access_token=#{access_token}")
  26 + end
  27 +
  28 + def get_admin_scope
  29 + http_get("get_admin_scope?access_token=#{access_token}")
  30 + end
  31 +
  32 + def get_access_microapp(app_id, user_id)
  33 + http_get("get_access_microapp?access_token=#{access_token}&appId=#{app_id}&user_id=#{URI.escape userid}")
  34 + end
  35 +
  36 + def get_userid_by_unionid(unionid)
  37 + http_get("getUseridByUnionid?access_token=#{access_token}&unionid=#{URI.escape unionid}")
  38 + end
  39 +
  40 + # onlyActive: 0: 包含未激活钉钉的人员数量, 1: 不包含未激活钉钉的人员数量
  41 + def get_org_user_count(onlyActive = 0)
  42 + http_get("get_org_user_count?access_token=#{access_token}&onlyActive=#{onlyActive}")
  43 + end
  44 +
16 def delete(userid) 45 def delete(userid)
17 http_get("delete?access_token=#{access_token}&userid=#{URI.escape userid}") 46 http_get("delete?access_token=#{access_token}&userid=#{URI.escape userid}")
18 end 47 end
lib/dingtalk/corp.rb
@@ -8,5 +8,9 @@ module Dingtalk @@ -8,5 +8,9 @@ module Dingtalk
8 @corp_secret = '' 8 @corp_secret = ''
9 @permanent_code = '' 9 @permanent_code = ''
10 end 10 end
  11 +
  12 + def isv_mode?
  13 + @isv_mode
  14 + end
11 end 15 end
12 end 16 end
13 \ No newline at end of file 17 \ No newline at end of file