public void Editar(NodoFarmacos NodoAuxFarmaco, int Borrar) { int NumeroLinea = 1; string Linea; using (StreamReader ArchivoLectura = new StreamReader(RutaBase)) { using (StreamWriter ArchivoLimpiar = new StreamWriter(RutaArchivoAux)) { ArchivoLimpiar.WriteLine(ArchivoLectura.ReadLine()); ArchivoLimpiar.Flush(); } using (StreamWriter ArchivoEscritura = new StreamWriter(RutaArchivoAux, true)) { do { Linea = ArchivoLectura.ReadLine(); if (NumeroLinea == NodoAuxFarmaco.ID) { int Posicion = Linea.Length - 1; if (Borrar > 10) { Posicion = Linea.Length - 2; } Linea = Linea.Substring(0, Posicion); Linea += NodoAuxFarmaco.Inventario; } ArchivoEscritura.WriteLineAsync(Linea); ArchivoEscritura.Flush(); NumeroLinea++; } while (Linea != null); } } System.IO.File.Copy(RutaArchivoAux, RutaBase, true); }
public Farmacos ObtenerFarmaco(NodoFarmacos NodoAuxFarmaco) { Farmacos FarmacoMostrar = new Farmacos(); using (TextFieldParser Archivo = new TextFieldParser(RutaBase)) { Archivo.TextFieldType = FieldType.Delimited; Archivo.SetDelimiters(","); while (!Archivo.EndOfData) { try { if (NodoAuxFarmaco.ID == Archivo.LineNumber - 1) { string[] Texto = Archivo.ReadFields(); FarmacoMostrar.ID = Convert.ToInt32(Texto[0]); FarmacoMostrar.Nombre = Texto[1]; FarmacoMostrar.Descripcion = Texto[2]; FarmacoMostrar.CasaProductora = Texto[3]; FarmacoMostrar.Precio = Convert.ToDouble(Texto[4].Substring(1)); FarmacoMostrar.Inventario = Convert.ToInt32(Texto[5]); Archivo.ReadToEnd(); } } catch (Exception) { } Archivo.ReadLine(); } } return(FarmacoMostrar); }
public ActionResult Details(string Nombre) { NodoFarmacos NodoAuxFarmaco = new NodoFarmacos(); NodoAuxFarmaco.Nombre = Nombre; NodoAuxFarmaco = ArbolBusqueda.Get(NodoAuxFarmaco, NodoAuxFarmaco.BuscarNombre); return(View(NodoAuxFarmaco)); }
public ActionResult Details(int id) { NodoFarmacos NodoAuxFarmaco = new NodoFarmacos(); NodoAuxFarmaco.ID = id; NodoAuxFarmaco = ArbolBusqueda.Get(NodoAuxFarmaco, NodoAuxFarmaco.BuscarID); return(View(NodoAuxFarmaco)); }
public IActionResult ImportarFarmacos(IFormFile ArchivoCargado) { if (ArchivoCargado.FileName.Contains(".csv")) { string Ruta = Path.Combine(Environment.WebRootPath, "Documentos/"); RutaArchivoAux = Ruta + "AchivoAux.csv"; RutaBase = Path.Combine(Ruta, "ArchivoOriginal.csv"); if (!Directory.Exists(Ruta)) { Directory.CreateDirectory(Ruta); } using (FileStream stream = new FileStream(Path.Combine(Ruta, "ArchivoOriginal.csv"), FileMode.Create)) { ArchivoCargado.CopyTo(stream); } using (FileStream stream2 = new FileStream(Path.Combine(Ruta, "AchivoAux.csv"), FileMode.Create)) { ArchivoCargado.CopyTo(stream2); } using (TextFieldParser Archivo = new TextFieldParser(RutaBase)) { Archivo.TextFieldType = FieldType.Delimited; Archivo.SetDelimiters(","); while (!Archivo.EndOfData) { string[] Texto = Archivo.ReadFields(); NodoFarmacos NodoFarmaco = new NodoFarmacos(); try { NodoFarmaco.ID = Convert.ToInt32(Texto[0]); NodoFarmaco.Nombre = Texto[1]; NodoFarmaco.Descripcion = Texto[2]; NodoFarmaco.Productora = Texto[3]; NodoFarmaco.Precio = Texto[4]; NodoFarmaco.Inventario = Convert.ToInt32(Texto[5]); ArbolBusqueda.Add(NodoFarmaco, NodoFarmaco.BuscarNombre); } catch (Exception) { } } ViewBag.Farmacos = ArbolBusqueda.Mostrar(); return(View("Index")); } } else { return(View("ImportarFarmacos")); } }
public ActionResult EditarFarmaco(IFormCollection collection) { NodoFarmacos EditarFarmaco = new NodoFarmacos(); EditarFarmaco.Nombre = collection["Nombre"]; EditarFarmaco = ArbolBusqueda.Get(EditarFarmaco, EditarFarmaco.BuscarNombre); int Descontar = int.Parse(collection["Inventario"]); Farmacos FarmacoAux = ObtenerFarmaco(EditarFarmaco); if (EditarFarmaco.Inventario >= Descontar && Descontar >= 0) { //Borra el nodo de un farmaco exitente if (NuevoPedido.PedidoFarmacos.Exists(x => x.Nombre == EditarFarmaco.Nombre)) { FarmacoAux = NuevoPedido.PedidoFarmacos.Find(x => x.Nombre == EditarFarmaco.Nombre); NuevoPedido.PedidoFarmacos.Remove(FarmacoAux); } //Resta la cantidad a Inventario EditarFarmaco.Inventario -= Descontar; //Edita el Nodo en el Arbol ArbolBusqueda.Edit(EditarFarmaco, EditarFarmaco.BuscarNombre); //Agrego la Cantidad Caprada al producto FarmacoAux.CantidadComprada += Descontar; FarmacoAux.PrecioTotal = Math.Round(FarmacoAux.Precio * Descontar, 2); NuevoPedido.PedidoFarmacos.Add(FarmacoAux); NuevoPedido.Total = 0; foreach (Farmacos item in NuevoPedido.PedidoFarmacos) { NuevoPedido.Total += item.PrecioTotal; } if (EditarFarmaco.Inventario == 0) { FarmacosVacios.Add(EditarFarmaco); ArbolBusqueda.Delete(EditarFarmaco, EditarFarmaco.BuscarNombre); } Editar(EditarFarmaco, Descontar); ViewBag.Farmacos = NuevoPedido.PedidoFarmacos; return(View("RealizarPedidos", NuevoPedido)); } else { return(View("AgregarFarmaco", FarmacoAux)); } }
public ActionResult BuscarFarmacos(string Texto, IFormCollection collection) { NuevoPedido.NombreCliente = collection["NombreCliente"]; NuevoPedido.Nit = collection["Nit"]; NuevoPedido.Direccion = collection["Direccion"]; NodoFarmacos NodoAuxFarmaco = new NodoFarmacos(); NodoAuxFarmaco.Nombre = Texto; NodoAuxFarmaco = ArbolBusqueda.Get(NodoAuxFarmaco, NodoAuxFarmaco.BuscarNombre); if (NodoAuxFarmaco != null) { return(View("AgregarFarmaco", ObtenerFarmaco(NodoAuxFarmaco))); } else { ViewBag.Farmacos = NuevoPedido.PedidoFarmacos; return(View("RealizarPedidos", NuevoPedido)); } }