private void ExecuteOpenTravelCommand(string pid) { ResponseAfterSalePassenger passenger = AfterSaleInfo.Passenger.FirstOrDefault(p => p.Id.ToString(CultureInfo.InvariantCulture) == pid); if (passenger != null && passenger.Status == EnumTfgPassengerStatus.ChangeTicketed) { LocalUIManager.ShowPrintTravel(null, null, _responseChangeOrder, passenger, 1, null, this, dialogResult => { if (dialogResult == null || !dialogResult.Value) { return; } Initialize(); }); } else { UIManager.ShowMessage("改签完成状态下才能打印行程单"); } }
internal static void ShowPrintTravel(OrderDetailDto order, PassengerDto passenger, ResponseChangeOrder rasorder = null, ResponseAfterSalePassenger raspassenger = null, int flag = 0, OrderInfoViewModel orderInfoViewModel = null, AfterSaleInfoViewModel afterSaleInfoViewModel = null, Action <bool?> call = null) { DispatcherHelper.UIDispatcher.Invoke(new Action(() => { var window = new PrintTravelWindow { Owner = Application.Current.MainWindow }; var vm = new PrintTravelViewModel { RspOrder = order, Passenger = passenger, RsAferSaleOrder = rasorder, RsAfterSalePassenger = raspassenger, RFlag = flag, OrderInfoViewModel = orderInfoViewModel, AfterSaleInfoViewModel = afterSaleInfoViewModel }; vm.Init(); window.DataContext = vm; var result = window.ShowDialog(); if (call != null) { call(result); } window.DataContext = null; })); }