コード例 #1
0
        public ManagerResponse <GetPartiesResult, IEnumerable <Party> > GetParties(CommerceCustomer customer)
        {
            var request = new GetPartiesRequest(customer);
            var parties = this.customerServiceProvider.GetParties(request);
            IEnumerable <Party> result = !parties.Success || (parties.Parties == null) ? new List <Party>() : parties.Parties;

            return(new ManagerResponse <GetPartiesResult, IEnumerable <Party> >(parties, result));
        }
コード例 #2
0
        public async Task <IEnumerable <PartyDetails> > GetPartiesAsync(IList <string> parties, string accessToken = null)
        {
            GetPartiesRequest request = new GetPartiesRequest();

            request.Parties.Add(parties);

            var response = await _partyManagementClient.WithAccess(accessToken).Dispatch(request, (c, r, co) => c.GetPartiesAsync(r, co));

            return(response.PartyDetails);
        }
コード例 #3
0
        public ManagerResponse <GetPartiesResult, IEnumerable <IParty> > GetParties(CommerceCustomer customer)
        {
            Assert.ArgumentNotNull(customer, nameof(customer));

            var request   = new GetPartiesRequest(customer);
            var result    = CustomerServiceProvider.GetParties(request);
            var partyList = result.Success && result.Parties != null?result.Parties.Select(p => p.ToEntity()) : new List <IParty>();

            result.WriteToSitecoreLog();
            return(new ManagerResponse <GetPartiesResult, IEnumerable <IParty> >(result, partyList));
        }
コード例 #4
0
        /// <summary>
        /// Gets the parties.
        /// </summary>
        /// <param name="storefront">The storefront.</param>
        /// <param name="customer">The user.</param>
        /// <returns>The manager response where the list of parties is returned in the response.</returns>
        public virtual ManagerResponse <GetPartiesResult, IEnumerable <CommerceParty> > GetParties([NotNull] CommerceStorefront storefront, [NotNull] CommerceCustomer customer)
        {
            Assert.ArgumentNotNull(storefront, "storefront");
            Assert.ArgumentNotNull(customer, "user");

            var request   = new GetPartiesRequest(customer);
            var result    = this.CustomerServiceProvider.GetParties(request);
            var partyList = result.Success && result.Parties != null ? (result.Parties).Cast <CommerceParty>() : new List <CommerceParty>();

            Helpers.LogSystemMessages(result.SystemMessages, result);
            return(new ManagerResponse <GetPartiesResult, IEnumerable <CommerceParty> >(result, partyList));
        }
コード例 #5
0
        /// <summary>
        /// Gets the parties.
        /// </summary>
        /// <param name="storefront">The storefront.</param>
        /// <param name="customer">The user.</param>
        /// <returns>The manager response where the list of parties is returned in the response.</returns>
        public virtual ManagerResponse<GetPartiesResult, IEnumerable<CSFConnectModels.CommerceParty>> GetParties([NotNull] CommerceStorefront storefront, [NotNull] CommerceCustomer customer)
        {
            Assert.ArgumentNotNull(storefront, "storefront");
            Assert.ArgumentNotNull(customer, "user");

            var request = new GetPartiesRequest(customer);
            var result = this.CustomerServiceProvider.GetParties(request);
            var partyList = result.Success && result.Parties != null ? (result.Parties).Cast<CSFConnectModels.CommerceParty>() : new List<CSFConnectModels.CommerceParty>();

            Helpers.LogSystemMessages(result.SystemMessages, result);
            return new ManagerResponse<GetPartiesResult, IEnumerable<CSFConnectModels.CommerceParty>>(result, partyList);
        }
コード例 #6
0
        public void ShouldGetAllPartiesByCustomerId()
        {
            var customerId = new Guid();
            var request    = new GetPartiesRequest(new CommerceCustomer()
            {
                ExternalId = customerId.ToString()
            });
            var result = new GetPartiesResult();
            var args   = new ServicePipelineArgs(request, result);

            this._client.GetAllAddresses(customerId).Returns(new ArrayOfAddressModelResponse()
            {
                Success = true,
                Result  = new[]
                {
                    new AddressModel()
                    {
                        Address1  = "my address 1",
                        Address2  = "my address 2",
                        FirstName = "Koly",
                        LastName  = "Ivanov",
                        City      = "Vinnitsa",
                        Company   = "Sitecore",
                        CountryThreeLetterIsoCode = "USA",
                        CountryTwoLetterIsoCode   = "US",
                        Email         = "*****@*****.**",
                        FaxNumber     = "9999",
                        Id            = "1",
                        PhoneNumber   = "043298765",
                        ZipPostalCode = "21000"
                    },
                    new AddressModel()
                    {
                        Address1  = "test address 1",
                        Address2  = "test address 2",
                        FirstName = "Ivan",
                        LastName  = "Petrovich"
                    }
                }
            });

            _processor.Process(args);

            result.Parties.Should().HaveCount(2);
            result.Success.Should().BeTrue();
            result.Parties.ElementAt(0).Address1.Should().Be("my address 1");
            result.Parties.ElementAt(0).Address2.Should().Be("my address 2");
            result.Parties.ElementAt(0).FirstName.Should().Be("Koly");
            result.Parties.ElementAt(0).LastName.Should().Be("Ivanov");
            result.Parties.ElementAt(0).City.Should().Be("Vinnitsa");
            result.Parties.ElementAt(0).Company.Should().Be("Sitecore");
            result.Parties.ElementAt(0).Country.Should().Be("US");
            result.Parties.ElementAt(0).Email.Should().Be("*****@*****.**");
            result.Parties.ElementAt(0).PhoneNumber.Should().Be("043298765");
            result.Parties.ElementAt(0).ZipPostalCode.Should().Be("21000");

            result.Parties.ElementAt(1).Address1.Should().Be("test address 1");
            result.Parties.ElementAt(1).Address2.Should().Be("test address 2");
            result.Parties.ElementAt(1).FirstName.Should().Be("Ivan");
            result.Parties.ElementAt(1).LastName.Should().Be("Petrovich");
        }