コード例 #1
0
/*
 *      private bool LookupProvince(string zipCode)
 *      {
 *          bool lookedUp = false;
 *          dnlState.Items.Clear();
 *          if (!string.IsNullOrEmpty(zipCode))
 *          {
 *              IShippingProvider provider = ShippingProvider.GetShippingProvider(
 *                      ProductsBase.CountryCode);
 *              if (provider != null)
 *              {
 *                  var lookupResults = provider.LookupCitiesByZip(ProductsBase.CountryCode, zipCode);
 *                  if (lookupResults != null && lookupResults.Count > 0)
 *                  {
 *                      foreach (var province in lookupResults)
 *                      {
 *                          string[] state = province.State.Split('-');
 *                          dnlState.Items.Add(new ListItem(state[0], state[1]));
 *                      }
 *
 *                      if (lookupResults.Count > 1)
 *                      {
 *                          dnlState.Items.Insert(0, new ListItem(base.GetLocalResourceObject("Select") as string, "0"));
 *                      }
 *                      dnlState.SelectedIndex = 0;
 *                      lookedUp = true;
 *                  }
 *              }
 *          }
 *          return lookedUp;
 *      }
 */
        /*     protected void txtPostCode_TextChanged(object sender, EventArgs e)
         *   {
         *       dnlState.Items.Clear();
         *       if (!string.IsNullOrEmpty(dnlPostCode.SelectedItem.Text))
         *       {
         *           LookupProvince(txtPostCode.Text);
         *       }
         *   }*/

        private bool LookupStates()
        {
            bool lookedUp = false;

            dnlState.Items.Clear();
            IShippingProvider provider = ShippingProvider.GetShippingProvider(ProductsBase.CountryCode);

            if (provider != null)
            {
                var lookupResults = provider.GetStatesForCountry(ProductsBase.CountryCode);
                if (lookupResults != null && lookupResults.Count > 0)
                {
                    foreach (var province in lookupResults)
                    {
                        string[] state = province.Split('-');
                        dnlState.Items.Add(new ListItem(state[0], state[1]));

                        //dnlState.Items.Add(new ListItem(province));
                    }
                    dnlState.Items.Insert(0, new ListItem(base.GetLocalResourceObject("Select") as string, string.Empty));
                    dnlState.SelectedIndex = 0;
                    lookedUp = true;
                }
            }
            return(lookedUp);
        }
コード例 #2
0
        /// <summary>
        ///     Get the states from provider.
        /// </summary>
        /// <returns>Success flag.</returns>
        private bool LookupStates()
        {
            bool lookedUp = false;

            dnlState.Items.Clear();
            IShippingProvider provider =
                ShippingProvider.GetShippingProvider(ProductsBase.CountryCode);

            if (provider != null)
            {
                var lookupResults = provider.GetStatesForCountry(ProductsBase.CountryCode);
                if (lookupResults != null && lookupResults.Count > 0)
                {
                    var items = (from s in lookupResults select new ListItem {
                        Text = s, Value = s
                    }).ToArray();
                    dnlState.Items.AddRange(items);
                    dnlState.Items.Insert(
                        0, new ListItem(GetLocalResourceObject("Select") as string, string.Empty));
                    dnlState.SelectedIndex = 0;
                    lookedUp = true;
                }
            }
            return(lookedUp);
        }
コード例 #3
0
        private bool LookupProvince()
        {
            bool lookedUp = false;

            dnlProvince.Items.Clear();
            dnlSuburb.Items.Clear();
            dnlSuburb.Text = string.Empty;
            dnlPostalCode.Items.Clear();

            IShippingProvider provider = ShippingProvider.GetShippingProvider(ProductsBase.CountryCode);

            if (provider != null)
            {
                var lookupResults = provider.GetStatesForCountry(ProductsBase.CountryCode);
                if (lookupResults != null && lookupResults.Any())
                {
                    foreach (var province in lookupResults)
                    {
                        dnlProvince.Items.Add(new ListItem(province));
                    }
                    dnlProvince.Items.Insert(0, new ListItem(GetLocalResourceObject("Select") as string, string.Empty));
                    dnlProvince.SelectedIndex = 0;
                    lookedUp = true;
                }
            }
            return(lookedUp);
        }
