Пример #1
0
        protected void btnTest_Click(object sender, EventArgs e)
        {
            this.SaveData();

            var testSettings = new FedExGlobalServiceSettings();

            testSettings.AccountNumber         = this.AccountNumberField.Text;
            testSettings.DefaultDropOffType    = (DropOffType)int.Parse(this.lstDropOffType.SelectedValue);
            testSettings.DefaultPackaging      = (PackageType)int.Parse(this.lstPackaging.SelectedValue);
            testSettings.DiagnosticsMode       = true;
            testSettings.ForceResidentialRates = this.chkResidential.Checked;
            testSettings.MeterNumber           = this.MeterNumberField.Text.Trim();
            testSettings.UseListRates          = this.chkListRates.Checked;
            testSettings.UserKey      = this.KeyField.Text.Trim();
            testSettings.UserPassword = this.PasswordField.Text.Trim();

            var logger = new MerchantTribe.Web.Logging.TextLogger();

            var testSvc = new MerchantTribe.Shipping.FedEx.FedExProvider(testSettings, logger);

            testSvc.Settings.ServiceCode = int.Parse(this.lstServicesTest.SelectedValue);
            testSvc.Settings.Packaging   = (int)testSettings.DefaultPackaging;

            var testShipment = new Shipment();

            testShipment.DestinationAddress = this.DestinationAddress.GetAsAddress();
            testShipment.SourceAddress      = this.SourceAddress.GetAsAddress();
            var testItem = new Shippable();

            testItem.BoxHeight     = decimal.Parse(this.TestHeight.Text);
            testItem.BoxLength     = decimal.Parse(this.TestLength.Text);
            testItem.BoxWidth      = decimal.Parse(this.TestWidth.Text);
            testItem.BoxLengthType = LengthType.Inches;
            testItem.BoxWeight     = decimal.Parse(this.TestWeight.Text);
            testItem.BoxWeightType = MerchantTribe.Shipping.WeightType.Pounds;
            testShipment.Items.Add(testItem);

            StringBuilder sb = new StringBuilder();

            sb.Append("Starting Rate Test at " + DateTime.Now + "<br />");
            var rates = testSvc.RateShipment(testShipment);

            foreach (var r in rates)
            {
                sb.Append("Rate Found: " + r.EstimatedCost.ToString("C") + " | " + r.DisplayName + " (" + r.ServiceCodes + ", " + r.ServiceId + ")<br />");
            }
            sb.Append("<br />");
            sb.Append("LOG:<br />");
            foreach (var m in logger.Messages)
            {
                sb.Append(m + "<br />");
            }
            sb.Append("Finished Rate Test at " + DateTime.Now);
            this.litTestOuput.Text = sb.ToString();
        }
Пример #2
0
        public static List <IShippingService> FindAll(Store currentStore)
        {
            var result = Service.FindAll();

            // FedEx
            var fedexGlobal = new FedExGlobalServiceSettings
            {
                UserKey                  = currentStore.Settings.ShippingFedExKey,
                UserPassword             = currentStore.Settings.ShippingFedExPassword,
                AccountNumber            = currentStore.Settings.ShippingFedExAccountNumber,
                MeterNumber              = currentStore.Settings.ShippingFedExMeterNumber,
                DefaultDropOffType       = (DropOffType)currentStore.Settings.ShippingFedExDropOffType,
                DefaultPackaging         = (PackageType)currentStore.Settings.ShippingFedExDefaultPackaging,
                DiagnosticsMode          = currentStore.Settings.ShippingFedExDiagnostics,
                ForceResidentialRates    = currentStore.Settings.ShippingFedExForceResidentialRates,
                UseDevelopmentServiceUrl = currentStore.Settings.ShippingFedExUseDevelopmentServiceUrl
            };

            result.Add(new FedExProvider(fedexGlobal, Factory.CreateEventLogger()));

            // Load US Postal
            var uspostalGlobal = new USPostalServiceGlobalSettings
            {
                UserId          = currentStore.Settings.ShippingUSPostalUserId,
                DiagnosticsMode = currentStore.Settings.ShippingUSPostalDiagnostics
            };

            result.Add(new DomesticProvider(uspostalGlobal, Factory.CreateEventLogger()));
            result.Add(new InternationalProvider(uspostalGlobal, Factory.CreateEventLogger()));

            // Load UPS
            var upsglobal = new UPSServiceGlobalSettings
            {
                AccountNumber    = currentStore.Settings.ShippingUpsAccountNumber,
                LicenseNumber    = currentStore.Settings.ShippingUpsLicense,
                Username         = currentStore.Settings.ShippingUpsUsername,
                Password         = currentStore.Settings.ShippingUpsPassword,
                DefaultPackaging = (PackagingType)currentStore.Settings.ShippingUpsDefaultPackaging,
                DiagnosticsMode  = currentStore.Settings.ShippingUPSDiagnostics,
                ForceResidential = currentStore.Settings.ShippingUpsForceResidential,
                IgnoreDimensions = currentStore.Settings.ShippingUpsSkipDimensions,
                PickUpType       = (PickupType)currentStore.Settings.ShippingUpsPickupType
            };

            result.Add(new UPSService(upsglobal, Factory.CreateEventLogger()));

            return(result);
        }
