public static string Delhotel(string hotelid)//this method deletes the records in hoteldetailtable based on hotelid { try { var hote = from i in d.tblHotelDetails where i.HotelID == hotelid select i; tblHotelDetail h = hote.First(); tblBooking book = (from i in d.tblBookings where i.HotelID == h.HotelID select i).FirstOrDefault(); if (book == null) { d.tblHotelDetails.Remove(h); d.SaveChanges(); return("Data Deleted Succesfully"); } else { return("Hotel details cannot be deleted because of prior cutomers registration"); } } catch (Exception E) { } return(null); }
public static string Delbooking(int Booking_ID) //here booking details can be deleted { try { var book = from i in d.tblBookings where i.Booking_ID == Booking_ID select i; tblBooking b = book.First(); var E1 = from E2 in d.tblHotelDetails where E2.HotelID == b.HotelID select E2; tblHotelDetail h2 = E1.First(); DateTime D = Convert.ToDateTime(b.BookingDate); DateTime TD = DateTime.Today; TimeSpan limit = TD - D; var E8 = from E9 in d.tblPayments where E9.TransactionID == b.Booking_ID select E9; tblPayment p2 = E8.First(); if (limit.Days <= 3) //if we want to cancel within 3 days after booking then cancellation is possible { if (b.Room_Type == "AC") { d.tblBookings.Remove(b); h2.Number_of_AC_Rooms = b.Number_of_Rooms + h2.Number_of_AC_Rooms; d.tblPayments.Remove(p2); d.SaveChanges(); return("Successfully deleted"); } else { d.tblBookings.Remove(b); h2.Number_of_Non_AC_Rooms = b.Number_of_Rooms + h2.Number_of_Non_AC_Rooms; d.tblPayments.Remove(p2); d.SaveChanges(); return("Successfully deleted"); } } else { return("Cancellation is not available"); } } catch (InvalidOperationException E) { return("You cannot cancel the booking now"); } }
public static string getbooking(tblBooking z) //booking is done here and values are inserted in tblbooking { tblBooking b5 = new tblBooking(); var E1 = from E2 in d.tblHotelDetails where E2.HotelID == z.HotelID select E2; tblHotelDetail h1 = E1.First(); if (z.Room_Type == "AC") { b5.Customer_ID = z.Customer_ID; b5.HotelID = z.HotelID; b5.BookingDate = DateTime.Now; b5.ArrivalDate = z.ArrivalDate; b5.DepartureDate = z.DepartureDate; b5.Number_of_Adults = z.Number_of_Adults; b5.Number_of_Children = z.Number_of_Children; b5.Number_of_Nights = z.Number_of_Nights; b5.Room_Type = z.Room_Type; b5.Number_of_Rooms = z.Number_of_Rooms; d.tblBookings.Add(b5); d.SaveChanges(); h1.Number_of_AC_Rooms = h1.Number_of_AC_Rooms - z.Number_of_Rooms; d.SaveChanges(); } else { b5.Customer_ID = z.Customer_ID; b5.HotelID = z.HotelID; b5.BookingDate = DateTime.Now; b5.ArrivalDate = z.ArrivalDate; b5.DepartureDate = z.DepartureDate; b5.Number_of_Adults = z.Number_of_Adults; b5.Number_of_Children = z.Number_of_Children; b5.Number_of_Nights = z.Number_of_Nights; b5.Room_Type = z.Room_Type; b5.Number_of_Rooms = z.Number_of_Rooms; d.tblBookings.Add(b5); d.SaveChanges(); h1.Number_of_Non_AC_Rooms = h1.Number_of_Non_AC_Rooms - z.Number_of_Rooms; d.SaveChanges(); } return("Hotel reserved successfully with booking id" + b5.Booking_ID); }
public static string GetbookData(tblBooking H, tblBooking s) //here we are updating values of booking and changing availabilty of rooms based on updation and generating amount { try { // tblBooking b = new tblBooking(); var E1 = from E2 in d.tblHotelDetails where E2.HotelID == H.HotelID select E2; tblHotelDetail h = E1.First(); DateTime D = Convert.ToDateTime(H.ArrivalDate); DateTime TD = DateTime.Today; var b1 = from p9 in d.tblBookings where p9.Booking_ID == s.Booking_ID select p9; tblBooking x = b1.First(); var p1 = from p2 in d.tblPayments where p2.TransactionID == s.Booking_ID select p2; tblPayment pp = p1.First(); if (D > TD) { if (H.Room_Type == "AC" && H.Number_of_Rooms <= h.Number_of_AC_Rooms) { if (H.Number_of_Nights > 5) { double billamount = (H.Number_of_Adults * h.Rate_for_one_night_for_one_adult_AC) + (H.Number_of_Children * h.Rate_for_one_night_for_one_children_AC); billamount = billamount - ((2.5 * billamount) / 100); pp.Amount = (int)billamount; d.SaveChanges(); h.Number_of_AC_Rooms = h.Number_of_AC_Rooms + x.Number_of_Rooms - H.Number_of_Rooms; d.SaveChanges(); x.Customer_ID = H.Customer_ID; x.HotelID = H.HotelID; x.BookingDate = DateTime.Now; x.ArrivalDate = H.ArrivalDate; x.DepartureDate = H.DepartureDate; x.Number_of_Adults = H.Number_of_Adults; x.Number_of_Children = H.Number_of_Children; x.Number_of_Nights = H.Number_of_Nights; x.Room_Type = H.Room_Type; x.Number_of_Rooms = H.Number_of_Rooms; d.SaveChanges(); // h.Number_of_AC_Rooms = h.Number_of_AC_Rooms + x.Number_of_Rooms - H.Number_of_Rooms; // d.SaveChanges(); return("updated successfully"); } else { double billamount = (H.Number_of_Adults * h.Rate_for_one_night_for_one_adult_AC) + (H.Number_of_Children * h.Rate_for_one_night_for_one_children_AC); pp.Amount = (int)billamount; d.SaveChanges(); h.Number_of_AC_Rooms = h.Number_of_AC_Rooms + x.Number_of_Rooms - H.Number_of_Rooms; d.SaveChanges(); x.Customer_ID = H.Customer_ID; x.HotelID = H.HotelID; x.BookingDate = DateTime.Now; x.ArrivalDate = H.ArrivalDate; x.DepartureDate = H.DepartureDate; x.Number_of_Adults = H.Number_of_Adults; x.Number_of_Children = H.Number_of_Children; x.Number_of_Nights = H.Number_of_Nights; x.Room_Type = H.Room_Type; x.Number_of_Rooms = H.Number_of_Rooms; d.SaveChanges(); //h.Number_of_AC_Rooms = h.Number_of_AC_Rooms + x.Number_of_Rooms - H.Number_of_Rooms; //d.SaveChanges(); return("updated successfully"); } } else if (H.Room_Type == "NONAC" && H.Number_of_Rooms <= h.Number_of_Non_AC_Rooms) { if (H.Number_of_Nights > 5) { double billamount = (H.Number_of_Adults * h.Rate_for_one_night_for_one_adult_NONAC) + (H.Number_of_Children * h.Rate_for_one_night_for_one_children_NONAC); billamount = billamount - ((2.5 * billamount) / 100); pp.Amount = (int)billamount; d.SaveChanges(); h.Number_of_Non_AC_Rooms = h.Number_of_Non_AC_Rooms + x.Number_of_Rooms - H.Number_of_Rooms; d.SaveChanges(); x.Customer_ID = H.Customer_ID; x.HotelID = H.HotelID; x.BookingDate = DateTime.Now; x.ArrivalDate = H.ArrivalDate; x.DepartureDate = H.DepartureDate; x.Number_of_Adults = H.Number_of_Adults; x.Number_of_Children = H.Number_of_Children; x.Number_of_Nights = H.Number_of_Nights; x.Room_Type = H.Room_Type; x.Number_of_Rooms = H.Number_of_Rooms; d.SaveChanges(); //h.Number_of_Non_AC_Rooms = h.Number_of_Non_AC_Rooms + x.Number_of_Rooms - H.Number_of_Rooms; //d.SaveChanges(); return("updated successfully"); } else { double billamount = (H.Number_of_Adults * h.Rate_for_one_night_for_one_adult_NONAC) + (H.Number_of_Children * h.Rate_for_one_night_for_one_children_NONAC); pp.Amount = (int)billamount; d.SaveChanges(); h.Number_of_Non_AC_Rooms = h.Number_of_Non_AC_Rooms + x.Number_of_Rooms - H.Number_of_Rooms; d.SaveChanges(); x.Customer_ID = H.Customer_ID; x.HotelID = H.HotelID; x.BookingDate = DateTime.Now; x.ArrivalDate = H.ArrivalDate; x.DepartureDate = H.DepartureDate; x.Number_of_Adults = H.Number_of_Adults; x.Number_of_Children = H.Number_of_Children; x.Number_of_Nights = H.Number_of_Nights; x.Room_Type = H.Room_Type; x.Number_of_Rooms = H.Number_of_Rooms; d.SaveChanges(); //h.Number_of_Non_AC_Rooms = h.Number_of_Non_AC_Rooms + x.Number_of_Rooms - H.Number_of_Rooms; //d.SaveChanges(); return("updated successfully"); } } else { return("No available rooms"); } } else { return("arrival date must be greater than current date"); } } catch (InvalidOperationException E) { return(" Scheduled Time is Over For Updating"); } }
public static string Hotelbooking(tblBooking b1) //here we will do validations and we will generate bill amount { try { tblBooking b = new tblBooking(); var E1 = from E2 in d.tblHotelDetails where E2.HotelID == b1.HotelID select E2; tblHotelDetail h = E1.First(); DateTime D = Convert.ToDateTime(b1.ArrivalDate); DateTime TD = DateTime.Today; if (D > TD) { if (b1.Room_Type == "AC" && b1.Number_of_Rooms <= h.Number_of_AC_Rooms) { if (b1.Number_of_Nights > 5) { double billamount = (b1.Number_of_Adults * h.Rate_for_one_night_for_one_adult_AC) + (b1.Number_of_Children * h.Rate_for_one_night_for_one_children_AC); billamount = billamount - ((2.5 * billamount) / 100); return(billamount.ToString()); } else { double billamount = (b1.Number_of_Adults * h.Rate_for_one_night_for_one_adult_AC) + (b1.Number_of_Children * h.Rate_for_one_night_for_one_children_AC); return(billamount.ToString()); } } else if (b1.Room_Type == "NONAC" && b1.Number_of_Rooms <= h.Number_of_Non_AC_Rooms) { if (b1.Number_of_Nights > 5) { double billamount = (b1.Number_of_Adults * h.Rate_for_one_night_for_one_adult_NONAC) + (b1.Number_of_Children * h.Rate_for_one_night_for_one_children_NONAC); billamount = billamount - ((2.5 * billamount) / 100); return(billamount.ToString()); } else { double billamount = (b1.Number_of_Adults * h.Rate_for_one_night_for_one_adult_NONAC) + (b1.Number_of_Children * h.Rate_for_one_night_for_one_children_NONAC); return(billamount.ToString()); } } else { return("No available rooms"); } } else { return("arrival date must be greater than current date"); } } catch (InvalidOperationException E) { return("Hotel Not Found"); } }