コード例 #4
0
        /// <summary>
        ///     Gets the cities from service.
        /// </summary>
        /// <returns>Success flag.</returns>
        private bool LookupCities()
        {
            bool lookedUp = false;

            dnlCity.Items.Clear();
            dnlLocality.Items.Clear();
            dnlStreetType.Items.Clear();
            dnlStreet.Items.Clear();
            dnlStreet.Text = string.Empty;
            dnlPostCode.Items.Clear();
            IShippingProvider provider =
                ShippingProvider.GetShippingProvider(ProductsBase.CountryCode);

            if (provider != null)
            {
                // We use the state field from service to store the city
                var lookupResults = provider.GetStatesForCountry(ProductsBase.CountryCode);
                if (lookupResults != null && lookupResults.Count > 0)
                {
                    foreach (var province in lookupResults)
                    {
                        dnlCity.Items.Add(new ListItem(province));
                    }
                    dnlCity.Items.Insert(0, new ListItem(base.GetLocalResourceObject("Select") as string, string.Empty));
                    dnlCity.SelectedIndex = 0;
                    lookedUp = true;
                }
            }
            return(lookedUp);
        }
コード例 #5
0
        private bool LookupStates()
        {
            bool lookedUp = false;

            dnlCity.Items.Clear();
            dnlSuburb.Items.Clear();
            IShippingProvider provider =
                ShippingProvider.GetShippingProvider(ProductsBase.CountryCode);

            if (provider != null)
            {
                var lookupResults = provider.GetStatesForCountry(ProductsBase.CountryCode);
                if (lookupResults != null && lookupResults.Count > 0)
                {
                    //TR compatibility with old and new version of data.
                    lookupResults.Remove("-");
                    foreach (var city in lookupResults)
                    {
                        dnlCity.Items.Add(new ListItem(city));
                    }
                    dnlCity.Items.Insert(0, new ListItem(base.GetLocalResourceObject("Select") as string, string.Empty));
                    dnlCity.SelectedIndex = 0;
                    lookedUp = true;
                }
            }
            return(lookedUp);
        }
コード例 #6
0
        private void LookupStates()
        {
            dnlState.Items.Clear();
            //IShippingProvider provider = ShippingProvider.GetShippingProvider(ProductsBase.CountryCode);
            IShippingProvider provider = ShippingProvider.GetShippingProvider("KZ");

            if (provider != null)
            {
                //var lookupResults = provider.GetStatesForCountry(ProductsBase.CountryCode);
                var lookupResults = provider.GetStatesForCountry("KZ");
                if (lookupResults != null && lookupResults.Count > 0)
                {
                    foreach (var stae in lookupResults)
                    {
                        dnlState.Items.Add(new ListItem(stae, stae));
                    }
                    dnlState.Items.Insert(0, new ListItem(base.GetLocalResourceObject("Select") as string, string.Empty));
                    dnlState.SelectedIndex = 0;
                }
            }
        }
コード例 #7
0
        private bool LookupStates()
        {
            bool lookedUp = false;

            ddlState.Items.Clear();
            IShippingProvider provider = ShippingProvider.
                                         GetShippingProvider(_countryCode);

            if (provider != null)
            {
                List <string> lookupResults = provider.GetStatesForCountry(_countryCode);
                if (null != lookupResults && lookupResults.Count > 0)
                {
                    for (int i = 0; i < lookupResults.Count; i++)
                    {
                        ddlState.Items.Insert(i, new ListItem(lookupResults[i]));
                    }
                    ddlState.Items.Insert(0, new ListItem(base.GetLocalResourceObject("Select") as string, string.Empty));
                    ddlState.SelectedIndex = 0;
                    lookedUp = true;
                }
            }
            return(lookedUp);
        }
