public ActionResult Validation(BookingVm inVm) { if (ModelState.IsValid) { try { if (inVm.Name == "1") { TempData.SetMessage("پیغام موفق است", MessageType.Success); } else if (inVm.Name == "2") { TempData.SetMessage("پیغام خطا است", MessageType.Error); } else if (inVm.Name == "3") { TempData.SetMessage("پیغام هشدار است", MessageType.Warn); } } catch (Exception ex) { TempData.SetMessage(ex.Message, MessageType.Error); } } return(View()); }
public IActionResult Create([Bind("Id,Car,Customer,Booking")] BookingVm vm) { if (ModelState.IsValid) { _bookingRepository.CreateBooking(vm); _carRepository.UpdateCarStatus(vm.Booking.CarId); return(RedirectToAction(nameof(Index))); } return(View("Index", vm)); }
public IActionResult Create() { BookingVm bookingVm = new BookingVm(); //Fyller listan med bilarna som finns genom metod bookingVm.Cars = FillCarListOfSelectListItems(); //Fyller listan med kunder som finns genom metod bookingVm.Customers = FillCustomerListOfSelectListItems(); return(View(bookingVm)); }
public void CreateBooking(BookingVm vm) { var booking = new Booking(); booking.Id = new Guid(); booking.CarId = vm.Booking.CarId; booking.CustomerId = vm.Booking.CustomerId; booking.PickUpDate = vm.Booking.PickUpDate; _context.Add(booking); _context.SaveChanges(); }
public IActionResult Index() { var bookingVm = new BookingVm(); var allCustomers = _customerRepository.GetAllCustomers(); var listOfCustomers = _customerRepository.AllCustomerList(allCustomers); var allCars = _carRepository.GetAllCars().Where(x => x.Booked == false && x.ForRent == true); var listOfCars = _carRepository.AllCarList(allCars); bookingVm.AllCustomers = listOfCustomers; bookingVm.AllCars = listOfCars; return(View(bookingVm)); }
public async Task <IActionResult> Create([Bind("BookingId,CustomerId,CarId,StartDate")] Booking booking) { booking.ReturnDate = booking.StartDate.AddDays(1); booking.OnGoing = true; //Hämtar bilen vi har att göra med och sätter den till bokad. Om den redan är bokad så berättar vi det booking.Car = _carRepository.GetCarById(booking.CarId); if (booking.Car.Booked == false) { booking.Car.Booked = true; } else { ViewBag.Message = "Bilen är redan bokad, vänligen välj en annan"; BookingVm error_bookingVm = new BookingVm(); error_bookingVm.Cars = FillCarListOfSelectListItems(); error_bookingVm.Customers = FillCustomerListOfSelectListItems(); return(View(error_bookingVm)); } if (ModelState.IsValid) { //Lägger till bokningen i systemet booking.BookingId = Guid.NewGuid(); _bookingRepository.AddBooking(booking); //Uppdaterar bilen till bokad _carRepository.UpdateCar(booking.Car); _entityFrameworkRepository.SaveChangesAsync(); return(RedirectToAction(nameof(Index))); } BookingVm bookingVm = new BookingVm(); //Om det misslyckas så hämtar vi bilarna på nytt bookingVm.Cars = FillCarListOfSelectListItems(); ////Om det misslyckas så hämtar vi kunderna på nytt bookingVm.Customers = FillCustomerListOfSelectListItems(); return(View(bookingVm)); }
public IActionResult Booking(BookingVm b) { var TicketList = _context.TicketReservations. AsNoTracking().Include(a => a.BusSchedule). Where(s => s.BusSchedule.BusId == b.BusId && s.BusSchedule.StartingFrom == b.StartingFrom && s.BusSchedule.Destination == b.Destination && s.Date == b.Date).ToList(); if (TicketList.Count() == 0) { var Seat = _context.Buses.Where(s => s.BusId == b.BusId).FirstOrDefault(); var Tickets = GenarateTicket.Ticket(Seat.TotalSeat, b.BookingVmId, b.Date); var SeatSent = new List <TicketReservationVm>(); foreach (var item in Tickets) { _context.TicketReservations.Add(item); _context.SaveChanges(); TicketReservationVm a = new TicketReservationVm() { TicketReservationId = item.TicketReservationId, ConfirmStatus = item.ConfirmStatus, Date = item.Date, AgentId = item.AgentId, PassengerId = item.PassengerId, BusScheduleId = item.BusScheduleId, SeatNumber = item.SeatNumber }; if (item.ConfirmStatus == false) { a.MightBeReserve = true; } else { a.MightBeReserve = false; } SeatSent.Add(a); } var price = _context.BusSchedules.AsNoTracking(). Where(s => s.BusScheduleId == Tickets[1].BusScheduleId).FirstOrDefault(); ViewBag.Price = price.TicketPrice; return(View(SeatSent)); } else { var Ticket = _context.TicketReservations. AsNoTracking().Include(a => a.BusSchedule). Where(s => s.BusSchedule.BusId == b.BusId && s.BusSchedule.StartingFrom == b.StartingFrom && s.BusSchedule.Destination == b.Destination && s.Date.Month == b.Date.Month && s.Date.Year == b.Date.Year && s.Date.Day == b.Date.Day).ToList(); var SeatSent = new List <TicketReservationVm>(); foreach (var item in Ticket) { TicketReservationVm a = new TicketReservationVm() { TicketReservationId = item.TicketReservationId, ConfirmStatus = item.ConfirmStatus, Date = item.Date, AgentId = item.AgentId, PassengerId = item.PassengerId, BusScheduleId = item.BusScheduleId, SeatNumber = item.SeatNumber }; if (item.ConfirmStatus == false) { a.MightBeReserve = true; } SeatSent.Add(a); } var price = _context.BusSchedules.AsNoTracking(). Where(s => s.BusScheduleId == Ticket[1].BusScheduleId).FirstOrDefault(); ViewBag.Price = price.TicketPrice; return(View(SeatSent)); } }