private void CompletarFormulario(Lata seleccionada)
        {
            switch (seleccionada.Codigo)
            {
            case "CO1":
                cmbCodigo.SelectedIndex = 1;
                break;

            case "CO2":
                cmbCodigo.SelectedIndex = 2;
                break;

            case "SP1":
                cmbCodigo.SelectedIndex = 3;
                break;

            case "SP2":
                cmbCodigo.SelectedIndex = 4;
                break;

            case "FA1":
                cmbCodigo.SelectedIndex = 5;
                break;

            case "FA2":
                cmbCodigo.SelectedIndex = 6;
                break;

            default:
                cmbCodigo.SelectedIndex = 0;
                break;
            }
            txtVolumen.Text = seleccionada.Volumen.ToString();
        }
예제 #2
0
        static void ingresarLata(Maquina maq)
        {
            Console.WriteLine("ingrese codigo");
            String codigo = Console.ReadLine();

            Console.WriteLine("ingrese nombre");
            String nombre = Console.ReadLine();

            Console.WriteLine("ingrese sabor");
            String sabor = Console.ReadLine();

            Console.WriteLine("ingrese precio");
            Double precio;

            if (!double.TryParse(Console.ReadLine(), out precio))
            {
                throw new ArgumentException("no es un double");
            }
            Double volumen;

            if (!double.TryParse(Console.ReadLine(), out volumen))
            {
                throw new ArgumentException("no es un double");
            }
            int cantidad;

            if (!int.TryParse(Console.ReadLine(), out cantidad))
            {
                throw new ArgumentException("no es un double");
            }
            Lata lata = new Lata(codigo, nombre, sabor, precio, volumen, cantidad);

            maq.agregarLata(lata);
        }
        static void IngresarLata(Expendedora expendedora)
        {
            if (Program.EstaEncendida(expendedora))
            {
                Console.WriteLine(LataHelper.ListarVariedades());
                Program.IngresarLata(expendedora);

                try
                {
                    string codigo  = Validations.StringInsert("Ingrese el codigo del producto").ToUpper();
                    double precio  = Validations.DoubleInsert("Ingrese el precio del producto", 0, 10000);
                    double volumen = Validations.DoubleInsert("Ingrese el volumen del producto", 0, 10000);
                    Lata   lata    = new Lata(codigo, precio, volumen);
                    expendedora.AgregarLata(lata);
                }
                catch (CodigoInvalidoException e)
                {
                    Console.WriteLine(e.Message + "Ingrese el producto nuevamente.");
                    Program.IngresarLata(expendedora);
                }
                catch (CapacidadInsuficienteException e)
                {
                    Console.WriteLine(e.Message);
                }
            }
            else
            {
                Console.WriteLine("La máquina expendedora se encuentra apagada. Encender");
            }
        }
예제 #4
0
파일: Program.cs 프로젝트: jhconde/UBA_CAI
 private static void IngresarLata(Expendedora expendedora)
 {
     if (expendedora.Encendida)
     {
         if (expendedora.GetCapacidadRestante() == 0)
         {
             Console.WriteLine("Maquina llena");
             return;
         }
         ListarLatasElegibles();
         string codigo = ConsolaHelper.PedirString("Codigo: ");
         if (!ExpendedoraHelper.EsCodigoValido(codigo))
         {
             Console.WriteLine("Codigo invalido");
             return;
         }
         double precio  = ConsolaHelper.PedirDouble("Precio: ");
         double volumen = ConsolaHelper.PedirDouble("Volumen: ");
         string marca   = ExpendedoraHelper.ObtenerMarca(codigo);
         string sabor   = ExpendedoraHelper.ObtenerSabor(codigo);
         Lata   lata    = new Lata(codigo, marca, sabor, precio, volumen);
         expendedora.AgregarLata(lata);
     }
     else
     {
         Console.WriteLine("Maquina apagada");
     }
 }
