public static void Show_free_rooms(string hotel_name)
        {
            try
            {
                Hotel hotel = Hotel_management.Find(hotel_name);

                Console.WriteLine($"Hotel \"{hotel_name}\"");
                Console.WriteLine($"Free rooms amount: {hotel.empty_rooms.Count}\n");

                int i = 0;
                while (i < hotel.empty_rooms.Count)
                {
                    Console.Write($"{hotel.empty_rooms[i]} ");

                    i++;

                    if (i % 5 == 0)
                    {
                        Console.Write('\n');
                    }
                }

                Console.Write('\n');
            }
            catch
            {
                Console.WriteLine("Can't to find such hotel in the database");
            }
        }
        public static void Show_clients(string hotel_name)
        {
            try
            {
                Hotel hotel = Hotel_management.Find(hotel_name);

                Console.WriteLine($"Hotel \"{hotel_name}\" clients list\n");

                int i = 0;
                while (i < hotel.approved_orders.Count)
                {
                    Console.WriteLine($"Order ID: {hotel.approved_orders[i].Id}");

                    Console.WriteLine($"Room: {hotel.approved_orders[i].Room_number}");
                    Console.WriteLine($"ID: {hotel.approved_orders[i].Client.Id}");
                    Console.WriteLine($"First name: {hotel.approved_orders[i].Client.First_name}");
                    Console.WriteLine($"Last name: {hotel.approved_orders[i].Client.Last_name}");
                    Console.WriteLine($"Phone number: {hotel.approved_orders[i].Client.Phone_number}");
                    Console.WriteLine($"Passport: {hotel.approved_orders[i].Client.Passport}\n");

                    if (i != hotel.approved_orders.Count - 1)
                    {
                        Console.WriteLine("- - - - - - - - - -");
                    }

                    i++;
                }
            }
            catch
            {
                Console.WriteLine("Can't to find such hotel in the database");
            }
        }
        public static void Show_ordered_rooms(string hotel_name)
        {
            Hotel hotel = Hotel_management.Find(hotel_name);

            Console.WriteLine($"Hotel \"{hotel_name}\"");
            Console.WriteLine($"Ordered rooms amount: {hotel.approved_orders.Count}\n");

            int i = 0;

            while (i < hotel.approved_orders.Count)
            {
                Console.WriteLine($"Order ID: {hotel.approved_orders[i].Id}");

                Console.WriteLine($"Room: {hotel.approved_orders[i].Room_number}");
                Console.WriteLine($"Days: {hotel.approved_orders[i].Days_amount}");
                Console.WriteLine($"Client first name: {hotel.approved_orders[i].Client.First_name}");
                Console.WriteLine($"Client last name: {hotel.approved_orders[i].Client.Last_name}\n");

                if (i != hotel.approved_orders.Count - 1)
                {
                    Console.WriteLine("- - - - - - - - - -");
                }

                i++;
            }
        }
        public static void Remove_order(int client_id, string hotel_name, int room_number)
        {
            try
            {
                Client client = Client_management.Find_by_id(client_id);
                Hotel  hotel  = Hotel_management.Find(hotel_name);

                if (!Is_free(hotel_name, room_number))
                {
                    int i = 0;
                    while (i < hotel.approved_orders.Count)
                    {
                        Order order = hotel.approved_orders[i];

                        if (order.Room_number == room_number)
                        {
                            hotel.approved_orders[i] = null;
                            hotel.empty_rooms.Insert(room_number - 1, room_number);

                            order.Client = null;

                            break;
                        }
                    }
                }
                else
                {
                    Console.WriteLine("There is no such order request");
                }
            }
            catch
            {
                Console.WriteLine("ERROR");
            }
        }
        public static void Order_room(int client_id, string hotel_name, string phone_number)
        {
            try
            {
                Client client = Client_management.Find_by_id(client_id);
                Hotel  hotel  = Hotel_management.Find(hotel_name);

                foreach (Order order in hotel.order_requests)
                {
                    if (order.Phone_number_for_request == phone_number)
                    {
                        order.Id = Find_free_id(hotel);

                        hotel.order_requests.Remove(order);
                        hotel.approved_orders.Add(order);
                        hotel.empty_rooms.RemoveAt(order.Room_number - 1);

                        order.Client = client;

                        break;
                    }
                }
            }
            catch
            {
                Console.WriteLine("ERROR");
            }
        }
 public static void Show_price(string hotel_name, int order_id)
 {
     try
     {
         Hotel hotel = Hotel_management.Find(hotel_name);
         Console.WriteLine($"Total price: {hotel.Price_per_day * hotel.approved_orders[order_id].Days_amount}$");
     }
     catch
     {
         Console.WriteLine("ERROR");
     }
 }
        private static bool Is_free(string hotel_name, int room_number)
        {
            bool result = true;

            Hotel hotel = Hotel_management.Find(hotel_name);

            foreach (Order order in hotel.approved_orders)
            {
                if (order.Room_number == room_number)
                {
                    result = false;
                    break;
                }
            }

            return(result);
        }
        public static void Order_info(string hotel_name, int order_id)
        {
            try
            {
                Hotel hotel = Hotel_management.Find(hotel_name);

                Console.WriteLine($"Client first name: {hotel.approved_orders[order_id].Client.First_name}");
                Console.WriteLine($"Client last name: {hotel.approved_orders[order_id].Client.Last_name}");
                Console.WriteLine($"Room number: {hotel.approved_orders[order_id].Room_number}");
                Console.WriteLine($"Days amount: {hotel.approved_orders[order_id].Days_amount}");
                Show_price(hotel_name, order_id);
            }
            catch
            {
                Console.WriteLine("ERROR");
            }
        }