示例#1
0
        public ActionResult <ListCustomersResponse> ListCustomers([FromQuery] ListCustomersRequest request)
        {
            if (request == null)
            {
                request = new ListCustomersRequest();
            }
            else
            {
                if (request.PageSize < 1 || ListCustomersRequest.MaxPageSize < request.PageSize)
                {
                    return(BadRequest("Bad PageSize"));
                }
                if (request.PageToken < 0)
                {
                    return(BadRequest("Bad PageToken"));
                }
            }
            var result = new ListCustomersResponse();

            result.Customers = request.Name == null
                ? _repo.ListCustomers(request.PageToken, request.PageSize)
                : _repo.SearchCustomers(request.Name, request.PageToken, request.PageSize);

            result.NextPage = result.Customers.Any()
                ? $"/customers?Name={request.Name}&PageSize={request.PageSize}&PageToken={request.PageToken + 1}"
                : null;
            return(result);
        }
示例#2
0
        static public async Task <List <Customer> > GetCustomersAsync()
        {
            List <Customer> customers = new List <Customer>();
            CustomersApi    api       = new CustomersApi();
            string          cursor    = null;

            do
            {
                ListCustomersResponse resp = await api.ListCustomersAsync(cursor);

                customers.AddRange(resp.Customers);
                cursor = resp.Cursor;
            } while (cursor != null);
            return(customers);
        }
示例#3
0
        public void ListCustomers()
        {
            DateTime endDate   = DateTime.UtcNow.Date;
            DateTime beginDate = endDate.AddDays(-365);

            ListCustomersResponse listCustomersResponse = m_mwsCustomerServiceClient.ListCustomers(new ListCustomersRequest
            {
                SellerId       = m_sellerId,
                MarketplaceId  = m_marketPlaceId,
                DateRangeType  = "AssociatedDate",
                DateRangeStart = beginDate,
                DateRangeEnd   = endDate
            });

            List <Customer> customers = listCustomersResponse.ListCustomersResult.CustomerList;
        }
示例#4
0
        static public async Task <Customer> GetCustomer(string lastName, string firstName)
        {
            Customer retval            = null;
            ListCustomersResponse resp = null;

            CustomersApi api    = new CustomersApi();
            string       cursor = null;

            do
            {
                resp = await api.ListCustomersAsync(cursor);

                retval = resp.Customers.FirstOrDefault(c => c.FamilyName == lastName && c.GivenName == firstName);
                cursor = resp.Cursor;
            } while (retval == null && resp.Cursor != null);
            return(retval);
        }