public ActionResult EditTrainClass(int id) { TrainClassDetails trainClassDetails = trainClassBL.GetClass(id); //Editing Train Class Detail TrainClassDetailsViewModel trainClassDetailsViewModel = AutoMapper.Mapper.Map <TrainClassDetails, TrainClassDetailsViewModel>(trainClassDetails); return(View(trainClassDetailsViewModel)); }
public ActionResult EditTrainClass(TrainClassDetailsViewModel trainClassdetailsViewModel) { if (ModelState.IsValid) { TrainClassDetails trainClassDetails = AutoMapper.Mapper.Map <TrainClassDetailsViewModel, TrainClassDetails>(trainClassdetailsViewModel); trainClassBL.EditTrainClass(trainClassDetails); TempData["TrainId"] = trainClassDetails.TrainId; return(RedirectToAction("DisplayTrainCategories")); } return(View()); }
public ActionResult DisplayTrainCategories() { List <TrainClassDetails> trainClassList = trainClassBL.GetTrainClass(Convert.ToInt32(TempData["TrainId"])); List <TrainClassDetailsViewModel> trainClassDetailsViewModelList = new List <TrainClassDetailsViewModel>(); foreach (TrainClassDetails classes in trainClassList) { //Display Train Class Details TrainClassDetailsViewModel trainClassDetailsViewModel = AutoMapper.Mapper.Map <TrainClassDetails, TrainClassDetailsViewModel>(classes); trainClassDetailsViewModelList.Add(trainClassDetailsViewModel); } return(View(trainClassDetailsViewModelList)); }
public ActionResult ViewAvailability(int id) //Based on train id showing class and seat details { List <TicketBooking> ticketBooking = ticketBookingBL.GetBookingDetailsByIdandDOJ(id, (System.DateTime)TempData["JourneyDate"]); //Get already booked details based on train id and DOJ List <TrainClassDetails> train = trainDetailsBL.GetSeatDetailsById(id); //Get trainclassdetails based on train id List <TrainClassDetailsViewModel> trainClassDetailsViewModelList = new List <TrainClassDetailsViewModel>(); //IEnumerable<TrainDetails> trainList = TrainDetailsBL.GetTrainDetails(); //Displaying Train Details if (ticketBooking.Count == 0) //If there is no booking on that particular date this condition will works { foreach (TrainClassDetails trains in train) { trainClassDetailsViewModel = AutoMapper.Mapper.Map <TrainClassDetails, TrainClassDetailsViewModel>(trains); trainClassDetailsViewModel.AvailableSeats = trains.Seats; trainClassDetailsViewModelList.Add(trainClassDetailsViewModel); } } else //if there is any booking on that date this part will works { foreach (TrainClassDetails trains in train) { trainClassDetailsViewModel = AutoMapper.Mapper.Map <TrainClassDetails, TrainClassDetailsViewModel>(trains); foreach (TicketBooking details in ticketBooking) { if (details.ClassId == trains.ClassId) { int count = ticketBookingBL.GetPassengerCountByID(details.BookingId); //get count of passengers with seat number not equal to 0 if (count != 0) { trainClassDetailsViewModel.AvailableSeats = trains.Seats - count; } break; } else { trainClassDetailsViewModel.AvailableSeats = trains.Seats; } } trainClassDetailsViewModelList.Add(trainClassDetailsViewModel); } } return(View(trainClassDetailsViewModelList)); }
public ActionResult AddTrainClass() { TrainClassDetailsViewModel trainClassDetailsViewModel = new TrainClassDetailsViewModel(); trainClassDetailsViewModel.TrainId = Convert.ToInt32(TempData["TrainId"]); List <TrainClass> trainClassList = trainClassBL.GetTrainClassList(); List <SelectListItem> classList = new List <SelectListItem>(); foreach (TrainClass trainClass in trainClassList) { //Adding Train Details classList.Add(new SelectListItem { Text = @trainClass.ClassName, Value = @trainClass.ClassId.ToString() }); } ViewBag.classes = classList; return(View(trainClassDetailsViewModel)); }
[ValidateAntiForgeryToken] //Antiforgery key token to prevent CSRF attack public ActionResult AddTrainClass(TrainClassDetailsViewModel trainClassDetailsViewModel) { List <TrainClass> trainClassList = trainClassBL.GetTrainClassList(); List <SelectListItem> classList = new List <SelectListItem>(); foreach (TrainClass trainClass in trainClassList) //Using view bag to get train class { classList.Add(new SelectListItem { Text = @trainClass.ClassName, Value = @trainClass.ClassId.ToString() }); } ViewBag.classes = classList; if (ModelState.IsValid) { TrainClassDetails trainClassDetails = AutoMapper.Mapper.Map <TrainClassDetailsViewModel, TrainClassDetails>(trainClassDetailsViewModel); trainClassBL.AddTrainClass(trainClassDetails); TempData["TrainId"] = trainClassDetails.TrainId; return(RedirectToAction("DisplayTrainCategories")); } return(View()); }