Пример #3
0
        public static List <IShippingService> FindAll(Accounts.Store currentStore)
        {
            List <IShippingService> result = new List <IShippingService>();

            result = Service.FindAll();

            //result.Add(new MerchantTribe.Shipping.Fedex.FedExProvider());
            //FedEx
            MerchantTribe.Shipping.FedEx.FedExGlobalServiceSettings fedexGlobal = new FedExGlobalServiceSettings();
            fedexGlobal.UserKey               = currentStore.Settings.ShippingFedExKey;
            fedexGlobal.UserPassword          = currentStore.Settings.ShippingFedExPassword;
            fedexGlobal.AccountNumber         = currentStore.Settings.ShippingFedExAccountNumber;
            fedexGlobal.MeterNumber           = currentStore.Settings.ShippingFedExMeterNumber;
            fedexGlobal.DefaultDropOffType    = (MerchantTribe.Shipping.FedEx.DropOffType)currentStore.Settings.ShippingFedExDropOffType;
            fedexGlobal.DefaultPackaging      = (MerchantTribe.Shipping.FedEx.PackageType)currentStore.Settings.ShippingFedExDefaultPackaging;
            fedexGlobal.DiagnosticsMode       = currentStore.Settings.ShippingFedExDiagnostics;
            fedexGlobal.ForceResidentialRates = currentStore.Settings.ShippingFedExForceResidentialRates;
            fedexGlobal.UseListRates          = currentStore.Settings.ShippingFedExUseListRates;
            result.Add(new MerchantTribe.Shipping.FedEx.FedExProvider(fedexGlobal, new EventLog()));

            // Load US Postal
            MerchantTribe.Shipping.USPostal.USPostalServiceGlobalSettings uspostalGlobal = new MerchantTribe.Shipping.USPostal.USPostalServiceGlobalSettings();
            uspostalGlobal.DiagnosticsMode = currentStore.Settings.ShippingUSPostalDiagnostics;
            result.Add(new MerchantTribe.Shipping.USPostal.DomesticProvider(uspostalGlobal, new EventLog()));
            result.Add(new MerchantTribe.Shipping.USPostal.InternationalProvider(uspostalGlobal, new EventLog()));

            // Load UPS
            MerchantTribe.Shipping.Ups.UPSServiceGlobalSettings upsglobal = new MerchantTribe.Shipping.Ups.UPSServiceGlobalSettings();
            upsglobal.AccountNumber    = currentStore.Settings.ShippingUpsAccountNumber;
            upsglobal.LicenseNumber    = currentStore.Settings.ShippingUpsLicense;
            upsglobal.Username         = currentStore.Settings.ShippingUpsUsername;
            upsglobal.Password         = currentStore.Settings.ShippingUpsPassword;
            upsglobal.DefaultPackaging = (MerchantTribe.Shipping.Ups.PackagingType)currentStore.Settings.ShippingUpsDefaultPackaging;
            upsglobal.DiagnosticsMode  = currentStore.Settings.ShippingUPSDiagnostics;
            upsglobal.ForceResidential = currentStore.Settings.ShippingUpsForceResidential;
            upsglobal.IgnoreDimensions = currentStore.Settings.ShippingUpsSkipDimensions;
            upsglobal.PickUpType       = (MerchantTribe.Shipping.Ups.PickupType)currentStore.Settings.ShippingUpsPickupType;
            result.Add(new MerchantTribe.Shipping.Ups.UPSService(upsglobal, new EventLog()));

            return(result);
        }
Пример #4
0
        protected void btnTest_Click(object sender, EventArgs e)
        {
            SaveData();

            var testSettings = new FedExGlobalServiceSettings
            {
                AccountNumber         = AccountNumberField.Text,
                DefaultDropOffType    = (DropOffType)int.Parse(lstDropOffType.SelectedValue),
                DefaultPackaging      = (PackageType)int.Parse(lstPackaging.SelectedValue),
                DiagnosticsMode       = true,
                ForceResidentialRates = chkResidential.Checked,
                MeterNumber           = MeterNumberField.Text.Trim(),
                UserKey                  = KeyField.Text.Trim(),
                UserPassword             = PasswordField.Text.Trim(),
                UseDevelopmentServiceUrl = chkDevelopmentUrl.Checked
            };

            var logger = new TextLogger();

            var testSvc = new FedExProvider(testSettings, logger)
            {
                Settings =
                {
                    ServiceCode = int.Parse(lstServicesTest.SelectedValue),
                    Packaging   = (int)testSettings.DefaultPackaging
                }
            };

            var testShipment = new Shipment
            {
                DestinationAddress = DestinationAddress.GetAsAddress(),
                SourceAddress      = SourceAddress.GetAsAddress()
            };

            var testItem = new Shippable
            {
                BoxHeight     = decimal.Parse(TestHeight.Text),
                BoxLength     = decimal.Parse(TestLength.Text),
                BoxWidth      = decimal.Parse(TestWidth.Text),
                BoxLengthType = LengthType.Inches,
                BoxWeight     = decimal.Parse(TestWeight.Text),
                BoxWeightType = WeightType.Pounds
            };

            testShipment.Items.Add(testItem);

            var sb = new StringBuilder();

            sb.AppendFormat(Localization.GetString("StartingTest"), DateTime.Now);
            sb.Append("<br />");

            var rates = testSvc.RateShipment(testShipment);

            foreach (var r in rates)
            {
                sb.AppendFormat(Localization.GetString("RateFound"), r.EstimatedCost.ToString("C"), r.DisplayName,
                                r.ServiceCodes, r.ServiceId);
                sb.Append("<br />");
            }
            sb.Append("<br />");
            sb.Append(Localization.GetString("Log"));
            sb.Append(":<br />");
            foreach (var m in logger.Messages)
            {
                sb.Append(m + "<br />");
            }
            sb.AppendFormat(Localization.GetString("FinishedTest"), DateTime.Now);

            litTestOuput.Text = sb.ToString();
        }
