Exemplo n.º 1
0
        //seleccion del recorrido y alta del mismo

        public void altaDeRecorrido(Recorrido recorrido)
        {
            //copia de todos los recorridos para uso de seleccion
            ArrayList copiaDeTerminales = new  ArrayList();

            for (int i = 0; i < terminales.Count; i++)
            {
                copiaDeTerminales.Add(terminales[i]);
            }

            //seleccion y alta de recorrido
            recorrido.altaDeRecorrido(copiaDeTerminales);
            recorridos.Add(recorrido);
            imprimirAbajo("El recorrido se ha dado de alta correctamente");
            imprimirAbajo("Presione una Enter para continuar.");
        }
Exemplo n.º 2
0
 //constructor
 public Venta(Usuario usuario, Recorrido itinerario, int cant_pasajes)
 {
     this.usuario      = usuario;
     this.cant_pasajes = cant_pasajes;
     this.itinerario   = itinerario;
 }
Exemplo n.º 3
0
        public static void Main(string[] args)
        {
            Micritos micritos = new Micritos();


            Console.Write("********************************************************************************");
            Console.Write("*****                              Micritos                                *****");
            Console.Write("********************************************************************************");

            //	MENU PRINCIPAL
            menuPrincipal();
            string eleccion = Console.ReadLine();

            while (eleccion != "4")
            {
                try{
                    switch ((eleccion))
                    {
                    case "1":
                    {
                        Console.Clear();

                        //SUB MENU DE ARMADO DE RECORRIDOS
                        titulo();
                        menuArmadoRecorrido();

                        string eleccion1 = Console.ReadLine();



                        while (eleccion1 != "4")
                        {
                            try{
                                switch (eleccion1)
                                {
                                case "1":
                                {
                                    //ALTA DE TERMINALES

                                    imprimirAbajo("");
                                    micritos.altaDeTerminal();
                                    Console.ReadLine();
                                    Console.Clear();
                                    titulo();
                                    menuArmadoRecorrido();
                                    break;
                                }

                                case "2":
                                {
                                    //ALTA DE OMNIBUS

                                    imprimirAbajo("");
                                    micritos.altaDeOmnibus();
                                    Console.ReadLine();
                                    Console.Clear();
                                    titulo();
                                    menuArmadoRecorrido();
                                    break;
                                }

                                case "3":
                                {
                                    //ALTA DE RECORRIDOS
                                    Console.Clear();
                                    Recorrido R = new Recorrido();
                                    micritos.altaDeRecorrido(R);
                                    Console.ReadLine();
                                    Console.Clear();
                                    titulo();
                                    menuArmadoRecorrido();

                                    break;
                                }
                                }


                                if (int.Parse(eleccion1) > 4)
                                {
                                    throw new ArgumentOutOfRangeException();
                                }
                            }


                            catch (ArgumentOutOfRangeException)
                            {
                                Console.WriteLine("La opción ingresada es incorrecta");
                                Console.WriteLine("Presione ENTER para continuar");
                                Console.ReadLine();
                            }
                            catch (FormatException)
                            {
                                Console.WriteLine("El valor ingresado es invalido");
                                Console.WriteLine("Presione ENTER para continuar");
                                Console.ReadLine();
                            }
                            catch (marcaYModeloInvalido b)
                            {
                                imprimirAbajo(b.Mensaje);
                                imprimirAbajo("Presione ENTER para continuar.");
                                Console.ReadLine();
                            }


                            Console.Clear();
                            titulo();
                            menuArmadoRecorrido();
                            eleccion1 = Console.ReadLine();
                        }
                    }
                        titulo();
                        menuPrincipal();
                        break;


                    case "2":
                    {
                        //SUB MENU GESTION DE CHOFERES



                        Console.Clear();
                        titulo();
                        menuGestionDeChoferes();

                        string eleccion2 = Console.ReadLine();

                        while (eleccion2 != "3")
                        {
                            try{
                                switch (eleccion2)
                                {
                                case "1":
                                {
                                    //ALTA DE CHOFERES

                                    imprimirAbajo("");
                                    micritos.altaDeChofer();
                                    Console.ReadLine();
                                    Console.Clear();
                                    titulo();
                                    menuGestionDeChoferes();
                                    break;
                                }

                                case "2":
                                {
                                    // ASIGNAR RECORRIDO
                                    Console.Clear();
                                    imprimirAbajo("");
                                    micritos.asignarRecorrido();
                                    Console.ReadLine();
                                    Console.Clear();
                                    titulo();
                                    menuGestionDeChoferes();

                                    break;
                                }
                                }


                                if (int.Parse(eleccion2) > 3)
                                {
                                    throw new ArgumentOutOfRangeException();
                                }
                            }
                            catch (ArgumentOutOfRangeException)
                            {
                                Console.WriteLine("La opción ingresada es incorrecta");
                                Console.WriteLine("Presione ENTER para continuar");
                                Console.ReadLine();
                            }
                            catch (FormatException)
                            {
                                Console.WriteLine("El valor ingresado es invalido");
                                Console.WriteLine("Presione ENTER para continuar");
                                Console.ReadLine();
                            }

                            Console.Clear();
                            titulo();
                            menuGestionDeChoferes();
                            eleccion2 = Console.ReadLine();
                        }

                        titulo();
                        menuPrincipal();
                        break;
                    }

                    case "3":
                    {
                        //sub menu de ventas de pasajes
                        Console.Clear();
                        titulo();
                        menuVentaDePasajes();

                        string eleccion_3 = Console.ReadLine();

                        while (eleccion_3 != "3")
                        {
                            try{
                                switch (eleccion_3)
                                {
                                case "1":
                                {
                                    //ALTA DE USUARIOS

                                    imprimirAbajo("");
                                    micritos.altaDeUsuario();
                                    Console.ReadLine();
                                    Console.Clear();
                                    titulo();
                                    menuVentaDePasajes();
                                    break;
                                }

                                case "2":

                                    //VENTA DE PASAJES

                                {
                                    imprimirAbajo("");
                                    micritos.comprarPasaje();
                                    Console.ReadLine();
                                    Console.Clear();
                                    titulo();
                                    menuVentaDePasajes();
                                    break;
                                }
                                }

                                if (int.Parse(eleccion_3) > 3)
                                {
                                    throw new ArgumentOutOfRangeException();
                                }
                            }
                            catch (ArgumentOutOfRangeException)
                            {
                                Console.WriteLine("La opción ingresada es incorrecta");
                                Console.WriteLine("Presione ENTER para continuar");
                                Console.ReadLine();
                            }
                            catch (FormatException)
                            {
                                Console.WriteLine("El valor ingresado es invalido");
                                Console.WriteLine("Presione ENTER para continuar");
                                Console.ReadLine();
                            }

                            Console.Clear();
                            titulo();
                            menuVentaDePasajes();
                            eleccion_3 = Console.ReadLine();
                        }

                        titulo();
                        menuPrincipal();
                        break;
                    }
                    }

                    if (int.Parse(eleccion) > 5)
                    {
                        throw new ArgumentOutOfRangeException();
                    }
                }
                catch (ArgumentOutOfRangeException)
                {
                    Console.WriteLine("La opcion ingresada es incorrecta");
                    Console.WriteLine("Presione ENTER para continuar");
                    Console.ReadLine();
                }
                catch (FormatException)
                {
                    Console.WriteLine("No ah ingresado ninguna opción.");
                    Console.WriteLine("Presione ENTER para continuar");
                    Console.ReadLine();
                }

                catch (Exepciones)
                {
                    Console.WriteLine("Ah ocurrido un error inesperado.");
                    Console.WriteLine("Presione Enter para continuar.");
                    Console.ReadLine();
                }


                Console.Clear();
                menuPrincipal();
                eleccion = Console.ReadLine();
                menuPrincipal();
            }
        }