예제 #5
0
        private void Button1_Click(object sender, EventArgs e)
        {
            try
            {
                if (exp.Encendida)
                {
                    Lata l = new Lata(comboBox1.Text, Marca(), Sabor(),
                                      Convert.ToDouble(textBox1.Text),
                                      Convert.ToDouble(textBox2.Text));


                    exp.agregarLata(l);
                    MessageBox.Show("La lata de " + Marca() + " " + Sabor() + " ha sido agregada.");
                    comboBox1.SelectedIndex = -1;
                    textBox1.Clear();
                    textBox2.Clear();
                }
                else
                {
                    MessageBox.Show("Encienda la maquina");
                    comboBox1.SelectedIndex = -1;
                    textBox1.Clear();
                    textBox2.Clear();
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
                comboBox1.SelectedIndex = -1;
                textBox1.Clear();
                textBox2.Clear();
            }
        }
예제 #6
0
        private void button1_Click(object sender, EventArgs e)
        {
            if (this.textBox1.Text.Length == 0 ||
                this.textBox2.Text.Length == 0 ||
                this.textBox3.Text.Length == 0)
            {
                MessageBox.Show("Complete todos los campos");
                return;
            }

            string codigo = this.textBox1.Text;

            if (!ExpendedoraHelper.EsCodigoValido(codigo))
            {
                MessageBox.Show("Codigo invalido");
                return;
            }
            double precio  = Double.Parse(this.textBox2.Text);
            double volumen = Double.Parse(this.textBox3.Text);
            string marca   = ExpendedoraHelper.ObtenerMarca(codigo);
            string sabor   = ExpendedoraHelper.ObtenerSabor(codigo);
            Lata   lata    = new Lata(codigo, marca, sabor, precio, volumen);

            _expendedora.AgregarLata(lata);
            MessageBox.Show("Lata Agregada");
            ExpendedoraBaseForm.ActualizarEstado(_expendedora);
        }
예제 #7
0
        public static void ExtraerLata(Maqexp exp)
        {
            try
            {
                Console.WriteLine("Elija el código de lata que desea:\n 1] CO1 - Coca Cola Regular\n2] CO2 - Coca Cola Zero\n3] SP1 - Sprite Regular\n4] SP2 - Sprite Zero\n5] FA1 - Fanta Regular \n6]+ FA2 - Fanta Zero");
                string codigoingresado = Console.ReadLine();
                Console.WriteLine("ingrese el dinero");
                string dineroingresado = Console.ReadLine();
                double dineroingre     = Double.Parse(dineroingresado);

                Lata sacar = exp.Extraerlata(codigoingresado, dineroingre);
            }
            //if (dineroingre > sacar.PRECIO)
            //{ Console.WriteLine("Gracias por su compra, retire su lata y el vuelto"); }
            //else if (dineroingre == sacar.PRECIO)
            //{ Console.WriteLine("Gracias por su compra"); }

            catch (DineroInsuficienteExcepcion mensaje)
            {
                Console.WriteLine(mensaje.Message);
            }
            catch (SinStockExcepción mensaje)
            {
                Console.WriteLine(mensaje.Message);
            }
        }
 public Frm4Venta(Venta venta, Expendedora expendedora, Form formPropietario)
 {
     this.expendedora = expendedora;
     lataExtraida     = venta.LataVendida;
     vuelto           = venta.Vuelto;
     this.Owner       = formPropietario;
     InitializeComponent();
 }
        private void lstLatasIngreso_SelectedIndexChanged(object sender, EventArgs e)
        {
            Lata seleccionada = (Lata)lstLatasIngreso.SelectedItem;

            if (seleccionada != null)
            {
                CompletarFormulario(seleccionada);
            }
        }
예제 #10
0
 static void ingresarLata(Expendedora expendedora)
 {
     if (expendedora.encendida)
     {
         Console.Clear();
         Console.WriteLine(latasPosibles());
         Console.WriteLine("Ingrese código de lata a insertar");
         string codigoLataAIngresar = Console.ReadLine();
         try
         {
             Lata lataAIngresar = new Lata(codigoLataAIngresar);
             Console.WriteLine("Ingrese el precio de venta");
             string precioLataAIngresar = Console.ReadLine();
             if (Convert.ToDouble(precioLataAIngresar) > 0)
             {
                 lataAIngresar.precio = Convert.ToDouble(precioLataAIngresar);
                 Console.WriteLine("Ingrese el volumen de lata");
                 string volumenLataAIngresar = Console.ReadLine();
                 if (Convert.ToDouble(volumenLataAIngresar) > 0)
                 {
                     lataAIngresar.volumen = Convert.ToDouble(volumenLataAIngresar);
                     try
                     {
                         expendedora.agregarLata(lataAIngresar);
                         Console.Clear();
                         Console.WriteLine("Lata " + lataAIngresar.toString() + " fue agregada a la expendedora");
                     }
                     catch (Exception ex)
                     {
                         Console.WriteLine(ex.Message);
                     }
                 }
                 else
                 {
                     Console.Clear();
                     Console.WriteLine("El volumen ingresado es inválido");
                 }
             }
             else
             {
                 Console.Clear();
                 Console.WriteLine("El precio ingresado es inválido");
             }
         }
         catch (Exception ex)
         {
             Console.Clear();
             Console.WriteLine(ex.Message);
         }
     }
     else
     {
         Console.Clear();
         Console.WriteLine("La expendedora está apagada, por favor enciéndala para realizar la operación");
     }
 }
예제 #11
0
 private void ActualizarStockLista()
 {
     this.listView1.Items.Clear();
     for (int i = 0; i < _expendedora.Latas.Count; i++)
     {
         Lata lata = _expendedora.Latas[i];
         this.listView1.Items.Add(lata.Codigo + " - " + lata.Nombre + " " +
                                  lata.Sabor + " " + lata.Volumen + "ml $" + lata.Precio);
     }
 }
예제 #12
0
        private static void MostrarLatasAceptadas(Entidades.Expendedora expendedora)
        {
            var lataCreada = expendedora.Lata.Select(x => x.Codigo).Distinct();

            foreach (var item in lataCreada)
            {
                Lata l = expendedora.Lata.Find(x => x.Codigo == item);
                Console.Clear();
                Console.WriteLine(l.Codigo + " " + l.Nombre + " " + l.Sabor);
            }
        }
예제 #13
0
 static void IngresarLata()
 {
     if (E.MaquinaEncendida())
     {
         Lata L = new Lata();
         PedirDatosLata(L);
         E.AgregarLata(L);
     }
     else
     {
         Console.WriteLine("La máquina no está encendida.");
     }
 }
예제 #14
0
 static void extraerLata(Expendedora expendedora)
 {
     if (expendedora.encendida)
     {
         if (expendedora.latas.Count > 0)
         {
             Console.Clear();
             Console.WriteLine(latasPosibles());
             Console.WriteLine("Ingrese código de lata a comprar");
             string codigoLataAExtraer = Console.ReadLine();
             try
             {
                 Lata lataEncontrada = expendedora.latas.Find(lata => lata.codigo == codigoLataAExtraer);
                 if (lataEncontrada != null)
                 {
                     Console.WriteLine("Ingrese el dinero");
                     string dinero = Console.ReadLine();
                     if (lataEncontrada.precio <= Convert.ToDouble(dinero))
                     {
                         Lata lataExtraida = expendedora.extraerLata(lataEncontrada);
                         Console.Clear();
                         Console.WriteLine("Lata extraida: " + lataExtraida.toString());
                     }
                     else
                     {
                         throw new DineroInsuficienteException();
                     }
                 }
                 else
                 {
                     throw new CodigoInvalidoException();
                 }
             }
             catch (Exception ex)
             {
                 Console.WriteLine(ex.Message);
             }
         }
         else
         {
             Console.Clear();
             Console.WriteLine("La expendedora está vacía");
         }
     }
     else
     {
         Console.WriteLine("La expendedora está apagada, por favor enciéndala para realizar la operación");
     }
 }
예제 #15
0
 static void PedirDatosLata(Lata L)
 {
     Console.WriteLine("Ingrese código de lata: ");
     L.Codigo = Console.ReadLine();
     Console.WriteLine("Ingrese nombre de lata: ");
     L.Nombre = Console.ReadLine();
     Console.WriteLine("Ingrese sabor de lata: ");
     L.Sabor = Console.ReadLine();
     Console.WriteLine("Ingrese precio de lata: ");
     L.Precio = Convert.ToDouble(Console.ReadLine());
     Console.WriteLine("Ingrese volumen de lata: ");
     L.Volumen = Convert.ToDouble(Console.ReadLine());
     Console.WriteLine("Ingrese cantidad de lata: ");
     L.Cantidad = Convert.ToInt32(Console.ReadLine());
 }
예제 #16
0
        private static List <Lata> GetListadoLatas()
        {
            var  listado = new List <Lata>();
            Lata l1      = new Lata();

            l1.Codigo = "CO1";
            l1.Nombre = "Coca Cola";
            l1.Sabor  = "Regular";

            Lata l2 = new Lata();

            l2.Codigo = "CO2";
            l2.Nombre = "Coca Cola";
            l2.Sabor  = "Zero";

            Lata l3 = new Lata();

            l3.Codigo = "SP1";
            l3.Nombre = "Sprite";
            l3.Sabor  = "Regular";

            Lata l4 = new Lata();

            l4.Codigo = "SP2";
            l4.Nombre = "Sprite";
            l4.Sabor  = "Zero";

            Lata l5 = new Lata();

            l5.Codigo = "FA1";
            l5.Nombre = "Fanta";
            l5.Sabor  = "Regular";

            Lata l6 = new Lata();

            l6.Codigo = "FA2";
            l6.Nombre = "Fanta";
            l6.Sabor  = "Zero";

            listado.Add(l1);
            listado.Add(l2);
            listado.Add(l3);
            listado.Add(l4);
            listado.Add(l5);
            listado.Add(l6);

            return(listado);
        }
예제 #17
0
        private void btnAgregar_Click(object sender, EventArgs e)
        {
            try
            {
                Lata lat = new Lata(txtCodigo.Text,
                                    double.Parse(txtPrecio.Text),
                                    double.Parse(txtVolumen.Text));

                _expendedora.AgregarLata(lat);
                MessageBox.Show("La lata ha sido agregada.");
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }
예제 #18
0
        public static Lata recolectarParametros()
        {
            Lata lata3 = new Lata();

            Console.WriteLine("Por favor ingresar codigo");
            lata3.Codigo = Console.ReadLine();
            Console.WriteLine("Por favor ingresar nombre");
            lata3.Nombre = Console.ReadLine();
            Console.WriteLine("Por favor ingresar precio");
            lata3.Precio = Validaciones.validarDouble();
            Console.WriteLine("Por favor ingresar volumen");
            lata3.Volumen = Validaciones.validarDouble();
            Console.WriteLine("Por favor ingresar cantidad");
            lata3.Cantidad = Validaciones.validarInt();
            return(lata3);
        }
예제 #19
0
        public static ExpendedoraMaq MaquinaPrueba()
        {
            expendedora = new ExpendedoraMaq("Test", 250, 100);
            Lata lata1 = new Lata("01", "Fanta", "Naranja", 100, 1000, 10);
            Lata lata2 = new Lata("02", "CocaCola", "Cola", 150, 1000, 20);
            Lata lata3 = new Lata("03", "Mirinda", "Naranja", 75, 1000, 5);
            Lata lata4 = new Lata("04", "Manaos", "Pomelo Blanco", 50, 1250, 30);
            Lata lata5 = new Lata("05", "Nestle", "Agua", 40, 450, 15);

            expendedora.AddLata(lata1);
            expendedora.AddLata(lata2);
            expendedora.AddLata(lata3);
            expendedora.AddLata(lata4);
            expendedora.AddLata(lata5);

            return(expendedora);
        }
        static void ExtraerLata(Expendedora expendedora)
        {
            if (Program.EstaEncendida(expendedora) && !expendedora.EstaVacia())
            {
                Console.WriteLine(LataHelper.ListarVariedades());
                try
                {
                    string codigo  = Validations.StringInsert("Ingrese el codigo del producto");
                    double volumen = Validations.DoubleInsert("Ingrese el volumen del producto", 0, double.MaxValue);
                    double precio  = Validations.DoubleInsert("Ingrese el precio del producto", 0, double.MaxValue);

                    Lata lata = new Lata(codigo, precio, volumen);
                    if (LataHelper.GetCodigoCorrecto(codigo) != "" && expendedora.GetLataSeleccionada(codigo, volumen, precio) != null)
                    {
                        double pago = Validations.DoubleInsert("Ingrese el dinero", 0, double.MaxValue);
                        Console.WriteLine(expendedora.ExtraerLata(lata, pago).ToString());
                    }
                    else if (expendedora.EstaVacia())
                    {
                        throw new CapacidadInsuficienteException();
                    }
                }
                catch (CodigoInvalidoException e)
                {
                    Console.WriteLine(e.Message + "Ingrese el codigo del producto nuevamente.");
                    Program.ExtraerLata(expendedora);
                }
                catch (DineroInsuficienteException e)
                {
                    Console.WriteLine(e.Message + "Comience nuevamente");
                    //Program.ExtraerLata(expendedora); Por si no posee el dinero.
                }
                catch (SinStockException e)
                {
                    Console.WriteLine(e.Message);
                }
            }
            else if (expendedora.EstaVacia())
            {
                throw new CapacidadInsuficienteException();
            }
            else
            {
                Console.WriteLine("La máquina expendedora se encuentra apagada. Encender");
            }
        }
예제 #21
0
        private static void IngresarLata(Expendedora expendedora)
        {
            Console.Write("Ingrese el codigo");
            string c = Console.ReadLine();

            Console.Write("Ingrese el precio");
            double p = double.Parse(Console.ReadLine());

            Console.Write("Ingrese volumen");
            double v = double.Parse(Console.ReadLine());

            Lata lat = new Lata(c, p, v);

            expendedora.AgregarLata(lat);

            Console.WriteLine("Lata ingresada");
        }
        private void btnGuardarLata_Click(object sender, EventArgs e)
        {
            try
            {
                //if (txtNombre.Text == string.Empty || txtSabor.Text == string.Empty || comboBoxCod.Text == string.Empty || txtPrecio.Text == string.Empty || txtSabor.Text == string.Empty)
                //{
                //    MessageBox.Show("Datos obligatorios no ingresados, por favor complete todos los campos");

                //}
                //else if (Convert.ToDouble(txtPrecio.Text) <= 0 || Convert.ToDouble(txtVolumen.Text) <= 0)
                //{
                //    MessageBox.Show("Ingrese valores positivos");
                //}
                //else


                //{
                if (_expendedora.Latas.Count > 8)
                {
                    throw new Exception(Convert.ToString(MessageBox.Show("Capacidad de la maquina insuficiente")));
                }
                else
                {
                    try
                    {
                        Lata l1 = new Lata(comboBoxCod.Text, txtSabor.Text, txtNombre.Text, double.Parse(txtPrecio.Text), double.Parse(txtVolumen.Text));    // agregar los txt

                        _expendedora.AgregarLata(l1);

                        MessageBox.Show("Lata " + l1 + " fue agregada Correctamente");
                    }
                    catch (Exception ex)
                    {
                        MessageBox.Show(ex.Message);
                    }

                    Limpiar(this);
                }
                //}
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }
예제 #23
0
        private static void IngresarLata(Expendedora expendedora)
        {
            try
            {
                string c = ConsolaHelper.PedirString("código");
                double p = ConsolaHelper.PedirDouble("precio $");
                double v = ConsolaHelper.PedirDouble("volumen en L");

                Lata lat = new Lata(c, p, v);
                expendedora.AgregarLata(lat);
                Console.WriteLine("Lata ingresada");
            }
            catch (Exception ex)
            {
                Console.WriteLine("Error en uno de los datos ingresados. " + ex.Message + " Intente nuevamente. \n\n");
                //IngresarLata(expendedora);
            }
        }
예제 #24
0
        private static void AgregarProducto()
        {
            string codigo   = Validador.pedirString("Ingresar codigo");
            string nombre   = Validador.pedirString("Ingresar nombre");
            string sabor    = Validador.pedirString("Ingresar sabor");
            double precio   = Validador.pedirDouble("Ingresar precio");
            int    volumen  = Validador.pedirInt("Ingresar Volumen (en ml)");
            int    cantidad = Validador.pedirInt("Ingresar Cantidad");

            try
            {
                Lata lata = new Lata(codigo, nombre, sabor, precio, volumen, cantidad);
                expendedora.AddLata(lata);
            } catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
            }
        }
예제 #25
0
        public static Lata ingresarLata(Expendedora expendedora)
        {
            Lata lata2 = new Lata();

            Console.Write("Agregar lata" +
                          "\n  por favor ingrese codigo, nombre, precio" +
                          "\n volumen y stock");
            Console.WriteLine("Ingrese codigo: ");
            lata2.Codigo = Console.ReadLine();
            Console.WriteLine("Ingrese nombre: ");
            lata2.Nombre = Console.ReadLine();
            Console.WriteLine("Ingrese nombre: ");
            lata2.Cantidad = Validaciones.validarInt();
            Console.WriteLine("Ingrese nombre: ");
            lata2.Precio = Validaciones.validarDouble();
            Console.WriteLine("Ingrese nombre: ");
            lata2.Volumen = Validaciones.validarDouble();
            return(lata2);
        }
예제 #26
0
 private void BtnIngresarLata_Click(object sender, EventArgs e)
 {
     if (ValidarCampos())
     {
         try
         {
             Lata l = new Lata(txtCodigo.Text, Convert.ToDouble(txtPrecio.Text), Convert.ToDouble(txtVolumen.Text));
             expendedora.AgregarLata(l);
             CargarLista();
             MessageBox.Show("La lata ha sido ingresada exitosamente");
         }
         catch (CapacidadInsuficienteException ex)
         {
             MessageBox.Show(ex.Message);
         }
         catch (FormatException)
         {
             try
             {
                 Convert.ToDouble(txtVolumen.Text);
             }
             catch (FormatException)
             {
                 MessageBox.Show("El formato ingresado de volumen no es el correcto o está vacío");
                 txtVolumen.Text = string.Empty;
             }
             try
             {
                 Convert.ToDouble(txtPrecio.Text);
             }
             catch (FormatException)
             {
                 MessageBox.Show("El formato ingresado de precio no es el correcto o está vacío");
                 txtPrecio.Text = string.Empty;
             }
         }
         catch (Exception ex)
         {
             MessageBox.Show(ex.Message);
         }
     }
 }
예제 #27
0
        private void btnOk_Click(object sender, EventArgs e)
        {
            try
            {
                Lata l = (Lata)cmbVolumenPrecio.SelectedItem;
                _expendedora.ExtraerLata(Convert.ToString(l.Codigo), Convert.ToDouble(txtDinero.Text));

                cmbVolumenPrecio.DataSource = _expendedora.Latas;

                MessageBox.Show("Retire su bebida");


                cmbVolumenPrecio.DataSource = null;
                cmbVolumenPrecio.DataSource = _expendedora.Latas;;
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }
예제 #28
0
        private static void mostrarBalance(Entidades.Expendedora expendedora)
        {
            Console.Clear();
            var lataCreada = expendedora.Lata.Select(x => x.Codigo).Distinct();

            foreach (var item in lataCreada)
            {
                Lata l = expendedora.Lata.Find(x => x.Codigo == item);
                var  cantidadIguales = 0;
                foreach (Lata latita in expendedora.Lata)
                {
                    if (item == latita.Codigo)
                    {
                        cantidadIguales++;
                    }
                }

                Console.WriteLine("Cantidad " + cantidadIguales + " " + l.Codigo + " " + l.Nombre + " " + l.Sabor);
            }
        }
예제 #29
0
        private static void ComprarProducto()
        {
            MostrarProductos();
            string codigo = Validador.pedirString("Elige la que quieras");
            double pago   = Validador.pedirDouble("Ingrese su dinero");
            double vuelto = 0;

            try
            {
                Lata lata = expendedora.VenderLata(codigo, pago, out vuelto);
                Console.WriteLine($"Vendido! {lata.Print}");
                if (vuelto != 0)
                {
                    Console.WriteLine($"Su vuelto: {vuelto}");
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
            }
        }
예제 #30
0
 public void cmbVolumenPrecio_SelectedIndexChanged(object sender, EventArgs e)
 {
     Lata l = (Lata)cmbVolumenPrecio.SelectedItem;
 }