public async Task <IActionResult> Booking(BookMv book) { if (!ModelState.IsValid) { ViewBag.CategoryRoom = await new CategoryRoomDao().GeList(); return(RedirectToAction("Booking")); } else { try { var data = new BookingDao().Empbooking(book); ViewBag.CategoryRoom = await new CategoryRoomDao().GeList(); ViewBag.ListGuest = await new BookingDao().getGuestList(); ViewBag.ListBookingOnline = await new BookingDao().getListBookingOnline(); ViewBag.ListBooking = await new BookingDao().getListBooking(); return(View("Home")); } catch (Exception e) { Console.WriteLine(e.Message); ViewBag.CategoryRoom = await new CategoryRoomDao().GeList(); return(View("Booking")); } } }
public async Task <object> EmpAcceptBookingOnline(BookMv book) { book.ListRoomIds = book.RoomIds.Split(',').Select(int.Parse).ToArray(); var postTask = await _api.Update(url + "/EmpAcceptBooking", book.Id, book); return(postTask); }
public async Task <BookMv> getBookingOnlineById(int bookingId) { try { var getTask = await _api.GetDataById(url + "/GetBookingById", bookingId); var bookingMv = new BookingMv(); if (getTask.IsSuccessStatusCode) { var result = getTask.Content.ReadAsStringAsync().Result; bookingMv = JsonConvert.DeserializeObject <BookingMv>(result); } var book = new BookMv() { Id = bookingMv.Id, FirstName = bookingMv.GuestMv.FirstName, LastName = bookingMv.GuestMv.LastName, Email = bookingMv.GuestMv.Email, Phone = bookingMv.GuestMv.Phone, CheckOut = bookingMv.CheckOut, CheckIn = bookingMv.CheckIn, IdentityNo = bookingMv.GuestMv.IdentityNo }; return(book); } catch (Exception e) { Console.WriteLine(e); return(null); throw; } }
public void EmpAcceptBooking(int id, BookMv book) { try { //accept guest var guest = _unitOfWork.Guests.GetByID(_unitOfWork.Bookings.GetByID(book.Id).GuestId); guest.IdentityNo = book.IdentityNo; guest.Email = book.Email; guest.LastName = book.LastName; guest.FirstName = book.FirstName; guest.Phone = book.Phone; _unitOfWork.Guests.Update(guest); _unitOfWork.Commit(); //acceptBooking var booking = _unitOfWork.Bookings.GetByID(book.Id); booking.CheckOut = book.CheckOut; booking.CheckIn = book.CheckIn; booking.DurationStay = (int)(book.CheckOut - book.CheckIn).TotalDays; booking.Status = BookedStatus.booked; var amountMoney = 0; foreach (var item in book.ListRoomIds) { var money = _unitOfWork.CategoryRooms .GetByID(_unitOfWork.Rooms.GetByID(item).CategoryRoomId) .Price; var durationDay = booking.DurationStay; var totalMoney = durationDay * money; amountMoney += (int)totalMoney; } booking.Amount = amountMoney; _unitOfWork.Bookings.Update(booking); _unitOfWork.Commit(); //create booking room foreach (var item in book.ListRoomIds) { var bookRoom = new BookRoom() { BookingId = book.Id, RoomId = item }; _unitOfWork.BookRooms.Insert(bookRoom); _unitOfWork.Commit(); } new OrderDao(_unitOfWork, _mapper).CreateOrder(booking.Id); } catch (Exception e) { Console.WriteLine(e); throw; } }
public async Task <HttpResponseMessage> Empbooking(BookMv book) { book.ListRoomIds = book.RoomIds.Split(',').Select(int.Parse).ToArray(); var postTask = await _api.PostData(url + "/employeepost", book); return(postTask); }
public async Task CreateBooking(BookMv book) { try { System.Net.Mail.MailMessage MyMailMessage = new System.Net.Mail.MailMessage(); MyMailMessage.From = new System.Net.Mail.MailAddress("*****@*****.**"); MyMailMessage.To.Add(book.Email);// Mail would be sent to this address MyMailMessage.Subject = "Khach San"; System.Net.Mail.SmtpClient SMTPServer = new System.Net.Mail.SmtpClient("smtp.gmail.com"); SMTPServer.Port = 587; SMTPServer.Credentials = new System.Net.NetworkCredential("*****@*****.**", "dinhhoang0712"); SMTPServer.EnableSsl = true; var guest = _unitOfWork.Guests.Get().FirstOrDefault(x => x.Email == book.Email); var currentGuest = new Guest(); if (guest != null) { currentGuest = guest; } else { var guestData = new Guest() { FirstName = book.FirstName, LastName = book.LastName, Email = book.Email, Phone = book.Phone }; currentGuest = _unitOfWork.Guests.InsertData(guestData); } _unitOfWork.Commit(); var bookingData = new Booking() { BookingDate = DateTime.Now, CheckIn = book.CheckIn, CheckOut = book.CheckOut, SecretCode = new Random().Next(100000, 999999).ToString(), GuestId = currentGuest.Id, Status = BookedStatus.booking, DurationStay = (int)(book.CheckOut - book.CheckIn).TotalDays, }; MyMailMessage.Body = $"ma so bi mat ban la: {bookingData.SecretCode}"; _unitOfWork.Bookings.Insert(bookingData); _unitOfWork.Commit(); await SMTPServer.SendMailAsync(MyMailMessage); } catch (Exception e) { Console.WriteLine(e.Message); throw; } }
public async Task <IActionResult> EmpleePostAsync([FromBody] BookMv booking) { try { await new BookingDao(_unitOfWork, _mapper).EmployeCreateBooking(booking); return(Ok()); } catch (Exception e) { Console.WriteLine(e); return(NotFound()); } }
public IActionResult EmpAcceptBooking(int id, BookMv book) { try { new BookingDao(_unitOfWork, _mapper).EmpAcceptBooking(id, book); return(Ok()); } catch (Exception e) { Console.WriteLine(e); return(NotFound()); throw; } }
public async Task <IActionResult> CheckInRoom(BookMv book) { if (!ModelState.IsValid) { ViewBag.CategoryRoom = await new CategoryRoomDao().GeList(); ViewBag.ListBookingOnline = await new BookingDao().getListBookingOnline(); return(View()); } else { ViewBag.ListBookingOnline = await new BookingDao().EmpAcceptBookingOnline(book); ViewBag.ListGuest = await new BookingDao().getGuestList(); ViewBag.ListBookingOnline = await new BookingDao().getListBookingOnline(); ViewBag.ListBooking = await new BookingDao().getListBooking(); return(View("Home")); } }
public async Task EmployeCreateBooking(BookMv book) { try { System.Net.Mail.MailMessage MyMailMessage = new System.Net.Mail.MailMessage(); MyMailMessage.From = new System.Net.Mail.MailAddress("*****@*****.**"); MyMailMessage.To.Add(book.Email);// Mail would be sent to this address MyMailMessage.Subject = "khách sạn"; System.Net.Mail.SmtpClient SMTPServer = new System.Net.Mail.SmtpClient("smtp.gmail.com"); SMTPServer.Port = 587; SMTPServer.Credentials = new System.Net.NetworkCredential("*****@*****.**", "dinhhoang0712"); SMTPServer.EnableSsl = true; var guest = _unitOfWork.Guests.Get().FirstOrDefault(x => x.Email == book.Email); var currentGuest = new Guest(); if (guest == null) { var guestData = new Guest() { FirstName = book.FirstName, LastName = book.LastName, Email = book.Email, Phone = book.Phone, IdentityNo = book.IdentityNo }; currentGuest = _unitOfWork.Guests.InsertData(guestData); } else { currentGuest = guest; } _unitOfWork.Commit(); var amountMoney = 0; foreach (var item in book.ListRoomIds) { var money = _unitOfWork.CategoryRooms .GetByID(_unitOfWork.Rooms.GetByID(item).CategoryRoomId) .Price; var durationDay = (int)(book.CheckOut - book.CheckIn).TotalDays; var totalMoney = durationDay * money; amountMoney += (int)totalMoney; } var bookingData = new Booking() { BookingDate = DateTime.Now, CheckIn = book.CheckIn, CheckOut = book.CheckOut, SecretCode = new Random().Next(100000, 999999).ToString(), GuestId = currentGuest.Id, Status = BookedStatus.booked, DurationStay = (int)(book.CheckOut - book.CheckIn).TotalDays, Amount = amountMoney }; MyMailMessage.Body = $"mã số bí mật của {currentGuest.LastName} là: {bookingData.SecretCode}"; _unitOfWork.Bookings.Insert(bookingData); _unitOfWork.Commit(); foreach (var item in book.ListRoomIds) { var bookRoom = new BookRoom() { BookingId = bookingData.Id, RoomId = item }; _unitOfWork.BookRooms.Insert(bookRoom); _unitOfWork.Commit(); } new OrderDao(_unitOfWork, _mapper).CreateOrder(bookingData.Id); await SMTPServer.SendMailAsync(MyMailMessage); } catch (Exception e) { Console.WriteLine(e.Message); throw; } }