コード例 #8
0
        private void NewTaxationRules(Order_V01 order, string locale)
        {
            Message message = new Message();

            message.MessageType = "ContributorClass";
            Message addionalMsg = new Message();

            addionalMsg.MessageType = "AdditionalClass";
            string contributorClass = string.Empty;
            string additionalClass  = string.Empty;

            order.Messages = new MessageCollection();

            //Step 1
            //if DS is not AR COP then we're done!
            //Immaterial of Country of Processing we need to make DS flow thorugh step1 and step2,So commenting the return code.
            //if (DistributorProfileModel.ProcessingCountryCode != "AR")
            //{
            //    message.MessageValue = "F";
            //    order.Messages.Add(message);
            //    return;
            //}
            try
            {
                //continue with calc
                //step 1.2
                int legalProvince    = 0;
                int shippingProvince = 0;

                var legalAddress      = DistributorOrderingProfileProvider.GetAddress(ServiceProvider.OrderSvc.AddressType.PermanentLegal, order.DistributorID, Country);
                var locallegalAddress = DistributorOrderingProfileProvider.GetAddress(ServiceProvider.OrderSvc.AddressType.PermanentLegalLocal, order.DistributorID, Country);

                var shippingAddress = (order.Shipment as ShippingInfo_V01).Address;
                if (null != legalAddress)
                {
                    if (!Int32.TryParse(legalAddress.StateProvinceTerritory.Trim(), out legalProvince))
                    {
                        LoggerHelper.Error(
                            string.Format(
                                "AR Taxation Rules failed for Distributor {0}. legalAddress.StateProvinceTerritory value is invalid: {1}",
                                order.DistributorID, legalAddress.StateProvinceTerritory.Trim()));
                    }
                }
                if (null != shippingAddress)
                {
                    if (!Int32.TryParse(shippingAddress.StateProvinceTerritory.Trim(), out shippingProvince))
                    {
                        LoggerHelper.Error(
                            string.Format(
                                "AR Taxation Rules failed for Distributor {0}. shippingAddress.StateProvinceTerritory value is invalid: {1}",
                                order.DistributorID, shippingAddress.StateProvinceTerritory.Trim()));
                    }
                }

                //This Fix is only For iKiosk - We do not receive statecode.GDO UI sends statecode so GDO works.
                if (HLConfigManager.Platform == "iKiosk" && shippingProvince == 0)
                {
                    IShippingProvider provider = ShippingProvider.GetShippingProvider(shippingAddress.Country);
                    if (provider != null)
                    {
                        var lookupResults = provider.GetStatesForCountry(shippingAddress.Country);
                        if (lookupResults != null && lookupResults.Count > 0)
                        {
                            foreach (var province in lookupResults)
                            {
                                string[] state = province.Split('-');
                                if (state[0] == shippingAddress.StateProvinceTerritory.Trim())
                                {
                                    shippingProvince = Convert.ToInt32(state[1]);
                                    break;
                                }
                            }
                        }
                    }
                }



                List <TaxIdentification> tinList = DistributorOrderingProfileProvider.GetTinList(order.DistributorID, true);
                bool hasARTX = (tinList.Find(t => t.IDType.Key == "ARTX") != null);
                bool hasARVT = (tinList.Find(t => t.IDType.Key == "ARVT") != null);
                bool hasCUIT = (tinList.Find(t => t.IDType.Key == "CUIT") != null);
                bool hasARCM = (tinList.Find(t => t.IDType.Key == "ARCM") != null);
                bool hasARRS = (tinList.Find(t => t.IDType.Key == "ARRS") != null);
                bool hasARID = (tinList.Find(t => t.IDType.Key == "ARID") != null);
                bool ISAR    = DistributorProfileModel.ProcessingCountryCode == "AR";


                if (23 == shippingProvince) //TIERA DEL FUEGO
                {
                    if (null != tinList && null != order)
                    {
                        if (hasCUIT && hasARTX)
                        {
                            contributorClass = "Y";
                        }
                        if (hasARVT && hasCUIT)
                        {
                            contributorClass = "X";
                        }
                        if ((hasARID && !hasARTX && !hasARVT) || (!hasARID && !hasARTX && !hasARVT && !ISAR))
                        {
                            contributorClass = "Z";
                        }
                    }
                }
                else
                {
                    if (null != tinList && null != order)
                    {
                        //step 1.5
                        if (hasARTX && hasCUIT)
                        {
                            contributorClass = "M";
                        }
                        //step 1.7
                        else if (hasARVT && hasCUIT)
                        {
                            contributorClass = "I";
                        }

                        //step 1.8
                        else if (!hasARVT && !hasARTX && !hasCUIT)
                        {
                            contributorClass = "N";
                        }
                    }
                }

                //Step-2 New Implementation

                if (hasARCM)
                {
                    contributorClass += "C";
                }
                else
                {
                    if (hasARRS)
                    {
                        contributorClass += "S";
                    }
                }

                //Call Create Contributor Class String
                string concatentionClass = string.Empty;
                CreateContributorClass(hasARCM, hasARVT, hasARTX, hasARRS, shippingProvince, tinList, out additionalClass, out concatentionClass);
                contributorClass += concatentionClass;

                message.MessageValue = contributorClass;
                order.Messages.Add(message);
                addionalMsg.MessageValue = additionalClass;
                order.Messages.Add(addionalMsg);
            }
            catch (Exception ex)
            {
                LoggerHelper.Error(
                    string.Format("AR Taxation Rules failed for Distributor {0}. Exception details \r\n{1}",
                                  order.DistributorID, ex.Message));
            }
        }
