public override List <DeliveryOption> GetDeliveryOptionsListForShipping(string Country, string locale, MyHerbalife3.Ordering.ServiceProvider.ShippingSvc.ShippingAddress_V01 address) { if (locale.Equals("en-MX")) { base.GetDeliveryOptionsListForShipping(Country, locale, address); } List <DeliveryOption> deliveryOptions = new List <DeliveryOption>(); var proxy = ServiceClientProvider.GetMexicoShippingServiceProxy(); //Look if there is a postal code provided: if (!string.IsNullOrEmpty(address.Address.PostalCode)) { var shippingAlternativesResponse = proxy.GetShippingAlternativesForPostalCode(new ServiceProvider.ShippingMexicoSvc.GetShippingAlternativesForPostalCodeRequest(new ShippingAlternativesForPostalCodeRequest_V01() { PostalCode = address.Address.PostalCode })).GetShippingAlternativesForPostalCodeResult as MyHerbalife3.Ordering.ServiceProvider.ShippingMexicoSvc.ShippingAlternativesResponse_V01; if (shippingAlternativesResponse != null && shippingAlternativesResponse.DeliveryAlternatives != null) { deliveryOptions.AddRange(from so in shippingAlternativesResponse.DeliveryAlternatives where !so.ShippingSource.Status.ToUpper().Equals("NOGDO") && !so.ShippingSource.Status.ToUpper().Equals("NODISPONIBLE") select new DeliveryOption(ObjectMappingHelper.Instance.GetToShipping(so))); } } return(deliveryOptions); }
public ShippingAddress_V02(ShippingAddress_V01 srcAddress) { this.ID = srcAddress.ID; this.Recipient = srcAddress.Recipient; this.Attention = srcAddress.Attention; this.Address = new Address_V01(); this.Address.City = srcAddress.Address.City; this.Address.Country = srcAddress.Address.Country; this.Address.CountyDistrict = srcAddress.Address.CountyDistrict; this.Address.Line1 = srcAddress.Address.Line1; this.Address.Line2 = srcAddress.Address.Line2; this.Address.Line3 = srcAddress.Address.Line3; this.Address.Line4 = srcAddress.Address.Line4; this.Address.PostalCode = srcAddress.Address.PostalCode; this.Address.CountyDistrict = srcAddress.Address.CountyDistrict; this.Address.StateProvinceTerritory = srcAddress.Address.StateProvinceTerritory; this.AreaCode = AltAreaCode = AltPhone = string.Empty; this.Phone = srcAddress.Phone; this.IsPrimary = srcAddress.IsPrimary; this.Alias = srcAddress.Alias; this.Created = srcAddress.Created; }
public override List <DeliveryOption> GetDeliveryOptions(DeliveryOptionType type, MyHerbalife3.Ordering.ServiceProvider.ShippingSvc.ShippingAddress_V01 address) { var locale = Thread.CurrentThread.CurrentCulture.Name; if (locale.Equals("en-MX")) { var mexicoDeliveryOptions = base.GetDeliveryOptions(type, address); if (HLConfigManager.Configurations.PickupOrDeliveryConfiguration.HasSpecialEventWareHouse) { RemoveUnauthorizedDeliveryOptions(mexicoDeliveryOptions, locale); } return(mexicoDeliveryOptions); } List <DeliveryOption> deliveryOptions = new List <DeliveryOption>(); var proxy = ServiceClientProvider.GetMexicoShippingServiceProxy(); //Look if there is a postal code provided: if (type == DeliveryOptionType.Pickup) { PickupAlternativesResponse_V01 pickupAlternativesResponse = null; if (!string.IsNullOrEmpty(address.Address.PostalCode)) { pickupAlternativesResponse = proxy.GetPickupAlternativesForPostalCode(new GetPickupAlternativesForPostalCodeRequest(new PickupAlternativesForPostalCodeRequest_V01() { PostalCode = address.Address.PostalCode })).GetPickupAlternativesForPostalCodeResult as PickupAlternativesResponse_V01; } else { pickupAlternativesResponse = proxy.GetPickupAlternativesForColony(new GetPickupAlternativesForColonyRequest(new PickupAlternativesForColonyRequest_V01() { Colony = address.Address.Line3, Municipality = address.Address.City, State = address.Address.StateProvinceTerritory })).GetPickupAlternativesForColonyResult as PickupAlternativesResponse_V01; } if (pickupAlternativesResponse != null && pickupAlternativesResponse.PickupAlternatives != null) { deliveryOptions.AddRange( from po in pickupAlternativesResponse.PickupAlternatives select new DeliveryOption(ObjectMappingHelper.Instance.GetToShipping(po))); } } else { if (!string.IsNullOrEmpty(address.Address.PostalCode)) { var shippingAlternativesResponse = proxy.GetShippingAlternativesForPostalCode(new ServiceProvider.ShippingMexicoSvc.GetShippingAlternativesForPostalCodeRequest(new ShippingAlternativesForPostalCodeRequest_V01() { PostalCode = address.Address.PostalCode })).GetShippingAlternativesForPostalCodeResult as MyHerbalife3.Ordering.ServiceProvider.ShippingMexicoSvc.ShippingAlternativesResponse_V01; if (shippingAlternativesResponse != null && shippingAlternativesResponse.DeliveryAlternatives != null) { deliveryOptions.AddRange(from so in shippingAlternativesResponse.DeliveryAlternatives where !so.ShippingSource.Status.ToUpper().Equals("NOGDO") && !so.ShippingSource.Status.ToUpper().Equals("NODISPONIBLE") select new DeliveryOption(ObjectMappingHelper.Instance.GetToShipping(so))); } } } return(deliveryOptions); }
public override List <DeliveryOption> GetDeliveryOptions(DeliveryOptionType type, MyHerbalife3.Ordering.ServiceProvider.ShippingSvc.ShippingAddress_V01 address) { if (HLConfigManager.Configurations.PickupOrDeliveryConfiguration.UseXHLTables) { List <DeliveryOption> deliveryOptions = new List <DeliveryOption>(); var proxy = ServiceClientProvider.GetMexicoShippingServiceProxy(); if (type == DeliveryOptionType.Pickup) { var pickupAlternativesResponse = new ServiceProvider.ShippingMexicoSvc.PickupAlternativesResponse_V01(); if (address == null || address.Address == null) { // Get Herbalife Centers - FreightCode: PU pickupAlternativesResponse = proxy.GetPickupAlternativesByFreightCode(new ServiceProvider.ShippingMexicoSvc.GetPickupAlternativesByFreightCodeRequest(new ServiceProvider.ShippingMexicoSvc.PickupAlternativesByFreightCodeRequest_V01() { Country = "AR", FreightCode = "PU" })).GetPickupAlternativesByFreightCodeResult as ServiceProvider.ShippingMexicoSvc.PickupAlternativesResponse_V01; } else if (!string.IsNullOrEmpty(address.Address.PostalCode)) { pickupAlternativesResponse = proxy.GetPickupAlternativesForPostalCode(new ServiceProvider.ShippingMexicoSvc.GetPickupAlternativesForPostalCodeRequest(new ServiceProvider.ShippingMexicoSvc.PickupAlternativesForPostalCodeRequest_V01() { Country = "AR", PostalCode = address.Address.PostalCode })).GetPickupAlternativesForPostalCodeResult as ServiceProvider.ShippingMexicoSvc.PickupAlternativesResponse_V01; } else { pickupAlternativesResponse = proxy.GetPickupAlternativesForColony(new ServiceProvider.ShippingMexicoSvc.GetPickupAlternativesForColonyRequest(new ServiceProvider.ShippingMexicoSvc.PickupAlternativesForColonyRequest_V01() { Country = "AR", Colony = address.Address.Line3, Municipality = address.Address.City, State = address.Address.StateProvinceTerritory })).GetPickupAlternativesForColonyResult as ServiceProvider.ShippingMexicoSvc.PickupAlternativesResponse_V01; } if (pickupAlternativesResponse != null && pickupAlternativesResponse.PickupAlternatives != null) { deliveryOptions.AddRange( from po in pickupAlternativesResponse.PickupAlternatives select new DeliveryOption(ObjectMappingHelper.Instance.GetToShipping(po))); } } else { if (!string.IsNullOrEmpty(address.Address.PostalCode)) { var shippingAlternativesResponse = proxy.GetShippingAlternativesForPostalCode(new ServiceProvider.ShippingMexicoSvc.GetShippingAlternativesForPostalCodeRequest(new ServiceProvider.ShippingMexicoSvc.ShippingAlternativesForPostalCodeRequest_V01() { Country = "AR", PostalCode = address.Address.PostalCode })).GetShippingAlternativesForPostalCodeResult as MyHerbalife3.Ordering.ServiceProvider.ShippingMexicoSvc.ShippingAlternativesResponse_V01; if (shippingAlternativesResponse != null && shippingAlternativesResponse.DeliveryAlternatives != null) { deliveryOptions.AddRange(from so in shippingAlternativesResponse.DeliveryAlternatives where !so.ShippingSource.Status.ToUpper().Equals("NOGDO") && !so.ShippingSource.Status.ToUpper().Equals("NODISPONIBLE") select new DeliveryOption(ObjectMappingHelper.Instance.GetToShipping(so))); } } } deliveryOptions.ForEach(o => o.Address = validateAdressValues(o.Address)); return(deliveryOptions); } else { return(base.GetDeliveryOptions(type, address)); } }