/// <summary> /// To chenck whether the given date is weekend or not if weekend it return 600 else it return 500 /// </summary> /// <param name="bookingDate">Input date</param> /// <returns>room rent amount</returns> public static double checkWeekEnd(string bookingDate) { double roomRentAmount = 0.0; try { string[] splitDateAsDash = HotelRoomReservation.splitDataAsGivenCharacter(bookingDate, '/'); if (splitDateAsDash.Length == 3) { DateTime CheckBookingDay = new DateTime(Convert.ToInt32(splitDateAsDash[0].Trim()), Convert.ToInt32(splitDateAsDash[1].Trim()), Convert.ToInt32(splitDateAsDash[2].Trim())); bool isWeekEnd = (CheckBookingDay.DayOfWeek == DayOfWeek.Sunday) == true || (CheckBookingDay.DayOfWeek == DayOfWeek.Saturday) == true; if (isWeekEnd) { roomRentAmount = 600; } else { roomRentAmount = 500; } } else { Console.WriteLine("Check Date Formate"); setRoomDetail(); } } catch (IndexOutOfRangeException dateConnotBeSplit) { Console.WriteLine(dateConnotBeSplit); throw; } return(roomRentAmount); }
static void Main(string[] args) { Console.WriteLine("Enter the room detail in formate of \n "); Console.WriteLine("<customer_type (Rewarded or Regular)> : <YYYY/MM/DD>, <YYYY/MM/DD>, ... "); string roomRent = HotelRoomReservation.setRoomDetail(); string[] splitDataAsCollen = splitDataAsGivenCharacter(roomRent, ':'); string[] bookingDates = splitDataAsGivenCharacter(splitDataAsCollen[1], ','); string customerType = splitDataAsCollen[0].Trim(); double totalAmount = HotelRoomReservation.totalAmountOfRoomRent(customerType, bookingDates); double paymentDiscount = roomRentDiscount(customerType, totalAmount); string discountAmountDetail = string.Format("Total Cost : " + totalAmount + ", Total Discount : " + paymentDiscount + ", Net pay : " + (totalAmount - paymentDiscount)); Console.WriteLine(discountAmountDetail); Console.ReadKey(); }