public void EditPassenger() { try { Console.Clear(); FlightInfo flight = SearchByNumber(); if (flight == null) { return; } Console.WriteLine("Please, enter the first name of the passenger to edit"); string firstName = Console.ReadLine(); Console.WriteLine("Please, enter the second name of the passenger to edit"); string secondName = Console.ReadLine(); Passenger passenger = null; foreach (var item in flight.Passengers) { if (item.FirstName == firstName && item.SecondName == secondName) { passenger = item; break; } } if (passenger == null) { IOHelper.DrawConsoleHeader("We could not find a passenger, do you want to continue? Press any button", ConsoleColor.Red); Console.ReadLine(); return; } Console.Clear(); DrawPassenger(new List <Passenger> { passenger }); Console.WriteLine("Please enter new first name or press enter if you don't want to change"); var pasFirstName = Console.ReadLine(); if (!String.IsNullOrEmpty(pasFirstName)) { passenger.FirstName = pasFirstName; } Console.WriteLine("Please enter new second name or press enter if you don't want to change"); var pasSecondName = Console.ReadLine(); if (!String.IsNullOrEmpty(pasSecondName)) { passenger.SecondName = pasSecondName; } Console.WriteLine("Please enter new nationality or press enter if you don't want to change"); var nationality = Console.ReadLine(); if (!String.IsNullOrEmpty(nationality)) { passenger.Nationality = nationality; } Console.WriteLine("Please enter new pasport or press enter if you don't want to change"); var pasport = Console.ReadLine(); if (!String.IsNullOrEmpty(pasport)) { passenger.Pasport = pasport; } var birthday = (DateTime)IOHelper.SetDate("Please, enter the new birthday of the passenger (use this format dd.MM.yyyy)", "dd.MM.yyyy", true); if (birthday != null) { passenger.Birthday = birthday; } Console.WriteLine("Please, enter the new gender (Male or Female) of the passenger"); var gender = Console.ReadLine(); if (!String.IsNullOrEmpty(gender)) { passenger.Gender = (Gender)Enum.Parse(typeof(Gender), gender); } Console.WriteLine("Please, enter the new flight class (Business or Economy) of the passenger"); var flClass = Console.ReadLine(); if (!String.IsNullOrEmpty(flClass)) { passenger.ClassType = (FlightClasses)Enum.Parse(typeof(FlightClasses), flClass); } IOHelper.DrawConsoleHeader("Changes have been made, press any key to continue", ConsoleColor.Green); Console.ReadLine(); } catch { IOHelper.DrawConsoleHeader("Data format was incorrect to press any key to continue", ConsoleColor.Red); Console.ReadLine(); } }
public void Edit() { Console.Clear(); Draw(); Console.WriteLine("Enter the number of flight to edit"); var choice = Console.ReadLine(); FlightInfo flight = null; foreach (var item in flights) { if (item != null && item.Number == choice) { flight = item; break; } } if (flight == null) { IOHelper.DrawConsoleHeader("We could not find a flight, do you want to continue? Press any button", ConsoleColor.Red); Console.ReadLine(); return; } Console.Clear(); IOHelper.DrawConsoleHeader(string.Format("Flight: {0} has been found. Press any key to continue", choice), ConsoleColor.Green); Draw(new List <FlightInfo> { flight }); Console.ReadLine(); Console.WriteLine("Please enter new number or press enter if you don't want to change"); var number = Console.ReadLine(); if (!String.IsNullOrEmpty(number)) { flight.Number = number; } Console.WriteLine("Please enter new destination or press enter if you don't want to change"); var destination = Console.ReadLine(); if (!String.IsNullOrEmpty(destination)) { flight.Destination = destination; } Console.WriteLine("Please enter new departure place or press enter if you don't want to change"); var depPlace = Console.ReadLine(); if (!String.IsNullOrEmpty(depPlace)) { flight.DeparturePlace = depPlace; } Console.WriteLine("Please enter new airline or press enter if you don't want to change"); var line = Console.ReadLine(); if (!String.IsNullOrEmpty(line)) { flight.AirLine = line; } var depTime = IOHelper.SetDate("Please enter new the departure date and time or press enter (use this format dd.MM.yyyy HH:mm )", DatePattern, false); if (depTime != null) { flight.Departure = (DateTime)depTime; } var arrTime = IOHelper.SetDate("Please enter new the departure date and time or press enter (use this format dd.MM.yyyy HH:mm )", DatePattern, false); if (arrTime != null) { flight.Arrival = (DateTime)arrTime; } Console.WriteLine("Please enter new gate or press enter if you don't want to change"); var gate = Console.ReadLine(); if (!String.IsNullOrEmpty(gate)) { flight.Gate = gate; } Console.WriteLine(@"Please enter new status or press enter if you don't want to change (use this status checkIn, gateClosed, arrived, departedAt, unknown, canceled, expectedAt, delayed, inFlight)"); var status = Console.ReadLine(); if (!String.IsNullOrEmpty(status)) { flight.Status = (FlightStatus)Enum.Parse(typeof(FlightStatus), status); } AddPrices(flight); IOHelper.DrawConsoleHeader("Changes have been made, press any key to continue", ConsoleColor.Green); Console.ReadLine(); }