static void Main(string[] args)
        {
            Tienda   tienda   = new Tienda("La Roperia", "San Martin 123");
            Vendedor vendedor = new Vendedor("Santiago", "Beloqui", 123456);

            Camisa camisaCortaMao = new Camisa(true, true, 200);

            tienda.PrendasEnVenta.Add(camisaCortaMao);
            Camisa camisaCortaNoMao = new Camisa(true, false, 300);

            tienda.PrendasEnVenta.Add(camisaCortaNoMao);
            Camisa camisaLargaMao = new Camisa(false, true, 150);

            tienda.PrendasEnVenta.Add(camisaLargaMao);
            Camisa camisaLargaNoMao = new Camisa(false, false, 350);

            tienda.PrendasEnVenta.Add(camisaLargaNoMao); Pantalon pantalonChupin = new Pantalon(true, 1500);
            tienda.PrendasEnVenta.Add(pantalonChupin);
            Pantalon pantalonNormal = new Pantalon(false, 500);

            tienda.PrendasEnVenta.Add(pantalonNormal);

            MenuManager menuManager = new MenuManager(tienda, vendedor);

            menuManager.IniciarMenu();
        }
Exemple #2
0
        static void Main(string[] args)
        {
            Console.WriteLine("--Cotizador Expres--");
            String linea;
            int    contador = 1;
            bool   salida   = true;

            Direccion direccion = new Direccion();

            direccion.Calle      = "Aristides";
            direccion.Numeracion = 123;
            Tienda tienda = new Tienda();

            tienda.Nombre    = "Nike";
            tienda.direccion = direccion;
            Vendedor vendedor = new Vendedor(1, "Carla", "Bruno");

            vendedor.cotizaciones = new List <Cotizacion>();

            Console.WriteLine($"Nombre tienda: {tienda.Nombre}");
            Console.WriteLine($"Direccion tienda, Calle: {tienda.direccion.Calle} - Numeracion: {tienda.direccion.Calle}");


            while (salida)
            {
                bool premium = true;
                Console.WriteLine("Para prenda premium ingrese true, si no ingrese false ");
                linea = Console.ReadLine();
                try
                {
                    premium = Convert.ToBoolean(linea);
                }
                catch (Exception)
                {
                    Console.WriteLine(" Dato mal ingresado ");
                    continue;
                }

                Prenda prenda1;
                Console.WriteLine("Para camisa ingrese 0, para pantalon ingrese 1");
                linea = Console.ReadLine();

                if (linea == "0")
                {
                    Console.WriteLine("Para manga corta ingrese true, Para manga larga ingrese false ");
                    linea = Console.ReadLine();
                    bool mangaCorta = true;
                    try
                    {
                        mangaCorta = Convert.ToBoolean(linea);
                    }
                    catch (Exception)
                    {
                        Console.WriteLine(" Dato mal ingresado ");
                        continue;
                    }

                    Console.WriteLine("Para cuello Mao ingrese true, Para cuelloMao normal ingrese false ");
                    linea = Console.ReadLine();
                    bool cuelloMao = true;
                    try
                    {
                        cuelloMao = Convert.ToBoolean(linea);
                    }
                    catch (Exception)
                    {
                        Console.WriteLine(" Dato mal ingresado ");
                        continue;
                    }

                    Console.WriteLine($"Precio de camisa: {50} ");
                    prenda1 = new Camisa(mangaCorta, cuelloMao, 50, premium);
                }
                else if (linea == "1")
                {
                    Console.WriteLine("Para chupin ingrese true, si no ingrese false ");
                    linea = Console.ReadLine();
                    bool chupin = true;
                    try
                    {
                        chupin = Convert.ToBoolean(linea);
                    }
                    catch (Exception)
                    {
                        Console.WriteLine(" Dato mal ingresado ");
                        continue;
                    }
                    Console.WriteLine($"Precio de pantalon: {100} ");
                    prenda1 = new Pantalon(chupin, 100, premium);
                }
                else
                {
                    Console.WriteLine(" Dato mal ingresado ");
                    continue;
                }

                Console.WriteLine("Ingrese cantidad");
                linea = Console.ReadLine();
                int        cant        = Convert.ToInt32(linea);
                Cotizacion cotizacion1 = new Cotizacion(contador, vendedor.Id, DateTime.Now, prenda1, cant);

                cotizacion1.realizaCotizacion();

                if (cotizacion1.ResultadoCotiazacion != 0)
                {
                    Console.WriteLine($"Cotizacion: {cotizacion1.ResultadoCotiazacion} \n Prenda: {prenda1.GetType().Name}  ");
                    vendedor.cotizaciones.Add(cotizacion1);
                    contador++;
                }
                else
                {
                    Console.WriteLine("La cotizacion no se pudo realizar.");
                }

                Console.WriteLine(" Continuar y/n ");
                linea = Console.ReadLine();
                if (linea == "n")
                {
                    salida = false;
                }
            }

            Console.WriteLine($"-- Historial cotizaciones vendedor {vendedor.Nombre} -- ");
            foreach (var cotizacionesVendedor in vendedor.cotizaciones)
            {
                Console.WriteLine($"Id: {cotizacionesVendedor.Id}");
                Console.WriteLine($"Fecha: {cotizacionesVendedor.FechaHora }");
                Console.WriteLine($"Prenda: {cotizacionesVendedor.prenda.GetType().Name }");
                Console.WriteLine($"Cantidad: { cotizacionesVendedor.Cantidad }");
                Console.WriteLine($"Cotizacion:  { cotizacionesVendedor.ResultadoCotiazacion }");
            }

            Console.ReadLine();
        }
        public void realizaCotizacion()
        {
            this.prenda.Precio = this.prenda.Precio * this.Cantidad;

            ArrayList arrayList = new ArrayList();

            arrayList.Add(this.prenda);

            foreach (var p in arrayList)
            {
                Type type = p.GetType();
                switch (type.Name)
                {
                case "Camisa":

                    Camisa camisa1 = (Camisa)p;

                    if (camisa1.CuelloMao && camisa1.MangaCorta)
                    {
                        if (Cantidad > Prenda.MangaCortaCuelloMao)
                        {
                            Console.WriteLine($"La cantidad ingresada no puede ser mayor al stock: {Prenda.MangaCortaCuelloMao}");
                            return;
                        }
                        else
                        {
                            Prenda.MangaCortaCuelloMao = Prenda.MangaCortaCuelloMao - Cantidad;
                        }
                    }

                    if (camisa1.CuelloMao && !camisa1.MangaCorta)
                    {
                        if (Cantidad > Prenda.MangaLargaCuelloMao)
                        {
                            Console.WriteLine($"la cantidad ingresada no puede ser mayor al stock{ Prenda.MangaLargaCuelloMao }");
                            return;
                        }
                        else
                        {
                            Prenda.MangaLargaCuelloMao = Prenda.MangaLargaCuelloMao - Cantidad;
                        }
                    }

                    if (!camisa1.CuelloMao && !camisa1.MangaCorta)
                    {
                        if (Cantidad > Prenda.MangaLargaCuelloNormal)
                        {
                            Console.WriteLine($"la cantidad ingresada no puede ser mayor al stock: {Prenda.MangaLargaCuelloNormal}");
                            return;
                        }
                        else
                        {
                            Prenda.MangaLargaCuelloNormal = Prenda.MangaLargaCuelloMao - Cantidad;
                        }
                    }

                    if (!camisa1.CuelloMao && camisa1.MangaCorta)
                    {
                        if (Cantidad > Prenda.MangaCortaCuelloNormal)
                        {
                            Console.WriteLine($"la cantidad ingresada no puede ser mayor al stock: {Prenda.MangaCortaCuelloNormal}");
                            return;
                        }
                        else
                        {
                            Prenda.MangaCortaCuelloNormal = Prenda.MangaCortaCuelloNormal - Cantidad;
                        }
                    }
                    this.ResultadoCotiazacion = camisa1.ModificaPrecio();
                    break;

                case "Pantalon":
                    Pantalon pantalon1 = (Pantalon)p;


                    if (pantalon1.Chupin)
                    {
                        if (Cantidad > Prenda.PantalonChupin)
                        {
                            Console.WriteLine($"la cantidad ingresada no puede ser mayor al stock: {Prenda.PantalonChupin}");
                            return;
                        }
                        else
                        {
                            Prenda.PantalonChupin = Prenda.PantalonChupin - Cantidad;
                        }
                    }

                    if (!pantalon1.Chupin)
                    {
                        if (Cantidad > Prenda.PantalonNormal)
                        {
                            Console.WriteLine($"la cantidad ingresada no puede ser mayor al stock: {Prenda.PantalonNormal}");
                            return;
                        }
                        else
                        {
                            Prenda.PantalonNormal = Prenda.PantalonNormal - Cantidad;
                        }
                    }

                    ResultadoCotiazacion = pantalon1.ModificaPrecio();
                    break;

                default:
                    break;
                }
            }
        }