Beispiel #1
0
        /// <summary>
        /// 获取角色列表
        /// </summary>
        /// <param name="accessToken">accessToken</param>
        /// <param name="offSet">分页偏移,默认值:0</param>
        /// <param name="size">分页大小,默认值:20,最大值200</param>
        /// <returns></returns>
        public OapiRoleListResponse List(string accessToken, long offSet = 0, long size = 20)
        {
            IDingTalkClient     client  = new DefaultDingTalkClient("https://oapi.dingtalk.com/topapi/role/list");
            OapiRoleListRequest request = new OapiRoleListRequest();

            request.Offset = offSet;
            request.Size   = size;
            OapiRoleListResponse response = client.Execute(request, accessToken);

            return(response);
        }
Beispiel #2
0
        /// <summary>
        /// 取得钉钉角色组
        /// </summary>
        /// <returns></returns>
        public List <IRole> GetRoles(string groupName)
        {
            IDingTalkClient      client   = new DefaultDingTalkClient("https://oapi.dingtalk.com/topapi/role/list");
            OapiRoleListRequest  request  = new OapiRoleListRequest();
            OapiRoleListResponse response = client.Execute(request, DbOper.AccessToken);
            List <IRole>         rList    = new List <IRole>();

            if (!response.IsError)
            {
                var group = response.Result.List.SingleOrDefault(p => p.Name == groupName);
                if (group != null)
                {
                    group.Roles.ForEach(role =>
                    {
                        rList.Add(new Role
                        {
                            RoleName = role.Name,
                            RoleId   = role.Id
                        });
                    });
                }
            }
            return(rList);
        }