예제 #1
0
파일: Program.cs 프로젝트: jhconde/UBA_CAI
        private static void ExtraerLata(Expendedora expendedora)
        {
            if (!expendedora.Encendida)
            {
                Console.WriteLine("Maquina apagada");
                return;
            }
            if (expendedora.EstaVacia())
            {
                Console.WriteLine("Maquina Vacia");
                return;
            }
            ListarStockDetalle(expendedora);
            string codigoCompuesto = ConsolaHelper.PedirString("Codigo (formato 'codigo-volumen'): ");
            double dinero          = ConsolaHelper.PedirDouble("Dinero: ");
            Lata   lata;

            try
            {
                lata = expendedora.ExtraerLata(codigoCompuesto, dinero);
            } catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
                return;
            }
            Console.WriteLine("Lata extraida: " + lata);
        }
예제 #2
0
 //ExtraerLata
 public static void ExtraerLata(Expendedora Exp)
 {
     if (Exp.Encendida == true)
     {
         if (Exp.EstaVacia() is false)
         {
             try
             {
                 //Se listan los códigos previamente establecidos
                 ConsolaHelper.ListarCodigos();
                 //Ingresar Código (tiene que ser válido)
                 string codigo = ConsolaHelper.PedirString("Código de la Lata que desea extraer.");
                 //Ingresar Dinero
                 double dinero = ConsolaHelper.PedirDouble("Ingrese el dinero para comprar la lata.", 0, 100, "Ingrese el dinero nuevamente.");
             }
             catch (CodigoInvalidoException ex)
             {
                 Console.WriteLine(ex.Message);
             }
         }
         else
         {
             Console.WriteLine("La máquina está vacia. No hay latas para extraer.");
             Console.WriteLine("Ingrese una tecla para volver al Menú Principal.");
         }
     }
     else
     {
         Console.WriteLine("La máquina no está encendida");
         Console.WriteLine("Ingrese una tecla para volver al Menú Principal y encederla.");
     }
     Console.ReadKey();
 }
예제 #3
0
        private void button4_Click(object sender, EventArgs e)
        {
            if (!_expendedora.Encendida)
            {
                MessageBox.Show("Maquina apagada");
                return;
            }
            if (_expendedora.EstaVacia())
            {
                MessageBox.Show("Maquina Vacia");
                return;
            }
            ExtraerLataForm f = new ExtraerLataForm(_expendedora);

            f.Owner = this;
            f.Show();
        }
        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");
            }
        }
 static void MostrarStock(Expendedora expendedora)
 {
     if (Program.EstaEncendida(expendedora) && !expendedora.EstaVacia())
     {
         Console.WriteLine(string.Format("El stock disponible en la expendedora {0} es {1}.", expendedora, expendedora.GetCapacidadRestante()));
         foreach (Lata l in expendedora.Latas)
         {
             Console.WriteLine(expendedora.GetStock(l, expendedora.Latas));
             Console.WriteLine(l.ToString());
         }
     }
     else if (expendedora.EstaVacia())
     {
         throw new CapacidadInsuficienteException();
     }
     else
     {
         Console.WriteLine("La máquina expendedora se encuentra apagada. Encender");
     }
 }
예제 #6
0
 private static void MostrarStock(Expendedora app)
 {
     if (app.EstaVacia())
     {
         Console.WriteLine("La máquina expendedora no posee stock.");
     }
     else
     {
         foreach (Lata l in app.Latas)
         {
             Console.WriteLine(String.Format("{0} - {1} ${2} / $/L {3}", l.Nombre, l.Sabor, l.Precio, l.GetPrecioPorLitro()));
         }
     }
 }
        private string ObtenerStock()
        {
            string stock = "";

            if (_expendedora.EstaVacia())
            {
                stock = "La máquina expendedora no posee stock.";
            }
            else
            {
                foreach (Lata l in _expendedora.Latas)
                {
                    stock += String.Format("{0} - {1} ${2} / $/L {3}", l.Nombre, l.Sabor, l.Precio, l.GetPrecioPorLitro() + "\n");
                }
            }
            return(stock);
        }
예제 #8
0
파일: Program.cs 프로젝트: jhconde/UBA_CAI
        private static void MostrarStock(Expendedora expendedora)
        {
            if (!expendedora.Encendida)
            {
                Console.WriteLine("Maquina apagada");
                return;
            }
            if (expendedora.EstaVacia())
            {
                Console.WriteLine("Maquina Vacia");
                return;
            }
            String stock = "";

            for (int i = 0; i < expendedora.Latas.Count; i++)
            {
                stock = stock + expendedora.Latas[i] + "\n";
            }
            Console.WriteLine(stock);
        }