public IActionResult AgregarBuscarMedicina(string SSearch) { ViewData["CurrentFilterSearch"] = SSearch; Singleton.Instance.NuevaListaCliente.Clear(); InventarioMedicina InfoTotalMedicina = new InventarioMedicina(); if (SSearch != null) { DelegadoString InvocarNombreuscar = new DelegadoString(LlamadoMedBinario.CompareString); MedicinasBinario Buscado = Singleton.Instance.AccesoArbol.Buscar(SSearch, InvocarNombreuscar); if (Buscado == default) { DelegadoInventario delegadoInventario = new DelegadoInventario(LLamadoInventario.CompareName); InventarioMedicina NodoCantidad0 = Singleton.Instance.ListaMedicina.Buscar(Singleton.Instance.ListaMedicina.Header, SSearch, delegadoInventario); Singleton.Instance.NuevaListaCliente.Add(NodoCantidad0); } else { InfoTotalMedicina = Buscado.Posicion.Data; InventarioMedicina NuevoJuga = new InventarioMedicina { NombreMedicina = InfoTotalMedicina.NombreMedicina, Id = InfoTotalMedicina.Id, Descripcion = InfoTotalMedicina.Descripcion, CasaProductora = InfoTotalMedicina.CasaProductora, Precio = InfoTotalMedicina.Precio, Existencia = InfoTotalMedicina.Existencia }; Singleton.Instance.NuevaListaCliente.Add(NuevoJuga); } } //Mostrar InfoTotalMedicina si fue encontrado return(View(Singleton.Instance.NuevaListaCliente)); }
public IActionResult Abastecer()//Abastecer los medicamnetos iguales a 0, a un numero random { Singleton.Instance.Nueva.Clear(); try { while (Singleton.Instance.contadorCero == 0) { DelegadoInventario InvocarExistencia = new DelegadoInventario(LLamadoInventario.CompareExistencia); InventarioMedicina NodoBuscado = Singleton.Instance.ListaMedicina.Buscar(Singleton.Instance.ListaMedicina.Header, "0", InvocarExistencia); Random rnd = new Random(); int numerorand = rnd.Next(1, 15); NodoBuscado.Existencia = numerorand; Nodo <InventarioMedicina> Direccion = Singleton.Instance.ListaMedicina.AddHead(NodoBuscado); MedicinasBinario IngresoArbol = new MedicinasBinario { Nombre = NodoBuscado.NombreMedicina, Posicion = Direccion }; Delagados InvocarNombre = new Delagados(LlamadoMedBinario.CompareToNombre); Singleton.Instance.AccesoArbol.Add(IngresoArbol, InvocarNombre); Singleton.Instance.contadorCero--; } return(RedirectToAction("Index")); } catch (Exception) { return(RedirectToAction("Index")); } }
public IActionResult AceptarCarrito()//codigo donde se aceptan los cambios del carrito { foreach (NodoCarrito Cambios in Singleton.Instance.Carrito) { DelegadoString InvocarNombreuscar = new DelegadoString(LlamadoMedBinario.CompareString); MedicinasBinario Buscado = Singleton.Instance.AccesoArbol.Buscar(Cambios.Nombre, InvocarNombreuscar); InventarioMedicina NodoBuscado = Buscado.Posicion.Data; InventarioMedicina NuevoNodo = NodoBuscado; NuevoNodo.Existencia = NuevoNodo.Existencia - Cambios.Cantidad; DelegadoInventario delegadoInventario = new DelegadoInventario(LLamadoInventario.CompareName); Singleton.Instance.ListaMedicina.Modificar(Singleton.Instance.ListaMedicina.Header, Cambios.Nombre, NuevoNodo, delegadoInventario); if (medicamentostotales != null) { medicamentostotales += "," + Cambios.Nombre; } else { medicamentostotales = Cambios.Nombre; } string a = Buscado.Posicion.Data.Precio.Replace("$", string.Empty); double precio = Convert.ToDouble(a.ToString()); SumaTotal += Cambios.Cantidad * precio; if (medicamentostotales != null) { medicamentostotales += "," + Cambios.Nombre; } else { medicamentostotales = Cambios.Nombre; } if (NuevoNodo.Existencia <= 0) { DelegadoString ComparacionBorrar = new DelegadoString(LlamadoMedBinario.CompareString); Singleton.Instance.AccesoArbol.Eliminar(Buscado.Nombre, ComparacionBorrar); if (NuevoNodo.Existencia == 0) { Singleton.Instance.contadorCero++; } } } return(RedirectToAction("OrdenCliente")); }