Пример #5
0
        public static List <IShippingService> FindAll(Store currentStore)
        {
            var result = Service.FindAll();

            // FedEx
            var fedexGlobal = new FedExGlobalServiceSettings
            {
                UserKey                  = currentStore.Settings.ShippingFedExKey,
                UserPassword             = currentStore.Settings.ShippingFedExPassword,
                AccountNumber            = currentStore.Settings.ShippingFedExAccountNumber,
                MeterNumber              = currentStore.Settings.ShippingFedExMeterNumber,
                DefaultDropOffType       = (DropOffType)currentStore.Settings.ShippingFedExDropOffType,
                DefaultPackaging         = (PackageType)currentStore.Settings.ShippingFedExDefaultPackaging,
                DiagnosticsMode          = currentStore.Settings.ShippingFedExDiagnostics,
                ForceResidentialRates    = currentStore.Settings.ShippingFedExForceResidentialRates,
                UseDevelopmentServiceUrl = currentStore.Settings.ShippingFedExUseDevelopmentServiceUrl
            };

            result.Add(new FedExProvider(fedexGlobal, Factory.CreateEventLogger()));

            // Load US Postal
            var uspostalGlobal = new USPostalServiceGlobalSettings
            {
                UserId          = currentStore.Settings.ShippingUSPostalUserId,
                DiagnosticsMode = currentStore.Settings.ShippingUSPostalDiagnostics
            };

            result.Add(new DomesticProvider(uspostalGlobal, Factory.CreateEventLogger()));
            result.Add(new InternationalProvider(uspostalGlobal, Factory.CreateEventLogger()));

            // Load UPS
            var upsglobal = new UPSServiceGlobalSettings
            {
                AccountNumber    = currentStore.Settings.ShippingUpsAccountNumber,
                LicenseNumber    = currentStore.Settings.ShippingUpsLicense,
                Username         = currentStore.Settings.ShippingUpsUsername,
                Password         = currentStore.Settings.ShippingUpsPassword,
                DefaultPackaging = (PackagingType)currentStore.Settings.ShippingUpsDefaultPackaging,
                DiagnosticsMode  = currentStore.Settings.ShippingUPSDiagnostics,
                ForceResidential = currentStore.Settings.ShippingUpsForceResidential,
                IgnoreDimensions = currentStore.Settings.ShippingUpsSkipDimensions,
                PickUpType       = (PickupType)currentStore.Settings.ShippingUpsPickupType
            };

            result.Add(new UPSService(upsglobal, Factory.CreateEventLogger()));


            // Load UPS Freight
            var upsFreightGlobal = new UPSFreightServiceGlobalSettings
            {
                AccountNumber     = currentStore.Settings.ShippingUpsAccountNumber,
                LicenseNumber     = currentStore.Settings.ShippingUpsLicense,
                Username          = currentStore.Settings.ShippingUpsUsername,
                Password          = currentStore.Settings.ShippingUpsPassword,
                DefaultPackaging  = (Hotcakes.Shipping.UpsFreight.PackingTypes)currentStore.Settings.ShippingUpsFreightDefaultPackaging,
                DiagnosticsMode   = currentStore.Settings.ShippingUPSFreightDiagnostics,
                ForceResidential  = currentStore.Settings.ShippingUpsFreightForceResidential,
                IgnoreDimensions  = currentStore.Settings.ShippingUpsFreightSkipDimensions,
                BillingOption     = (Hotcakes.Shipping.UpsFreight.BillingOption)currentStore.Settings.ShippingUpsFreightBillingOption,
                HandleOneUnitType = (currentStore.Settings.ShippingUpsFreightHandleOneUnitType != string.Empty ? (HandlineOneUnitType)Enum.Parse(typeof(HandlineOneUnitType), currentStore.Settings.ShippingUpsFreightHandleOneUnitType) : HandlineOneUnitType.CBY),
                FreightClass      = currentStore.Settings.ShippingUpsFreightFreightClass
            };

            result.Add(new UPSFreightService(upsFreightGlobal, Factory.CreateEventLogger()));
            return(result);
        }