static void Main(string[] args) { int action; BaseFlight FlightOb = new BaseFlight(); List<BaseFlight> AllFlight = new List<BaseFlight>(); do { Console.WriteLine(@"Select the action : 1. Create/add information about flight/passanger/price; 2. Edit information about flight/passanger/price; 3. Delete information about flight/passanger; 4. Sourch; 5. Emergency information; 6. Exit; "); action = int.Parse(Console.ReadLine()); switch (action) { #region Create case 1: //create do { Console.WriteLine("Create"); action = Create.Chouse(); switch(action) { case 1: //Flight (Arrive/Departure) Create.CreateFligh(FlightOb); FlightOb.Flight_L.Add(new Flight(Create.flight_number, Create.city, Create.port, Create.airline, Create.terminal, Create.gate, Create.dt, Create.flightstatus, Create.num)); break; case 2: //Passanger if(!FlightOb.chek_f) { Console.WriteLine("Create flight first"); break; } Create.CreatePassanger(FlightOb); Flight flob = new Flight(); foreach(Flight fl in FlightOb.Flight_L) { if (fl.flight_number == Create.sfn) flob=fl; } FlightOb.Passenger_L.Add(new Passenger(Create.name, Create.second_name, Create.nationality, Create.passport, Create.date_birthday, Create.sex, flob)); break; case 3: //Price if(!FlightOb.chek_f) { Console.WriteLine("Create flight first"); break; } Create.CreatePrice(FlightOb); Flight flob1 = new Flight(); foreach(Flight fl in FlightOb.Flight_L) { if (fl.flight_number == Create.sfn) flob1=fl; } FlightOb.Price_L.Add(new Pricelist(Create.clas, Create.price, flob1)); break; } } while (action != 4); break; #endregion Create #region Edit case 2: //edit do { Console.WriteLine("Edit"); action = Create.Chouse(); switch (action) { case 1: if (!FlightOb.chek_f) { Console.WriteLine("You need to create first"); break; } Show.Show_Flight(FlightOb); Console.WriteLine("Enter the number:"); int k3 = int.Parse(Console.ReadLine()); Create.CreateFligh(FlightOb); FlightOb.Edit(new Flight(Create.flight_number, Create.city, Create.port, Create.airline, Create.terminal, Create.gate, Create.dt, Create.flightstatus, Create.num), k3 - 1); break; case 2: if (!FlightOb.chek_p) { Console.WriteLine("Not found"); break; } Show.Show_Passenger(FlightOb); Console.WriteLine("Enter the number:"); int k = int.Parse(Console.ReadLine()); Create.CreatePassanger(FlightOb); Flight flob1 = new Flight(); foreach(Flight fl in FlightOb.Flight_L) { if (fl.flight_number == Create.sfn) flob1=fl; } FlightOb.Edit(new Passenger(Create.name, Create.second_name, Create.nationality, Create.passport, Create.date_birthday, Create.sex, flob1), k - 1); break; case 3: if (!FlightOb.chek_pri) { Console.WriteLine("Not found"); break; } Show.Show_Price(FlightOb); Console.WriteLine("Enter the number:"); int p = int.Parse(Console.ReadLine()); Create.CreatePrice(FlightOb); Flight flob2 = new Flight(); foreach(Flight fl in FlightOb.Flight_L) { if (fl.flight_number == Create.sfn) flob2=fl; } FlightOb.Edit(new Pricelist(Create.clas, Create.price, flob2), p - 1); break; } } while (action != 4); break; #endregion Edit #region Delete case 3: //delete do { Console.WriteLine("Delete"); action = Create.Chouse(); switch (action) { case 1: if (!FlightOb.chek_f) { Console.WriteLine("You need to create first"); break; } Show.Show_Flight(FlightOb); Console.WriteLine("Enter the number:"); int k = int.Parse(Console.ReadLine()); k = k - 1; FlightOb.Delete(new Flight(), k); break; case 2: if (!FlightOb.chek_p) { Console.WriteLine("You need to create first"); break; } Show.Show_Passenger(FlightOb); Console.WriteLine("Enter the number:"); int k2 = int.Parse(Console.ReadLine()); k2 = k2 - 1; FlightOb.Delete(new Passenger(), k2); break; case 3: if (!FlightOb.chek_pri) { Console.WriteLine("You need to create first"); break; } Show.Show_Price(FlightOb); Console.WriteLine("Enter the number:"); int p = int.Parse(Console.ReadLine()); p = p - 1; FlightOb.Delete(new Pricelist(), p); break; } } while (action != 3); break; #endregion Delete case 4: do { Console.WriteLine(@"Choose the search parametrs: 1. Search by the flight number; 2. Search by the arrival/departure port; 3. Search by the time of arrival; 4. Search the flight which is the nearest (1 hour); 5. Search passenger by name and second name; 6. Search passenger by passport; 7. Search passenger by flight number; 8. Search flight number by price; 9. Exit;"); action = int.Parse(Console.ReadLine()); switch(action) { case 1: Console.WriteLine("Enter flight number: "); int f_n = int.Parse(Console.ReadLine()); Search.search_number_port(FlightOb, f_n, 1); break; case 2: Console.WriteLine("Enter port: "); int port = int.Parse(Console.ReadLine()); Search.search_number_port(FlightOb, port, 2); break; case 3: Console.WriteLine("Enter date/time in the format year.month.day hour:minute "); string datetime1 = Console.ReadLine(); DateTime dt1 = Convert.ToDateTime(datetime1); Search.search_time_of_arrival(FlightOb, dt1); break; case 4: Console.WriteLine("Enter port: "); int port1 = int.Parse(Console.ReadLine()); Console.WriteLine("Enter date/time in the format year.month.day hour:minute "); string datetime2 = Console.ReadLine(); DateTime dt2 = Convert.ToDateTime(datetime2); Search.search_one_hour(FlightOb, port1, dt2); break; case 5: Console.WriteLine("Enter name:"); string name = Console.ReadLine(); Console.WriteLine("Enter second name:"); string second_name = Console.ReadLine(); Search.search_passenger_name(FlightOb, name, second_name); break; case 6: Console.WriteLine("Enter passport:"); string passport = Console.ReadLine(); Search.search_passenger_passport(FlightOb, passport); break; case 7: Console.WriteLine("Enter flight number:"); int f_num = int.Parse(Console.ReadLine()); Search.search_passenger_flight_number(FlightOb, f_num); break; case 8: Console.WriteLine("Enter price:"); double pr1 = double.Parse(Console.ReadLine()); Search.search_flight_number_by_price(FlightOb, pr1); break; } } while (action != 9); break; case 5: break; } } while (action != 6); }