public ActionResult SelectRoomType(Models.ReservationSearchData reservationSearchData) { if (Session["accessLevel"] != null && (int)Session["accessLevel"] == 2) { List <Models.Room> rooms = new Models.ReserveItEntities().Rooms.Where(r => r.HotelID == reservationSearchData.HotelID).ToList(); foreach (Models.Room item in rooms) { using (Models.ReserveItEntities db = new Models.ReserveItEntities()) { int response = (int)db.CheckRoomAvailability(reservationSearchData.Dates.CheckIn, reservationSearchData.Dates.CheckOut, item.RoomID).First(); if (response == 0) { reservationSearchData.AvailableRooms.Add(item); } } } reservationSearchData.AvailableRoomTypes = reservationSearchData.AvailableRooms.Select(r => r.RoomType).Distinct().ToList(); TempData["Model"] = reservationSearchData; TempData.Keep(); return(View(reservationSearchData)); } return(RedirectToAction("Index", "Home")); }
public ActionResult ConfirmReservation(string roomType) { if (Session["accessLevel"] != null && (int)Session["accessLevel"] == 2) { Models.ReservationSearchData data = (Models.ReservationSearchData)TempData["Model"]; data.RoomTypeID = roomType; data.ReserveRoom = data.AvailableRooms.Where(r => r.RoomTypeID == roomType).First(); data.RoomTypeDescription = data.AvailableRooms.Where(ar => ar.RoomID == data.ReserveRoom.RoomID).Select(rs => rs.RoomType.RoomTypeDescription).First(); TempData["Model"] = data; TempData.Keep(); return(View(data)); } return(RedirectToAction("Index", "Home")); }