Beispiel #1
0
        public int Save(ref AddressViewModel address, string memberId, string locale)
        {
            var shippingProvider = ShippingProvider.GetShippingProvider(locale.Substring(3));

            if (shippingProvider != null)
            {
                //check if the address exist
                var addressToSave = ModelConverter.ConvertAddressViewModelToShippingAddress(address);
                if (locale == "zh-CN")
                {
                    addressToSave.Address.Line3 = string.Empty;
                    addressToSave.Address.Line4 = string.Empty;
                }
                var existing = shippingProvider.GetShippingAddressFromAddressGuidOrId(address.CloudId, 0);
                if (null != existing)
                {
                    addressToSave.ID = existing.ID;
                }
                var shippingAddressId = shippingProvider.SaveShippingAddress(memberId, locale, addressToSave, false, true, false);
                if (shippingAddressId > 0)
                {
                    var savedAddress = shippingProvider.GetShippingAddressFromAddressGuidOrId(address.CloudId, 0);
                    address.LastUpdatedDate = savedAddress.Created;
                    address = ModelConverter.ConvertShippingAddressToAddressViewModel(savedAddress);
                    address.CustomShippingMethods = ModelConverter.GetCustomShippingMethods(memberId, savedAddress,
                                                                                            locale);
                }
                return(shippingAddressId);
            }
            return(0);
        }
Beispiel #2
0
        public List <CustomShippingMethodViewModel> GetShippingMethods(string memberId, Guid id, string locale)
        {
            var shippingProvider = ShippingProvider.GetShippingProvider(locale.Substring(3));

            if (shippingProvider != null)
            {
                var existing = shippingProvider.GetShippingAddressFromAddressGuidOrId(id, 0);
                if (existing != null)
                {
                    return(ModelConverter.GetCustomShippingMethods(memberId, existing, locale));
                }
            }
            return(null);
        }