コード例 #1
0
        private void UpdateShippingAddressesForAnonymous(MultiShipmentViewModel viewModel)
        {
            foreach (var item in viewModel.CartItems)
            {
                var anonymousShippingAddress = new AddressModel
                {
                    AddressId = Guid.NewGuid().ToString(),
                    Name = Guid.NewGuid().ToString(),
                    CountryCode = "USA"
                };

                item.AddressId = anonymousShippingAddress.AddressId;
                _addressBookService.LoadCountriesAndRegionsForAddress(anonymousShippingAddress);
                viewModel.AvailableAddresses.Add(anonymousShippingAddress);
            }
        }
コード例 #2
0
        public virtual MultiShipmentViewModel CreateMultiShipmentViewModel(ICart cart, bool isAuthenticated)
        {
            var viewModel = new MultiShipmentViewModel
            {
                StartPage = _contentLoader.Get<StartPage>(ContentReference.StartPage),
                AvailableAddresses = GetAvailableShippingAddresses(),
                CartItems = cart != null ? FlattenCartItems(_shipmentViewModelFactory.CreateShipmentsViewModel(cart).SelectMany(x => x.CartItems)) : new CartItemViewModel[0],
                ReferrerUrl = GetReferrerUrl()
            };

            if (!isAuthenticated)
            {
                UpdateShippingAddressesForAnonymous(viewModel);
            }

            return viewModel;
        }