Example #1
0
        private static int numeroGenerador = 1; //Generador de codigo sucesivos para cotizaciones

        public Cotizacion(Vendedor vendedor)
        {
            this.CodigoVendedor  = vendedor.CodigoVendedor;
            FechaHora            = DateTime.Now;
            NumeroIdentificacion = (numeroGenerador++).ToString();
            if (menuCotizacion() == 1)
            {
                PrendaCotizada = new Pantalon();
            }
            else
            {
                PrendaCotizada = new Camisa();
            }
            do
            {
                try
                {
                    Console.Write("Ingrese la cantidad de unidades deseadas: ");
                    CantidadUnidades = int.Parse(Console.ReadLine());
                    if (CantidadUnidades <= 0)
                    {
                        Console.WriteLine("Debe ingresar una cantidad superior a cero");
                    }
                }
                catch (System.FormatException e)
                {
                    Console.WriteLine(e.Message);
                }
            } while (CantidadUnidades <= 0);
        }
        public string CalcularResultado(double precio, int cantidad, string tipoDePrenda, bool esPremium, bool esMangaCorta, bool esCuelloMao, bool esChupin, Vendedor vendedor)
        {
            string     resultado = "";
            Cotizacion cotizacion;

            switch (tipoDePrenda)
            {
            case "Camisa":
                Camisa camisa = new Camisa();
                camisa.EsCuelloMao     = esCuelloMao;
                camisa.EsMangaCorta    = esMangaCorta;
                camisa.EsPremium       = esPremium;
                camisa.PrecioDePrenda  = precio;
                camisa.CantidadElegida = cantidad;
                camisa.PrendaNombre();
                cotizacion = new Cotizacion(cantidad, vendedor, camisa);
                cotizacion.RealizarCotizacion();
                resultado = cotizacion.ResultadoCotizacion.ToString();
                break;

            case "Pantalón":
                Pantalon pantalon = new Pantalon();
                pantalon.EsChupin        = esChupin;
                pantalon.EsPremium       = esPremium;
                pantalon.PrecioDePrenda  = precio;
                pantalon.CantidadElegida = cantidad;
                pantalon.PrendaNombre();
                cotizacion = new Cotizacion(cantidad, vendedor, pantalon);
                cotizacion.RealizarCotizacion();
                resultado = cotizacion.ResultadoCotizacion.ToString();
                break;
            }
            return(resultado);
        }