Exemplo n.º 4
0
 private void agregarRecorrido(Recorrido recorrido)
 {
     recorridos.Add(recorrido);
 }
Exemplo n.º 5
0
        public void comprarPasaje()
        {
            imprimirAbajo("Ingrese el número de usuario");
            int nro_de_usuario = int.Parse(Console.ReadLine());

            imprimirAbajo("Ingrese el DNI");
            int dni = int.Parse(Console.ReadLine());

            if (noExisteUsiario(dni))
            {
                imprimirAbajo("No existe un Usuario con ese DNI en la empresa");
                imprimirAbajo("presione ENTER para continuar.");
            }

            else
            {
                Usuario usuario = compraUsuario(dni, nro_de_usuario);

                Console.Clear();
                titulo();

                // imprimo las terminales de partida verificando que ninguna se repita
                ArrayList terminales_de_partida = new ArrayList();

                imprimirAbajo("seleccione la terminal de partida");
                imprimirAbajo("");
                int k = 1;
                for (int i = 0; i < recorridos_asignados.Count; i++)
                {
                    Recorrido recorrido = ((Recorrido)recorridos_asignados[i]);

                    if (!partidaRepetida(((Terminal)recorrido.Terminales_del_recorrido[0]), terminales_de_partida))
                    {
                        terminales_de_partida.Add((Terminal)recorrido.Terminales_del_recorrido[0]);
                        Console.WriteLine(k + ")" + (Terminal)recorrido.Terminales_del_recorrido[0]);
                        k++;
                    }
                }

                //selecciono la terminal de partida

                int partida_seleccionada = int.Parse(Console.ReadLine());

                Terminal terminal_de_partida = (Terminal)((Recorrido)recorridos_asignados[partida_seleccionada - 1]).Terminales_del_recorrido[0];

                Console.Clear();
                titulo();


                //imprimo las terminales de arribo verificando que ninguna se repita

                ArrayList terminales_de_arribo = new ArrayList();

                imprimirAbajo("seleccione la terminal de arribo");
                imprimirAbajo("");

                int j = 1;
                for (int i = 0; i < recorridos_asignados.Count; i++)
                {
                    Recorrido recorrido = ((Recorrido)recorridos_asignados[i]);

                    if (!arriboRepetido(((Terminal)recorrido.Terminales_del_recorrido[(recorrido.Terminales_del_recorrido).Count - 1]), terminales_de_arribo))
                    {
                        terminales_de_arribo.Add((Terminal)recorrido.Terminales_del_recorrido[(recorrido.Terminales_del_recorrido).Count - 1]);
                        Console.WriteLine(j + ")" + (Terminal)recorrido.Terminales_del_recorrido[(recorrido.Terminales_del_recorrido).Count - 1]);
                        j++;
                    }
                }


                //selecciono terminal de arribo

                int       arribo_seleccionado = int.Parse(Console.ReadLine());
                Recorrido R = ((Recorrido)recorridos_asignados[arribo_seleccionado - 1]);
                Terminal  terminal_de_arribo = (Terminal)(R).Terminales_del_recorrido[(R.Terminales_del_recorrido).Count - 1];



                // verifico que la terminal de partida y arribo no sean las mismas.

                if (terminal_de_partida.Nombre == terminal_de_arribo.Nombre && terminal_de_partida.Ciudad_Donde_Se_Encuentra == terminal_de_partida.Ciudad_Donde_Se_Encuentra)
                {
                    imprimirAbajo("La terminal de partida y arribo  es las mismas");
                    imprimirAbajo("Precione ENTER para continuar");
                }

                else
                {
                    Console.Clear();
                    titulo();

                    if (!existeItinerario(terminal_de_partida, terminal_de_arribo))
                    {
                        imprimirAbajo("No existe ningun recorrido con las terminales de partida solicitadas.");
                        imprimirAbajo("Presione ENTER para continuar.");
                    }
                    else
                    {
                        ArrayList itinerario = itinerarios(terminal_de_partida, terminal_de_arribo);


                        int m = 1;
                        for (int i = 0; i < itinerario.Count; i++)
                        {
                            int    cant_paradas_intermedia = ((Recorrido)itinerario[i]).Terminales_del_recorrido.Count - 2;
                            string dia    = ((Recorrido)itinerario[i]).Dia;
                            string modelo = ((Omnibus)(((Recorrido)itinerario[i]).Omnibus)).Tipo;
                            Console.WriteLine(m + ") Saliendo de " + terminal_de_partida.Ciudad_Donde_Se_Encuentra + " y llegando a " + terminal_de_arribo.Ciudad_Donde_Se_Encuentra + "(" + cant_paradas_intermedia + " paradas intermedias, " + dia + ", " + modelo + ")");
                            m++;
                        }

                        int seleccion_itinerario = int.Parse(Console.ReadLine());

                        Recorrido itinerario_seleccionado = (Recorrido)itinerario[seleccion_itinerario - 1];

                        imprimirAbajo("¿Cuantos pasajes desea?");
                        int pasajes = int.Parse(Console.ReadLine());

                        ventas.Add(new Venta(usuario, itinerario_seleccionado, pasajes));
                        imprimirAbajo("La venta se a realizado con exito.");
                        imprimirAbajo("Presione ENTER para continuar.");
                    }
                }
            }
        }
Exemplo n.º 6
0
        public void asignarRecorrido()
        {
            //muestras ,solicitud y guardado en temporal de:

            //Choferes:

            titulo();
            imprimirAbajo("");
            imprimirAbajo("Seleccione el chofer");
            imprimirAbajo("");

            int j = 1;

            for (int i = 0; i < choferes.Count; i++)
            {
                imprimirAbajo(j + ") " + choferes[i]);
                j++;
            }

            int seleccion_chofer = int.Parse(Console.ReadLine());

            Chofer chofer = (Chofer)choferes[seleccion_chofer - 1];

            Console.Clear();

            //Omnibus:

            titulo();
            imprimirAbajo("");
            imprimirAbajo("Seleccione el ómnibus");
            imprimirAbajo("");

            int l = 1;

            for (int i = 0; i < omnibus.Count; i++)
            {
                imprimirAbajo(l + ") " + omnibus[i]);
                l++;
            }

            int seleccion_omnibus = int.Parse(Console.ReadLine());

            Omnibus ómnibus = (Omnibus)omnibus[seleccion_omnibus - 1];

            Console.Clear();

            //Recorrido

            titulo();
            imprimirAbajo("");
            imprimirAbajo("Seleccione el recorrido");
            imprimirAbajo("");

            int m = 1;

            for (int i = 0; i < recorridos.Count; i++)
            {
                imprimirAbajo(m + ") " + recorridos[i]);
                m++;
            }

            int seleccion_recorrido = int.Parse(Console.ReadLine());

            Recorrido recorrido = (Recorrido)recorridos[seleccion_recorrido - 1];

            Console.Clear();

            //Dia

            string[] dias = new string[] { "Lunes", "Martes", "Miercoles", "Jueves", "Viernes", "Sabado", "Domingos" };

            titulo();
            imprimirAbajo("");
            imprimirAbajo("Seleccione el día donde hacer el recorrido");
            imprimirAbajo("");

            int k = 1;

            for (int i = 0; i < dias.Length; i++)
            {
                imprimirAbajo(k + ") " + dias[i]);
                k++;
            }

            int seleccion_dia = int.Parse(Console.ReadLine());

            string dia = dias[seleccion_dia - 1];

            if (omnibusOcupado(ómnibus, dia))
            {
                imprimirAbajo("");
                imprimirAbajo("El ómnibus ya está reservado ese diá");
                imprimirAbajo("Presione ENTER para continuar");
            }
            else if (choferOcupado(chofer, dia))
            {
                imprimirAbajo("");
                imprimirAbajo("El chofer ya hace un viaje ese día");
                imprimirAbajo("Presione ENTER para continuar");
            }
            else
            {
                //((Recorrido)Temporal[2]).Chofer=c;

                recorridos_asignados.Add(new Recorrido(chofer, ómnibus, dia, recorrido.Terminales_del_recorrido));

                //Recorrido R=(Recorrido)recorridos_asignados[recorridos_asignados.Count-1];

                imprimirAbajo("");
                imprimirAbajo("La asignación de recorrido fue dada de alta correctamente.");
                imprimirAbajo("Presione ENTER para continuar.");
            }
        }