private void button3_Click(object sender, EventArgs e) { if (tNombreProducto.Text != "" || tCodigoProducto.Text != "") { producto.Clear(); string archivo = "inventario.txt"; FileStream stream = new FileStream(archivo, FileMode.Open, FileAccess.Read); StreamReader reader = new StreamReader(stream); while (reader.Peek() > -1) { Productos pt = new Productos(); pt.NombreProducto = reader.ReadLine(); pt.PrecioProducto = Convert.ToDecimal(reader.ReadLine()); pt.CodigoProducto = reader.ReadLine(); pt.CantidadProducto = Convert.ToInt16(reader.ReadLine()); producto.Add(pt); } reader.Close(); int v = 0; for (int i = 0; i < producto.Count; i++) { if (producto[i].NombreProducto == tNombreProducto.Text.ToUpper() || producto[i].CodigoProducto == tCodigoProducto.Text) { v++; if (tPrecio.Text != "") { producto[i].PrecioProducto = Convert.ToDecimal(tPrecio.Text); } if (tCantidadProducto.Text != "") { producto[i].CantidadProducto = Convert.ToInt16(tCantidadProducto.Text); } } } if (v == 0) { MessageBox.Show("Producto inexistente"); } else if (v > 0) { string archivo2 = "inventario.txt"; FileStream stream2 = new FileStream(archivo2, FileMode.Open, FileAccess.Write); StreamWriter writer = new StreamWriter(stream2); for (int x = 0; x < producto.Count; x++) { writer.WriteLine(producto[x].NombreProducto); writer.WriteLine(Convert.ToString(producto[x].PrecioProducto)); writer.WriteLine((producto[x].CodigoProducto)); writer.WriteLine(Convert.ToString(producto[x].CantidadProducto)); } writer.Close(); tNombreProducto.Text = ""; tPrecio.Text = ""; tCodigoProducto.Text = ""; tCantidadProducto.Text = ""; tNombreProducto.Focus(); } } else { MessageBox.Show("Llene los espacios necesarios"); } }
private void button2_Click(object sender, EventArgs e) { if (texVentaCodigo.Text != "") { produc.Clear(); string archi = "inventario.txt"; FileStream stream2 = new FileStream(archi, FileMode.Open, FileAccess.Read); StreamReader reader = new StreamReader(stream2); while (reader.Peek() > -1) { Productos pt = new Productos(); pt.NombreProducto = reader.ReadLine(); pt.PrecioProducto = Convert.ToDecimal(reader.ReadLine()); pt.CodigoProducto = reader.ReadLine(); pt.CantidadProducto = Convert.ToInt16(reader.ReadLine()); produc.Add(pt); } reader.Close(); int contador = 0, existe = 0; decimal precio = 0; for (int i = 0; i < produc.Count; i++) { if (produc[i].NombreProducto == texProducto.Text.ToUpper()) { existe++; if (produc[i].CantidadProducto > Convert.ToInt16(texProducCantidad.Text)) { produc[i].CantidadProducto = produc[i].CantidadProducto - Convert.ToInt16(texProducCantidad.Text); contador++; precio = produc[i].PrecioProducto; } } } if (existe > 0) { if (contador > 0) { FileStream stream3 = new FileStream(archi, FileMode.Open, FileAccess.Write); StreamWriter writer3 = new StreamWriter(stream3); for (int x = 0; x < produc.Count; x++) { writer3.WriteLine(produc[x].NombreProducto); writer3.WriteLine(Convert.ToString(produc[x].PrecioProducto)); writer3.WriteLine(produc[x].CodigoProducto); writer3.WriteLine(Convert.ToString(produc[x].CantidadProducto)); } writer3.Close(); decimal subto = precio * Convert.ToDecimal(texProducCantidad.Text); //guardo los datos de la factura con el codigo de compra string n = texVentaCodigo.Text; string exten = ".txt"; string archivo = n + exten; FileStream stream = new FileStream(archivo, FileMode.Append, FileAccess.Write); StreamWriter writer = new StreamWriter(stream); writer.WriteLine(texProducCantidad.Text); writer.WriteLine(texProducto.Text); writer.WriteLine(Convert.ToString(precio)); writer.WriteLine(Convert.ToString(subto)); writer.Close(); dataGridView1.Rows.Add(texProducCantidad.Text, texProducto.Text, precio, subto); datos.Clear(); string archivo4 = @"C:\Users\Hp Demo\Documents\Visual Studio 2012\Projects\PFProgra3\PFProgra3\bin\Debug\productomasvendido.txt"; if (File.Exists(archivo4)) { datos.Clear(); FileStream stream41 = new FileStream(archivo4, FileMode.Open, FileAccess.Read); StreamReader reader41 = new StreamReader(stream41); while (reader41.Peek() > -1) { DatosFac dt = new DatosFac(); dt.Nombreprod = reader41.ReadLine(); dt.Cantidadprod = reader41.ReadLine(); datos.Add(dt); } reader41.Close(); int cont = 0; for (int j = 0; j < datos.Count; j++) { if (datos[j].Nombreprod == texProducto.Text.ToUpper()) { cont++; int cant = Convert.ToInt16(datos[j].Cantidadprod) + Convert.ToInt16(texProducCantidad.Text); datos[j].Cantidadprod = Convert.ToString(cant); } } if (cont > 0) { FileStream stream5 = new FileStream(archivo4, FileMode.Open, FileAccess.Write); StreamWriter writer5 = new StreamWriter(stream5); for (int k = 0; k < datos.Count; k++) { writer5.WriteLine(datos[k].Nombreprod); writer5.WriteLine(datos[k].Cantidadprod); } writer5.Close(); } else { FileStream stream6 = new FileStream(archivo4, FileMode.Append, FileAccess.Write); StreamWriter writer6 = new StreamWriter(stream6); writer6.WriteLine(texProducto.Text.ToUpper()); writer6.WriteLine(texProducCantidad.Text); writer6.Close(); } } else { FileStream stream4 = new FileStream(archivo4, FileMode.Append, FileAccess.Write); StreamWriter writer4 = new StreamWriter(stream4); writer4.WriteLine(texProducto.Text.ToUpper()); writer4.WriteLine(texProducCantidad.Text); writer4.Close(); } totalfac = totalfac + subto; ltotal.Text = Convert.ToString(totalfac); texProducto.Text = ""; texProducCantidad.Text = ""; texProducCantidad.Focus(); } else { MessageBox.Show("Cantidad insuficiente"); } } else { MessageBox.Show("Producto inexistente"); } } else { MessageBox.Show("Primero ingrese el codigo de venta!"); } }