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); }
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); }
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."); } }