public ActionResult BookTicket(TicketBookingViewModel ticketBookingViewModel) // Action to store booking details in DB { ticketBookingViewModel.TrainId = (int)TempData["T_Id"]; ticketBookingViewModel.UserId = Convert.ToInt32(Session["UserId"]); ticketBookingViewModel.ClassId = (int)TempData["C_Id"]; ticketBookingViewModel.BookingTime = DateTime.Now; ticketBookingViewModel.JourneyDate = (DateTime)TempData["Doj"]; int trainNo = (int)TempData["T_No"]; string className = TempData["C_Name"].ToString(); if (ModelState.IsValid) { TicketBooking ticketBooking = AutoMapper.Mapper.Map <TicketBookingViewModel, TicketBooking>(ticketBookingViewModel); if (!ticketBookingBL.AddBookingDetails(ticketBooking)) { return(RedirectToAction("BookTicket")); } TempData["BookingId"] = ticketBooking.BookingId; //TempData["Doj"] = ticketBooking.JourneyDate; TempData["NoOfSeats"] = (int)TempData["Seat"]; //int seat = (int)TempData["Seat"]; TempData["TrainNo"] = trainNo; TempData["ClassName"] = className; //return RedirectToAction("AddPassenger", "TicketBooking", new { @trainNo = trainNo, @className = className}); return(RedirectToAction("AddPassenger", "TicketBooking")); } //TempData["TrainId"] = (int)TempData["T_Id"]; //TempData["ClassId"] = (int)TempData["C_Id"]; return(RedirectToAction("BookTicket")); }
/// <summary> /// 显示关联成人订单号 /// </summary> /// <param name="tvm"></param> internal static void ShowRelationOrderNoWindow(TicketBookingViewModel tvm) { DispatcherHelper.UIDispatcher.Invoke(new Action(() => { var window = new RelationOrderNoWindow(); var vm = new RelationOrderNoViewModel(tvm); window.Owner = Application.Current.MainWindow; window.DataContext = vm; window.ShowDialog(); //if (call != null) // call(result); window.DataContext = null; })); }
/// <summary> /// 显示常用乘客信息窗体 /// </summary> /// <param name="tvm"></param> /// <param name="call"></param> internal static void ShowUsualPassengers(TicketBookingViewModel tvm, Action <bool?> call = null) { DispatcherHelper.UIDispatcher.Invoke(new Action(() => { var window = new UsualPassengersWindow(); var vm = new UsualPassengersViewModel(tvm); window.Owner = Application.Current.MainWindow; window.DataContext = vm; var result = window.ShowDialog(); if (call != null) { call(result); } window.DataContext = null; })); }
/// <summary> /// 显示机票预订窗口 /// </summary> /// <param name="flights"></param> /// <param name="call"></param> /// <param name="closeWindowMsg"></param> internal static void ShowTicketBooking(FlightInfoModel[] flights, Site site, Action <bool?> call, string closeWindowMsg = null) { var window = new TicketBookingWindow { Owner = Application.Current.MainWindow }; var vm = new TicketBookingViewModel(flights, site); window.DataContext = vm; var result = window.ShowDialog(); if (call != null) { call(result); } window.DataContext = null; if (_backwindow != null) { _backwindow.Close(); } }