Exemple #1
0
 private void MultiPackageWindowInsertData(FedExMultiPieceShipmentMap packageMap, ShipmentMapper shipment)
 {
     packageMap.PrintLabelsAfterCompleteShipment.SetValueToControl("true");
     foreach (var package in shipment.Packages)
     {
         packageMap.MapPackageData(package);
         packageMap.PackageAddButton.Click();
     }
     packageMap.PackageSaveAndCloseButton.Click();
     _messagesProvider.Log(InformationResources.INFO_FEDEX_FILL_PACKAGE_DATA);
 }
Exemple #2
0
        public object Get(ShipmentApplicaotinHelperType name, AutomationElement rootAutomationElement)
        {
            if (ApplicationMapObjects.ContainsKey(name) && ApplicationMapObjects[name].GetNativeWindowHandle() == rootAutomationElement.Current.NativeWindowHandle)
            {
                return(ApplicationMapObjects[name]);
            }
            object applicationHelper;

            switch (name)
            {
            case ShipmentApplicaotinHelperType.FedexShipManagerMap:
                applicationHelper = new FedexShipManagerMap(new ShipmentAutomationUIControlHelper(), rootAutomationElement, _messagesProvider);
                Set(ShipmentApplicaotinHelperType.FedexShipManagerMap, (ShipmentAutomationMapBase)applicationHelper);
                break;

            case ShipmentApplicaotinHelperType.FedExMultiPieceShipmentMap:
                applicationHelper = new FedExMultiPieceShipmentMap(new ShipmentAutomationUIControlHelper(), rootAutomationElement, _messagesProvider);
                Set(ShipmentApplicaotinHelperType.FedExMultiPieceShipmentMap, (ShipmentAutomationMapBase)applicationHelper);
                break;

            case ShipmentApplicaotinHelperType.UpsManagerMap:
                applicationHelper = new UpsManagerMap(new ShipmentWinApiControlHelper(), rootAutomationElement, _messagesProvider);
                Set(ShipmentApplicaotinHelperType.UpsManagerMap, (ShipmentAutomationMapBase)applicationHelper);
                break;

            case ShipmentApplicaotinHelperType.FedExShipAlertTabMap:
                applicationHelper = new FedExShipAlertTabMap(new ShipmentAutomationUIControlHelper(), rootAutomationElement, _messagesProvider);
                Set(ShipmentApplicaotinHelperType.FedExShipAlertTabMap, (ShipmentAutomationMapBase)applicationHelper);
                break;

            case ShipmentApplicaotinHelperType.FedExShipManagerShellMap:
                applicationHelper = new FedExShipMahagerShellMap(new ShipmentAutomationUIControlHelper(), rootAutomationElement, _messagesProvider);
                Set(ShipmentApplicaotinHelperType.FedExShipManagerShellMap, (ShipmentAutomationMapBase)applicationHelper);
                break;

            case ShipmentApplicaotinHelperType.UpsManagerShellMap:
                applicationHelper = new UpsManagerShellMap(new ShipmentWinApiControlHelper(), rootAutomationElement, _messagesProvider);
                Set(ShipmentApplicaotinHelperType.UpsManagerShellMap, (ShipmentAutomationMapBase)applicationHelper);
                break;

            default:
                throw new ArgumentOutOfRangeException(nameof(name), name, string.Format(InformationResources.ERROR_CREATE_APPLICATION_MAP_CACHE, nameof(name)));
            }
            return(applicationHelper);
        }
Exemple #3
0
        private void MultiPackageWindowProcess(ShipmentMapper shipment)
        {
            StopTimer();
            var delayCount = 20;

            while (delayCount > 0 && _packageMainWindowDialog == null)
            {
                MultiPackageWindowWait();
                MultiPackageWindowFindMainDialog(_mainWindow);
                delayCount--;
                Thread.Sleep(100);
            }

            if (_packageMainWindowDialog != null)
            {
                var packageMap = new FedExMultiPieceShipmentMap(new ShipmentAutomationUIControlHelper(), _packageMainWindowDialog, _messagesProvider);
                packageMap.Map();
                MultiPackageWindowInsertData(packageMap, shipment);
            }
            else
            {
                _messagesProvider.Warn("Cannot find source for input multipackage data.");
            }
        }