public static FlightsManager GetSource()
 {
     if (Source == null)
     {
         Source = new FlightsManager();
     }
     return(Source);
 }
Example #2
0
        static void Main(string[] args)
        {
            Console.WriteLine(" < E-Bookong, Artem Poshukailo, IS-82, V-8 > ");

            var CustBase = CustomersBase.GetSource();
            var Manager  = FlightsManager.GetSource();

            Program.LogIn();

            Serializer.Serialize <FlightsBase>(Manager.Flights, "FlightsBase.dat");
            Serializer.Serialize <CustomersBase>(CustBase, "CustomersBase.dat");

            WriteColorLine(" < Process comletion > ", ConsoleColor.Magenta);
            Console.WriteLine(" < Enter any key > \n>");
            Console.ReadKey();
        }
Example #3
0
        public void BookingMenu()
        {
            Booking CurBooking = null;

            FlightsManager Manager = FlightsManager.GetSource();
            FlightsBase    Flights = Manager.Flights;
            char           mode    = ' ';

            Console.Clear();
            OutputBookingMenu();

            do
            {
                mode = Program.EnterMode();
                switch (mode)
                {
                case 'o':
                case 'O':
                    OutputBookingMenu();
                    break;

                case 'a':
                case 'A':
                    BookedFlights.OutputBookings();
                    break;

                case 'i':
                case 'I':
                    BookingsBase.OutputCurrentBooking(CurBooking);
                    break;

                case 'b':
                case 'B':
                    Booking.BuyTicket(CurBooking);
                    break;

                case 'k':
                case 'K':
                    CurBooking = BookedFlights.FindByDate(FlightsTime.arrival);
                    Program.WriteColorLine(" < Current booking was updated > \n", ConsoleColor.Green);
                    break;

                case 'l':
                case 'L':
                    CurBooking = BookedFlights.FindByDate(FlightsTime.departure);
                    Program.WriteColorLine(" < Current booking was updated > \n", ConsoleColor.Green);
                    break;

                case 'p':
                case 'P':
                    CurBooking = BookedFlights.FindByPoints();
                    Program.WriteColorLine(" < Current booking was updated > \n", ConsoleColor.Green);
                    break;

                case 'd':
                case 'D':
                    BookedFlights.DelCurrentBooking(CurBooking);
                    break;

                case 'q':
                case 'Q':
                    break;

                default:
                    Program.WriteColorLine(" < Wrong mode > ", ConsoleColor.Red);
                    break;
                }
            } while (mode != 'q' && mode != 'Q');

            Console.Clear();
        }
Example #4
0
        public static void LogIn()
        {
            FlightsManager Manager  = FlightsManager.GetSource();
            CustomersBase  CustBase = CustomersBase.GetSource();
            Customer       CurCust  = null;
            char           mode     = ' ';

            MainMenu();

            do
            {
                mode = Program.EnterMode();
                switch (mode)
                {
                case 'o':
                case 'O':
                    MainMenu();
                    break;

                case 'r':
                case 'R':

                    Manager.Customers.RegistrateCustomer();
                    Program.WriteColorLine(" < Your account has been successfuly created > \n", ConsoleColor.Green);
                    break;

                case 'm':
                case 'M':

                    if (Manager.EnterPassword())
                    {
                        Manager.Menu();
                        MainMenu();
                    }

                    break;

                case 'c':
                case 'C':

                    CurCust = CustBase.FindByLogin();
                    if (CurCust != null)
                    {
                        if (CurCust.EnterPassword())
                        {
                            CurCust.CustomersMenu();
                            MainMenu();
                        }
                    }
                    break;

                case 'q':
                case 'Q':
                    break;

                default:
                    WriteColorLine(" < Wrong mode > ", ConsoleColor.Red);
                    break;
                }
            } while (mode != 'q' && mode != 'Q');
        }
Example #5
0
        public void FlightMenu()
        {
            Flight CurFlight = null;

            FlightsManager Manager = FlightsManager.GetSource();
            FlightsBase    Flights = Manager.Flights;
            char           mode    = ' ';

            Console.Clear();
            OutputFlightMenu();

            do
            {
                mode = Program.EnterMode();
                switch (mode)
                {
                case 'o':
                case 'O':
                    OutputFlightMenu();
                    break;

                case 'p':
                case 'P':
                    CurFlight = Flights.FindByPoints();
                    Program.WriteColorLine(" < Current flight was updated > \n", ConsoleColor.Green);
                    break;

                case 'a':
                case 'A':
                    Flights.OutputFlights();
                    break;

                case 'i':
                case 'I':
                    FlightsBase.OutputCurrentFlight(CurFlight);
                    break;

                case 'k':
                case 'K':
                    CurFlight = Flights.FindByDate(FlightsTime.arrival);
                    Program.WriteColorLine(" < Current flight was updated > \n", ConsoleColor.Green);
                    break;

                case 'l':
                case 'L':
                    CurFlight = Flights.FindByDate(FlightsTime.departure);
                    Program.WriteColorLine(" < Current flight was updated > \n", ConsoleColor.Green);
                    break;

                case 'b':
                case 'B':
                    BookedFlights.BookFlight(CurFlight, this);
                    break;

                case 'q':
                case 'Q':
                    break;

                default:
                    Program.WriteColorLine(" < Wrong mode > ", ConsoleColor.Red);
                    break;
                }
            } while (mode != 'q' && mode != 'Q');

            Console.Clear();
        }