Esempio n. 1
0
        private static ServiceProvider.OrderSvc.ShippingInfo GetDistributorShippingInfo(ServiceProvider.OrderSvc.Address address, string warehouseCode,
                                                                                        InvoiceModel invoice,
                                                                                        string shippingMethodId)
        {
            var shipping = new ServiceProvider.OrderSvc.ShippingInfo_V01
            {
                FreightVariant   = string.Empty,
                ShippingMethodID = shippingMethodId,
                WarehouseCode    = warehouseCode,
                Address          = address,
                Recipient        = invoice.FirstName,
                Phone            = invoice.Phone
            };

            return(shipping);
        }
        public override void GetDistributorShippingInfoForHMS(MyHLShoppingCart shoppingCart, ServiceProvider.OrderSvc.ShippingInfo_V01 address)
        {
            if (shoppingCart != null)
            {
                if (APFDueProvider.hasOnlyAPFSku(shoppingCart.CartItems, shoppingCart.Locale))
                {
                    address.WarehouseCode    = HLConfigManager.Configurations.APFConfiguration.APFwarehouse;
                    address.ShippingMethodID = HLConfigManager.Configurations.APFConfiguration.APFFreightCode;
                }
                else
                {
                    shoppingCart.CheckShippingForNonStandAloneAPF();

                    SessionInfo sessionInfo = SessionInfo.GetSessionInfo(shoppingCart.DistributorID, shoppingCart.Locale);
                    if (sessionInfo.IsEventTicketMode && shoppingCart.DeliveryInfo != null)
                    {
                        shoppingCart.DeliveryInfo.WarehouseCode = HLConfigManager.Configurations.CheckoutConfiguration.EventTicketWarehouseCode;
                        shoppingCart.DeliveryInfo.FreightCode   = HLConfigManager.Configurations.CheckoutConfiguration.EventTicketFreightCode;

                        // Take address from DB
                        var deliveryOptions = base.GetDeliveryOptions(shoppingCart.Locale);
                        var addressETO      = deliveryOptions.Find(d =>
                                                                   d.Option == ServiceProvider.ShippingSvc.DeliveryOptionType.Shipping &&
                                                                   d.OrderCategory == ServiceProvider.ShippingSvc.OrderCategoryType.ETO);

                        if (addressETO != null)
                        {
                            shoppingCart.DeliveryInfo.Address.Address = addressETO.Address;
                        }

                        // Set MB's Name in the Recipient name
                        var loader      = new Core.DistributorProvider.DistributorLoader();
                        var distributor = loader.Load(shoppingCart.DistributorID, shoppingCart.CountryCode);

                        if (distributor != null && distributor.EnglishName != null)
                        {
                            shoppingCart.DeliveryInfo.Address.Recipient = string.Format("{0} {1}{2}",
                                                                                        distributor.EnglishName.First,
                                                                                        !string.IsNullOrEmpty(distributor.EnglishName.Middle) ? distributor.EnglishName.Middle + " " : string.Empty,
                                                                                        distributor.EnglishName.Last);
                        }
                    }
                }
            }
        }
 public override void GetDistributorShippingInfoForHMS(MyHLShoppingCart shoppingCart, ServiceProvider.OrderSvc.ShippingInfo_V01 address)
 {
     if (shoppingCart != null && shoppingCart.DeliveryInfo != null && shoppingCart.DeliveryInfo.Option == DeliveryOptionType.Shipping)
     {
         if (address != null && address.Address != null && shoppingCart.ShippingAddressID != 0)
         {
             address.Address.Line4 = shoppingCart.DeliveryInfo.Address.Recipient;
         }
     }
 }
Esempio n. 4
0
 public override void GetDistributorShippingInfoForHMS(MyHLShoppingCart shoppingCart, ServiceProvider.OrderSvc.ShippingInfo_V01 address)
 {
     if (shoppingCart != null)
     {
         if (shoppingCart.DeliveryInfo != null)
         {
             if (shoppingCart.DeliveryInfo.Option == DeliveryOptionType.Pickup)
             {
                 if (shoppingCart.ShippingAddressID != 0)
                 {
                     var shippingAddresses = GetShippingAddresses(shoppingCart.DistributorID, shoppingCart.Locale);
                     var deliveryOption    = shippingAddresses.Find(s => s.ID == shoppingCart.ShippingAddressID);
                     if (deliveryOption != null)
                     {
                         address.Address = new ServiceProvider.OrderSvc.Address_V01
                         {
                             Country = "BR",
                             Line1   = this.getLine1(deliveryOption.Address),
                             Line2   = deliveryOption.Address.Line2,
                             Line3   = deliveryOption.Address.Line3,
                             Line4   = deliveryOption.Address.Line4,
                             StateProvinceTerritory = deliveryOption.Address.StateProvinceTerritory,
                             PostalCode             = deliveryOption.Address.PostalCode,
                             CountyDistrict         = deliveryOption.Address.CountyDistrict,
                             City = deliveryOption.Address.City
                         };
                     }
                 }
             }
         }
     }
 }