コード例 #9
0
        private bool LookupStates()
        {
            bool lookedUp = false;

            dnlState.Items.Clear();
            var lookupResults = new List <string>();

            if (ProductsBase.CountryCode.Equals("CA"))
            {
                IShippingProvider providerCA = ShippingProvider.GetShippingProvider(
                    (Page as ProductsBase).CountryCode);
                if (providerCA != null)
                {
                    lookupResults = providerCA.GetStatesForCountry(ProductsBase.CountryCode);
                    if (lookupResults != null && lookupResults.Count > 0)
                    {
                        var items = (from s in lookupResults
                                     select new ListItem {
                            Text = s, Value = s.Substring(0, 2)
                        }).ToArray();
                        dnlState.Items.AddRange(items);
                        dnlState.Items.Insert(0,
                                              new ListItem(base.GetLocalResourceObject("Select") as string, string.Empty));
                        dnlState.SelectedIndex = 0;
                        lookedUp = true;
                    }
                }
            }
            else if (ProductsBase.CountryCode.Equals("PR"))
            {
                var provider_PR = new ShippingProvider_PR();
                lookupResults = provider_PR.GetStatesForCountry(ProductsBase.CountryCode);
                if (lookupResults != null && lookupResults.Count > 0)
                {
                    var items = (from s in lookupResults
                                 select new ListItem {
                        Text = s, Value = s.Substring(0, 2)
                    }).ToArray();
                    dnlState.Items.AddRange(items);
                    dnlState.SelectedIndex = 0;
                    txtState.Text          = items[0].ToString();
                    lookedUp = true;
                }
            }
            else
            {
                var providerUS = new ShippingProvider_US();
                lookupResults = providerUS.GetStatesForCountryToDisplay(ProductsBase.CountryCode);
                if (null != lookupResults && lookupResults.Count > 0)
                {
                    var items = (from s in lookupResults
                                 select new ListItem {
                        Text = s, Value = s.Substring(0, 2)
                    }).ToArray();
                    dnlState.Items.AddRange(items);
                    dnlState.Items.Insert(0, new ListItem(base.GetLocalResourceObject("Select") as string, string.Empty));
                    dnlState.SelectedIndex = 0;
                    lookedUp = true;
                }
            }

            return(lookedUp);
        }