private void MenuCotizarPantalon(PRENDA prendaACotizar, Prenda.TIPO_PRENDA tipoPrenda) { MostrarOpcionesDisponibles(Enum.GetNames(typeof(Pantalon.TIPO)), $"Quark Store. Cotización.\nPrenda: {prendaACotizar}\nTipo de prenda: {tipoPrenda}.\nElija el tipo de pantalón:", out int opc); if (opc == 0) { return; } Pantalon.TIPO pantalonTipo = (Pantalon.TIPO)opc; MostrarOpcionesDisponibles(new string[] { "Confirmar" }, $"Quark Store. Cotización.\nPrenda: {prendaACotizar}\nTipo de prenda: {tipoPrenda}.\nTipo de pantalon: {pantalonTipo}.\n", out opc); if (opc == 0) { return; } if (!Tienda.HayPrenda(pantalonTipo, tipoPrenda)) { Console.WriteLine("No hay prendas para la combinación seleccionada. Presione una tecla para volver al menu principal."); return; } Console.WriteLine("Ingrese la cantidad que desea cotizar:"); int stockDisponible = Tienda.StockDisponiblePantalon(pantalonTipo, tipoPrenda); Console.WriteLine($"Mínimo: 1 Máximo:{stockDisponible}"); Utils.ValidarEntero(1, stockDisponible, out int cantACotizar); Console.Clear(); MostrarOpcionesDisponibles(new string[] { "Confirmar" }, $"Quark Store. Cotización.\nPrenda: {prendaACotizar}\nTipo de prenda: {tipoPrenda}.\nTipo de pantalon: {pantalonTipo}." + $"\nCantidad a cotizar: {cantACotizar}.", out opc); if (opc == 0) { return; } else { Tienda.AgregarCotizacion(VendedorElegido.Codigo, Tienda.TraerPrenda(pantalonTipo, tipoPrenda), cantACotizar); Console.WriteLine("Cotización agregada satisfactoriamente. Presiona una tecla para volver al menu principal."); } }
public Prenda TraerPrenda(Pantalon.TIPO tipo, Prenda.TIPO_PRENDA tipoPrenda) { return(Prendas.First(p => p is Pantalon pan && pan.TipoPantalon == tipo && pan.TipoDePrenda == tipoPrenda)); }
public int StockDisponiblePantalon(Pantalon.TIPO tipo, Prenda.TIPO_PRENDA tipoPrenda) { return(Prendas.Find(p => p is Pantalon pan && pan.TipoDePrenda == tipoPrenda && pan.TipoPantalon == tipo).Stock); }
public bool HayPrenda(Pantalon.TIPO tipo, Prenda.TIPO_PRENDA tipoPrenda) { return(Prendas.Any(p => p is Pantalon pan && pan.TipoPantalon == tipo && pan.TipoDePrenda == tipoPrenda)); }