public void ParkInfoScreen(int parkID) { while (true) { string header = ""; string selectionMenu = "Select a Command\n----------------\n1) View campgrounds\n2) Search for reservation\n3) View all reservations for the next 30 days\n4) Return to previous screen\n"; string selectionPrompt = "Selection:"; Park currentWorkingPark = new Park(); ParkDAL parkDAL = new ParkDAL(DatabaseConnection); IList <Park> parks = parkDAL.GetParkList(); foreach (Park park in parks) { if (park.ParkID == parkID) { currentWorkingPark = park; Console.Clear(); header += $"====================== {currentWorkingPark.Name} National Park Information ======================"; Console.SetCursorPosition((Console.WindowWidth - header.Length) / 2, Console.CursorTop); Console.WriteLine(header); Console.WriteLine(park.ToString() + "\n"); break; } } int command; Console.WriteLine(selectionMenu); command = CLIHelper.GetInteger(selectionPrompt); switch (command) { case (1): ParkCampgroundScreen(currentWorkingPark); break; case (2): ParkWideAvailabilitySearch(parkID); //Search reservations by park break; case (3): Display30DaysReservation(parkID); break; case (4): return; default: Console.WriteLine("Please enter a valid number from the menu. Press Enter to try again."); Console.ReadLine(); break; } } }
public void RunCLI() { while (true) { string parkSelectPrompt = "====================== Select a Park for Further Details ======================\n"; string validSelectionError = "Please make a valid selection from the menu. Press Enter to try again."; string quitPrompt = $"{Command_Quit}) Quit\n"; string selectionPrompt = "Selection:"; int commandIfNum; Console.Clear(); Console.SetCursorPosition((Console.WindowWidth - parkSelectPrompt.Length) / 2, Console.CursorTop); Console.WriteLine(parkSelectPrompt); ParkDAL parkDAL = new ParkDAL(DatabaseConnection); IList <Park> parkList = new List <Park>(); parkList = parkDAL.GetParkList(); foreach (Park park in parkList) { Console.WriteLine($"{park.ParkID}) {park.Name}"); } Console.WriteLine(quitPrompt); string command = CLIHelper.GetString(selectionPrompt).ToUpper(); if (command == Command_Quit) { return; } else if (!int.TryParse(command, out commandIfNum)) { Console.WriteLine(validSelectionError); Console.ReadLine(); continue; } else { bool commandNumIsInParkList = false; foreach (Park park in parkList) { if (park.ParkID == commandIfNum) { commandNumIsInParkList = true; break; } } if (commandNumIsInParkList) { ParkInfoScreen(commandIfNum); } else { Console.WriteLine(validSelectionError); Console.ReadLine(); } } } }