Beispiel #1
0
        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));
        }
Beispiel #2
0
 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());
 }
Beispiel #3
0
        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));
        }
Beispiel #5
0
        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));
        }
Beispiel #6
0
        [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());
        }