static void ConfirmBookingFlow()
        {
            BookingServiceProvider bookingService = new BookingServiceProvider(loggedInUser);
            List <Booking>         bookingsMade   = bookingService.UsersBookingsGenerator();

            foreach (Booking display in bookingsMade)
            {
                AttributeDisplayHelper.DisplayAttributes <Booking>(display);
            }
            Console.WriteLine("Enter Booking ID");
            string bookingID = Console.ReadLine();

            Console.WriteLine("Enter a response (1 to accept and 2 to reject)");
            int response = Convert.ToInt32(Console.ReadLine());

            response = response % 2;
            response = response == 0 ? 2 : response;
            try
            {
                bookingService.ConfirmBooking(response, bookingID);
            }
            catch (Exception e)
            {
                Console.WriteLine(e);
            }
        }
        static void MakeBookingFlow()
        {
            BookingServiceProvider bookingService  = new BookingServiceProvider(loggedInUser);
            OfferServiceProvider   offerService    = new OfferServiceProvider(loggedInUser);
            List <Offer>           availableOffers = offerService.ViewAllOffersOtherThanUser();

            if (availableOffers.ToArray().Length != 0)
            {
                foreach (var offer in availableOffers)
                {
                    AttributeDisplayHelper.DisplayAttributes <Offer>(offer);
                }
                Console.WriteLine("Enter offer ID");
                string OfferID = Console.ReadLine();
                try
                {
                    bookingService.MakeBooking(OfferID);
                }
                catch (Exception e)
                {
                    Console.WriteLine(e.Message);
                }
            }
            else
            {
                Console.WriteLine("No offers made by any user");
            }
        }
        static void ViewDebtsFlow()
        {
            BookingServiceProvider bookingService = new BookingServiceProvider(loggedInUser);
            List <Booking>         DebtedBookings = bookingService.ViewDebtedBookings();

            foreach (Booking booking in DebtedBookings)
            {
                AttributeDisplayHelper.DisplayAttributes <Booking>(booking);
            }
        }
        static void RideHistoryFlow()
        {
            BookingServiceProvider bookingService = new BookingServiceProvider(loggedInUser);
            List <Booking>         completed      = bookingService.ViewCompletedRides();

            foreach (Booking display in completed)
            {
                AttributeDisplayHelper.DisplayAttributes <Booking>(display);
            }
        }
        static void ViewBookingsFlow()
        {
            BookingServiceProvider bookingService   = new BookingServiceProvider(loggedInUser);
            List <Booking>         bookingToDisplay = bookingService.ViewBookings();

            foreach (Booking display in bookingToDisplay)
            {
                AttributeDisplayHelper.DisplayAttributes <Booking>(display);
            }
        }
        static void ViewOffersFlow()
        {
            OfferServiceProvider offerService    = new OfferServiceProvider(loggedInUser);
            List <Offer>         OffersToDisplay = offerService.ViewOffers();

            foreach (Offer display in OffersToDisplay)
            {
                AttributeDisplayHelper.DisplayAttributes <Offer>(display);
            }
        }