// поиск по 1) номеру рейса, 2) порту public static bool search_number_port(BaseFlight ob, int search, int param) { BaseFlight sum_new = new BaseFlight(); int k = 0; foreach (Flight flight in ob.Flight_L) { if (param == 1 & flight.flight_number == search) { sum_new.Flight_L.Add(flight); k++; } else if (param == 2 & flight.port == search) { sum_new.Flight_L.Add(flight); k++; } } if (k == 0) { Console.WriteLine("not found"); return false; } else { Show.Show_Flight(sum_new); Console.ResetColor(); return true; } }
// поиск пассажиров по имени и фамилии public static void search_passenger_name(BaseFlight ob, string name, string second_name) { BaseFlight sum_new = new BaseFlight(); int k = 0; foreach (Passenger nam in ob.Passenger_L) { if (nam.name == name && nam.second_name == second_name) { sum_new.Passenger_L.Add(nam); k++; } } if (k == 0) Console.WriteLine("not found"); else Show.Show_Passenger(sum_new); Console.ResetColor(); }
//поиск по времени прибытия public static void search_time_of_arrival(BaseFlight ob, DateTime time) { BaseFlight sum_new = new BaseFlight(); int k = 0; foreach (Flight flight in ob.Flight_L) { if(flight.dt.CompareTo(time)==0 & flight.arrdep_stat=="arrive") { sum_new.Flight_L.Add(flight); k++; } } if (k == 0) Console.WriteLine("not found"); else Show.Show_Flight(sum_new); Console.ResetColor(); }
public static void Show_Price(BaseFlight ob) { int i = 1; int j = 1; foreach (Pricelist pr in ob.Price_L) { Console.ForegroundColor = (ConsoleColor)i; Console.WriteLine("Number: " + j); Console.WriteLine("Class: " + pr.clas); Console.WriteLine("Price: " + pr.price); Console.WriteLine("flight number: " + pr.ob.flight_number); i++; j++; if (i == 15) i = 1; } Console.ResetColor(); }
public static void CreatePassanger(BaseFlight ob) { Console.WriteLine("Chouse flight number from the list: "); sfn = Show_flight_number(ob); Console.WriteLine("Enter Name: "); name = Console.ReadLine(); Console.WriteLine("Enter Second Name: "); second_name = Console.ReadLine(); Console.WriteLine("Enter nationality: "); nationality = Console.ReadLine(); Console.WriteLine("Enter passport: "); passport = Console.ReadLine(); Console.WriteLine("Enter date of birthday in the format year.month.day "); datetime = Console.ReadLine(); date_birthday = Convert.ToDateTime(datetime); Console.WriteLine("Enter sex: "); sex = Console.ReadLine(); }
public static void Show_Passenger(BaseFlight ob) { int i = 1; int j = 1; foreach (Passenger pa in ob.Passenger_L) { Console.ForegroundColor = (ConsoleColor)i; Console.WriteLine("Number: " + j); Console.WriteLine("Name: " + pa.name); Console.WriteLine("Second name: " + pa.second_name); Console.WriteLine("SEX: " + pa.sex); Console.WriteLine("Nationality: " + pa.nationality); Console.WriteLine("Passport: " + pa.passport); Console.WriteLine("Date of birthday: " + pa.date_birthday); Console.WriteLine("flight number: " + pa.flightob.flight_number); i++; j++; if (i == 15) i = 1; } Console.ResetColor(); }
public static void CreateFligh(BaseFlight ob) { bool chek; do { chek = false; Console.WriteLine("Enter flight number: "); flight_number = int.Parse(Console.ReadLine()); if (Search.search_number_port(ob, flight_number, 1)) { Console.WriteLine("This flight number already exists, enter another"); chek = false; } else chek = true; }while (chek == false); Console.WriteLine("Chouse 1 if you wont create arrive flight and 2 for departe flight: "); num = int.Parse(Console.ReadLine()); Console.WriteLine("Enter city: "); city = Console.ReadLine(); Console.WriteLine("Enter port: "); port = int.Parse(Console.ReadLine()); Console.WriteLine("Enter airline: "); airline = Console.ReadLine(); Console.WriteLine("Enter terminal: "); terminal = int.Parse(Console.ReadLine()); Console.WriteLine("Enter gate: "); gate = int.Parse(Console.ReadLine()); Console.WriteLine("Enter date/time in the format year.month.day hour:minute "); datetime = Console.ReadLine(); dt = Convert.ToDateTime(datetime); Console.WriteLine(@"Chouse the flight_status: 1. checkin 2. gate_closed 3. arrived 4. departed_at 5. unknown 6. canceled 7. expected_at 8. delayed 9. in_flight "); flightstatus = status[int.Parse(Console.ReadLine()) + 1]; }
public static void Show_Flight(BaseFlight ob) { int i = 1; int j = 1; foreach (Flight fl in ob.Flight_L) { Console.ForegroundColor = (ConsoleColor)i; Console.WriteLine("Number: " + j); Console.WriteLine("flight number: " + fl.flight_number); Console.WriteLine("city: " + fl.city); Console.WriteLine("port: " + fl.port); Console.WriteLine("airline: " + fl.airline); Console.WriteLine("terminal: " + fl.terminal); Console.WriteLine("gate: " + fl.gate); Console.WriteLine("date: " + fl.dt); Console.WriteLine("flight status: " + fl.flightstatus); Console.WriteLine("" + fl.arrdep_stat); i++; j++; if (i == 15) i = 1; } Console.ResetColor(); }
//поиск рейсов в приделах 1 часа public static void search_one_hour(BaseFlight ob, int port, DateTime time) { BaseFlight sum_new = new BaseFlight(); int k = 0; foreach (Flight flight in ob.Flight_L) { if ((flight.port == port)&&(flight.dt.Year == time.Year)&&((flight.dt.Hour - time.Hour == -1) & (flight.dt.Minute - time.Minute >= 0)) | ((flight.dt.Hour - time.Hour == 1) & (flight.dt.Minute - time.Minute <= 0)) | ((flight.dt.Hour - time.Hour == 0) & (Math.Abs(flight.dt.Minute - time.Minute) <= 60))) { sum_new.Flight_L.Add(flight); k++; } } if (k == 0) Console.WriteLine("not found"); else { sum_new.Flight_L.Sort(); Show.Show_Flight(sum_new); } Console.ResetColor(); }
public static int Show_flight_number(BaseFlight ob) { int j = 0; foreach (Flight ar in ob.Flight_L) { j++; Console.WriteLine((j) + ". " + ar.flight_number); } Console.WriteLine("Chouse one: "); int n = int.Parse(Console.ReadLine()); j = 0; foreach (Flight ar in ob.Flight_L) { j++; if (n == j) fl_n = ar.flight_number; } return fl_n; }
public static void CreatePrice(BaseFlight ob) { Console.WriteLine("Chouse flight number from the list: "); sfn = Show_flight_number(ob); Console.WriteLine("Chouse class from the list:"); bool chek = false; do { Console.WriteLine(@"1.business; 2. economy;"); clas = int.Parse(Console.ReadLine()); if ((clas != 1) || (clas != 2)) chek = true; } while (chek == false); Console.WriteLine("Enter price: "); price = double.Parse(Console.ReadLine()); }
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); }
// поиск пассажиров по номеру рейса public static void search_flight_number_by_price(BaseFlight ob, double price) { BaseFlight sum_new = new BaseFlight(); int k = 0; foreach (Pricelist pr in ob.Price_L) { if (pr.price == price) { sum_new.Price_L.Add(pr); k++; } } if (k == 0) Console.WriteLine("not found"); else Show.Show_Price(sum_new); Console.ResetColor(); }
// поиск пассажиров по номеру рейса public static void search_passenger_flight_number(BaseFlight ob, int flight_num) { BaseFlight sum_new = new BaseFlight(); int k = 0; foreach (Passenger nam in ob.Passenger_L) { if (nam.flightob.flight_number == flight_num) { sum_new.Passenger_L.Add(nam); k++; } } if (k == 0) Console.WriteLine("not found"); else Show.Show_Passenger(sum_new); Console.ResetColor(); }
// поиск пассажиров по паспорту public static void search_passenger_passport(BaseFlight ob, string passport) { BaseFlight sum_new = new BaseFlight(); int k = 0; foreach (Passenger nam in ob.Passenger_L) { if (nam.passport == passport) { sum_new.Passenger_L.Add(nam); k++; } } if (k == 0) Console.WriteLine("not found"); else Show.Show_Passenger(sum_new); Console.ResetColor(); }