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"); } }
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 ListarCodigos(Expendedora expendedora) { Console.WriteLine(LataHelper.ListarVariedades()); }