public void when_calling_BookRoom_with_specified_Id_returns_model() { Room room = new Room() { Price = 100, numberofGuests = 1, numberofBeds = 1, doubleBed = false, petsAllowed = false, Toilet = true, Kitchen = false, numberofTelevisions = 1 }; List <DateTime> listDateTime = new List <DateTime>(); listDateTime.Add(new DateTime(2019, 4, 9)); listDateTime.Add(new DateTime(2019, 4, 10)); listDateTime.Add(new DateTime(2019, 4, 11)); listDateTime.Add(new DateTime(2019, 4, 12)); Mock <IHolidaysRepository> mock = new Mock <IHolidaysRepository>(); mock.Setup(r => r.GetRoomById(It.IsAny <int>())).Returns(room); mock.Setup(r => r.GetDaysBookedRoom(It.IsAny <int>())).Returns(listDateTime); ClientController controller = new ClientController(mock.Object); ViewResult result = (ViewResult)(controller.BookRoom(1)); BookRoomViewModel model = (BookRoomViewModel)result.Model; Assert.AreEqual(model.room, room); Assert.AreEqual(model.list.Count, listDateTime.Count); }
public ActionResult BookRoom() { BookRoomViewModel vm = new BookRoomViewModel(); vm.FromDate = DateTime.Now; vm.ToDate = DateTime.Now.AddDays(1); return(View(vm)); }
// Method to book a room. public ActionResult Room_Book() { BookRoomViewModel bookRoomViewModel = new BookRoomViewModel(); bookRoomViewModel.hotels = hotelsrepo.Read(); bookRoomViewModel.rooms = roomrepo.Read(); return(View("Room_Book", bookRoomViewModel)); }
public BookRoomController(ApplicationDbContext db) { _db = db; bookRoomRep = new BookRoomRep(_db); BookRoomVM = new BookRoomViewModel() { Room = new List <Models.Rooms>() }; }
public async Task <IActionResult> Create([FromBody] BookRoomViewModel model) { if (!ModelState.IsValid) { var errors = ModelState.Select(x => x.Value.Errors) .Where(y => y.Count > 0) .ToList(); return(BadRequest(errors)); } // add customer var foundCustomer = await _context.Customers.Where(item => item.Phone == model.Phone).FirstOrDefaultAsync(); if (foundCustomer == null) { foundCustomer = new Customer { Name = model.FullName, Phone = model.Phone, Email = model.Email, CreatedAt = DateTime.Now, Avatar = "/uploads/avatar-customer.jpg", BookCount = 1 }; await _context.Customers.AddAsync(foundCustomer); await _context.SaveChangesAsync(); } // add Book Room var bookRoom = new BookRoom { TypeRoomId = model.TypeRoomId, CustomerId = foundCustomer.Id, Status = false, TimeBook = (int)model.TimeBook, TimeCreated = model.TimeCreated.HasValue ? model.TimeCreated.Value : DateTime.Now, CreatedAt = DateTime.Now, BookRoomStatus = BookRoomStatus.Waiting }; await _context.BookRooms.AddAsync(bookRoom); await _context.SaveChangesAsync(); return(Ok(1)); }
public ActionResult GetQualifiedRooms(BookRoomViewModel model) { List <FetchedRoomViewModel> Rooms = new List <FetchedRoomViewModel>(); if (ModelState.IsValid) { int CurMinPrice = model.MinPrice == null ? 0 : (int)model.MinPrice; int CurMaxPrice = model.MaxPrice == null ? int.MaxValue : (int)model.MaxPrice; if (model.MinPrice != null && model.MaxPrice != null && model.MinPrice > model.MaxPrice) { CurMaxPrice = (int)model.MinPrice; CurMinPrice = (int)model.MaxPrice; model.MinPrice = CurMaxPrice; model.MaxPrice = CurMinPrice; } IEnumerable <GetQualifiedRooms_Result> ResRooms = _context.GetQualifiedRooms(model.FromDate, model.ToDate, model.IsACEquipped, CurMinPrice, CurMaxPrice, model.RmType, model.NoOfBeds); if (model.IsACEquipped != null) { ResRooms = ResRooms.Where(r => r.IsACEquipped == model.IsACEquipped); } if (model.RmType != null) { ResRooms = ResRooms.Where(r => r.RmType == model.RmType); } if (model.NoOfBeds != null) { ResRooms = ResRooms.Where(r => r.NoOfBeds == model.NoOfBeds); } foreach (var r in ResRooms) { FetchedRoomViewModel RoomVM = new FetchedRoomViewModel { ID = r.ID, RoomNo = r.RoomNo, IsACEquipped = r.IsACEquipped ? "Yes" : "No", Price = r.Price, RmType = Enum.GetName(typeof(RoomType), r.RmType), NoOfBeds = Enum.GetName(typeof(BedNo), r.NoOfBeds), TotalCost = r.Price * ((int)((model.ToDate - model.FromDate).TotalDays)) }; Rooms.Add(RoomVM); } } model.Rooms = Rooms; return(View("BookRoom", model)); }
public ActionResult ReserveRoom(ReverveRoomModel model) { if (model.dateTo <= model.dateFrom) { ModelState.AddModelError("dateTo", "Date should be later than above"); } if (model.dateFrom == null) { ModelState.AddModelError("dateFrom", "Pole nie moze być puste"); } if (ModelState.IsValid) { //repository.BookHolidayHome(model.holidayhomeId, model.dateFrom, model.dateTo); CheckBookingModel modelbook = repository.bookroom(model.roomId, model.dateFrom, model.dateTo); ViewBag.checkbookingmodel = modelbook; return(RedirectToAction("ShowDetailsRoom", "Home", new { Id = model.roomId })); } else { Room room = repository.GetRoomById(model.roomId); List <DateTime> list = repository.GetDaysBookedRoom(model.roomId); List <string> liststring = new List <string>(); foreach (var item in list) { liststring.Add(item.ToShortDateString()); } BookRoomViewModel viewmodel = new BookRoomViewModel(); viewmodel.room = room; viewmodel.list = liststring; return(View("~/Views/Client/BookRoom.cshtml", viewmodel)); //Room room = repository.GetRoomById(model.roomId); //return View("~/Views/Client/BookRoom.cshtml", room); } }
public ActionResult BookRoom(int Id) { Room model = repository.GetRoomById(Id); List <DateTime> list = repository.GetDaysBookedRoom(Id); List <string> liststring = new List <string>(); foreach (var item in list) { liststring.Add(item.ToShortDateString()); } BookRoomViewModel viewmodel = new BookRoomViewModel(); viewmodel.room = model; viewmodel.list = liststring; return(View(viewmodel)); }
public async Task <IHttpActionResult> Post(BookRoomViewModel model) { if (!(await IsReserved(model.RoomId, model.FromDate, model.ToDate))) { db.Reservations.Add(new Reservation { StartDate = model.FromDate, EndDate = model.ToDate, DayCount = (model.ToDate - model.FromDate).Days, RoomId = model.RoomId, UserId = model.HotelId }); await db.SaveChangesAsync(); return(Ok()); } return(BadRequest("Invalid Date")); }
// GET: SelectedBooking/BookRoom public ActionResult BookRoom(string startDate, string endDate, int?id) { if (id != null & id > 0) { var model = new BookRoomViewModel { Room = _roomGateway.Read(id.Value) }; if (!startDate.IsNullOrWhiteSpace()) { model.StartDate = startDate; } if (!endDate.IsNullOrWhiteSpace()) { model.EndDate = endDate; } return(View(model)); } return(RedirectToAction("Index", "Home")); }
public BookRoomWindow(Guid roomid, out BookRoomViewModel viewModel, RoomStatePage page) { InitializeComponent(); //viewmodel = new AddRoomViewModel(this); //this.DataContext = viewmodel; this.WindowStartupLocation = WindowStartupLocation.CenterScreen; this.roomid = roomid; this.normaltype.IsChecked = true; viewModel = new BookRoomViewModel(this); this.DataContext = viewModel; this.fatherpage = page; using (RetailContext context = new RetailContext()) { string t = roomid.ConvertGuid(); Room room = context.Database.SqlQuery <Room>(string.Format("SELECT * FROM Rooms WHERE UPPER(HEX([roomID]))='{0}'", t)).ToList()[0]; this.thisroom = room; } this.roomname.Text = thisroom.roomname; this.roomtype.Content = thisroom.roomtype; isclosetrans = 0; }
public void when_calling_ReserveRoom_with_model_error_returns_BookRoomViewModel() { Room room = new Room() { Price = 100, numberofGuests = 1, numberofBeds = 1, doubleBed = false, petsAllowed = false, Toilet = true, Kitchen = false, numberofTelevisions = 1 }; List <DateTime> listDateTime = new List <DateTime>(); listDateTime.Add(new DateTime(2019, 4, 9)); listDateTime.Add(new DateTime(2019, 4, 10)); listDateTime.Add(new DateTime(2019, 4, 11)); listDateTime.Add(new DateTime(2019, 4, 12)); ReverveRoomModel reservemodel = new ReverveRoomModel(); reservemodel.dateFrom = new DateTime(2019, 4, 5); reservemodel.dateTo = new DateTime(2019, 4, 2); reservemodel.roomId = 3; Mock <IHolidaysRepository> mock = new Mock <IHolidaysRepository>(); mock.Setup(r => r.GetRoomById(It.IsAny <int>())).Returns(room); mock.Setup(r => r.GetDaysBookedRoom(It.IsAny <int>())).Returns(listDateTime); ClientController controller = new ClientController(mock.Object); ViewResult result = (ViewResult)(controller.ReserveRoom(reservemodel)); Assert.AreEqual("~/Views/Client/BookRoom.cshtml", result.ViewName); BookRoomViewModel bookviewmodel = (BookRoomViewModel)result.Model; Assert.AreEqual(room, bookviewmodel.room); }
private async void btnBook_Click(object sender, EventArgs e) { if ((fromDate.Value < toDate.Value) && (fromDate.Value >= DateTime.Now && toDate.Value >= DateTime.Now)) { var model = new BookRoomViewModel { FromDate = fromDate.Value, ToDate = toDate.Value, HotelId = UserId, RoomId = RoomId }; var strObject = JsonConvert.SerializeObject(model); var result = await client.PostAsync(url + "HotelReservations", new StringContent(strObject, Encoding.Default, "application/json")); if (result.IsSuccessStatusCode) { MetroMessageBox.Show(this, "Reservation was successful", "Done", MessageBoxButtons.OK, MessageBoxIcon.Information); } else { MetroMessageBox.Show(this, "Reservaton was not successful: " + result.ReasonPhrase, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } } }