예제 #1
0
        public void Rentar(List <Auto> lista, List <Auto> rentados)

        {
            Console.Clear();
Inicio:
            Console.WriteLine("-----Rentar Autos-----");
            foreach (var item in lista)            // este foreach muestra todos los autos agregados en la lista
            {
                Console.WriteLine("--------------------------------");
                Console.WriteLine("Auto: " + item.Nombre + "\nID: " + item.Id);                // se muestra el nombre y el id del auto
                Console.WriteLine("--------------------------------");
            }
            try
            {
                Console.WriteLine("Que auto desea rentar (digite el id)");
                rentard = Convert.ToInt32(Console.ReadLine());                // se guarda el id para rentar el auto correspopndiente del id
                if (lista[rentard].Cant == 0)
                {
                    Console.WriteLine("No hay mas autos.");
                    Console.ReadKey();
                    Console.Clear();
                }
                else
                {
                    if (rentard > lista.Count)
                    {
                        Console.WriteLine("Opcion Invalida");
                    }
                    else
                    {
                        Console.Clear();
                        Ford rentado = new Ford();
                        Console.WriteLine("Ingrese su nombre: ");
                        rentado.Nombrecliente = Console.ReadLine();
                        Console.WriteLine("Marca: " + lista[rentard].Marca + "\nAño: " + lista[rentard].Anio + "\nPrecio: " + lista[rentard].Cantidad); // se muestra el auto que selecciono
                        Console.WriteLine("Cuantos dias quiere rentarlo:");                                                                             // pregunta cuantos dias quiere rentarlo
                        dias  = Convert.ToInt32(Console.ReadLine());
                        total = lista[rentard].Cantidad * dias;                                                                                         //calcula el total
                        lista[rentard].Cant = lista[rentard].Cant - 1;
                        Console.Clear();
                        Console.WriteLine("----------Auto Rentado---------");                        // se muestra el auto rentado con unas caracteristicas
                        Console.WriteLine("Marca: " + lista[rentard].Marca);
                        Console.WriteLine("Renta por dia: " + lista[rentard].Cantidad);
                        Console.WriteLine("Dias rentados: " + dias);
                        Console.WriteLine("Pago total: " + total);
                        Console.WriteLine("-------------------------------");
                        rentado.Id       = lista[rentard].Id;
                        rentado.Marca    = lista[rentard].Marca;
                        rentado.Cantidad = lista[rentard].Cantidad;
                        rentados.Add(rentado);
                    }
                }
            }
            catch (FormatException)
            {
                Console.WriteLine("Opcion invalida");
                goto Inicio;
            }
            Console.ReadKey();
            Console.Clear();
        }
예제 #2
0
        public Menu(List <Auto> lista, List <Auto> vendidos, List <Auto> rentados)
        {
Inicio:
            try            // prueba que la opcion seleccionada sea correcta
            {
                Console.Clear();
                Console.WriteLine("---Bienvenido a Mis Autos---");
                Console.WriteLine("1)Agregar Auto\n2)Mostrar Autos \n3)Rentar Auto \n4)Vender Auto \n5)Guardar y Ver Ventas \n6)Proveedor \n7)Salir");
                Console.WriteLine("----------------------------");
                int menu = Convert.ToInt32(Console.ReadLine()); // la respuesta se guarda en la variable menu.

                Ford       ford       = new Ford();             // se instancian todos los objetos antes de entrar al switch
                AutosRenta autosrenta = new AutosRenta();
                VenderAuto venderAuto = new VenderAuto();
                Operacion  operacion  = new Operacion();
                Proveer    proveer    = new Proveer();

                switch (menu)
                {
                case 1:
                    ford.Agregar(lista);                            // se llama al metodo agregar del objeto ford, pasando la lista
                    break;

                case 2:
                    if (lista == null || lista.Count() == 0)                            // se evalua si la lista esta vacia o no, en caso de que este vacia se regegresa y muestra en mensaje
                    {
                        Console.WriteLine("No hay autos que mostrar.");
                        Console.ReadKey();
                        Console.Clear();
                        goto Inicio;
                    }
                    else
                    {
                        ford.Mostrar(lista);                                // si la lista no esta vacia se llama al metodo mostrar, de igual manera pasando la lista
                    }
                    break;

                case 3:
                    if (lista == null || lista.Count() == 0)                            // se evalua para saber si no esta vacia, y se muestra el mensaje
                    {
                        Console.WriteLine("No hay autos que rentar.");
                        Console.ReadKey();
                        Console.Clear();
                        goto Inicio;
                    }
                    else
                    {
                        autosrenta.Rentar(lista, rentados);                               // se llama al metodo rentar con la lista como parametro
                    }

                    break;

                case 4:
                    if (lista == null || lista.Count() == 0)                            //evalua si la lista esta vacia, sino muestra el mensaje
                    {
                        Console.WriteLine("No hay autos que vender.");
                        Console.ReadKey();
                        Console.Clear();
                        goto Inicio;
                    }
                    else
                    {
                        venderAuto.Vender(lista, vendidos);                                // se llama al metodo vender del objeto venderauto y se pasan dos lista, la lista general de los autos introducidos y la otra donde se guardaran los autos vendidos
                    }
                    break;

                case 5:
                    if (rentados.Count == 0 && vendidos.Count == 0)    // si en la opcion anterior no hay autos vendidos(lista vacia), se mostrara el mensaje
                    {
                        Console.WriteLine("No hay ventas registradas.");
                        Console.ReadKey();
                        Console.Clear();
                        goto Inicio;
                    }
                    else
                    {
                        operacion.Ventas(vendidos, rentados);   // si tienen objetos en la lista se llama el metodo ventas, pasando la lista vendidos.
                    }
                    break;

                case 6:
                    proveer.Surtir(lista);
                    break;

                case 7:
                    Environment.Exit(1);                            // la opcion cierra el programa
                    break;


                default:
                    break;
                }
            }
            catch (FormatException)
            {
                Console.WriteLine("Opcion Invalida");                // esto se da si se introduce una opcion invalida
                goto Inicio;
            }
        }