示例#1
0
        public async Task <IEnumerable <SearchUserResult> > FindUsers(string query, Brand brand, OrganizationGroup orgGroup, AmSpaceUserStatus status, string domain, string identityNumber)
        {
            var url = new UriBuilder(Endpoints.SearchUsersEndpoint);

            url.AddQuery("query", query);
            if (status != AmSpaceUserStatus.ANY)
            {
                url.AddQuery("status", ((int)status).ToString());
            }
            url.AddQueryNotNull("brand", brand?.Id);
            url.AddQueryNotNull("organization_group", orgGroup?.Id);
            url.AddQueryNotNull("domain", domain);
            url.AddQueryNotNull("person_legal_id", identityNumber);
            var pager = await RequestWrapper.GetAsyncWrapper <SearchUsers>(url.ToString());

            var result = new List <SearchUserResult>();

            result.AddRange(pager.Results);
            while (!string.IsNullOrEmpty(pager.Next))
            {
                pager = await RequestWrapper.GetAsyncWrapper <SearchUsers>(pager.Next);

                result.AddRange(pager.Results);
            }
            return(result);
        }