/// <summary> /// 得到某个部门下面所有(包括子部门)的成员列表 /// </summary> /// <param name="request">request.id为部门id</param> /// <returns></returns> public static async Task <UserListResponse> GetAllUserList(DepartmentBaseGetRequest request) { var result = await GetUserList( new UserListGetRequest { access_token = request.access_token, department_id = long.Parse(request.id) }); if (result.errcode != 0) { return(result); } var resultGetDepartmentList = await GetDepartmentList(request); foreach (var info in resultGetDepartmentList.department) { var resultGetUserList = await GetUserList( new UserListGetRequest { access_token = request.access_token, department_id = info.id }); if (resultGetUserList.errcode != 0) { return(resultGetUserList); } result.userList.AddRange(resultGetUserList.userList); } return(result); }
public static async Task <DepartmentListResponse> GetDepartmentList(DepartmentBaseGetRequest request) { var result = await CommonApi.AccessDingtalkServerAsync <DepartmentListResponse>( $"https://oapi.dingtalk.com/department/list?access_token={request.access_token}&lang={request.lang}&id={request.id}", null, "GET"); return(result); }