private void button2_Click(object sender, EventArgs e) { int dias = 0; string fecha_credito = "0000-00-00 00:00:00"; string pagado = "SI"; if (chkContado.Checked != true) { dias = Convert.ToInt16(txtdias.Text); fecha_credito = dtVencimiento.Text + " 00:00:00"; pagado = "NO"; } Models.Compras compra = new Models.Compras( 0, txtFolio.Text, dtFecha.Text + " 00:00:00", dtFechaDoc.Text + " 00:00:00", txtNumero.Text, "A", dias, fecha_credito, pagado, Convert.ToDouble(txtSubtotal.Text), Convert.ToDouble(txtiva.Text), Convert.ToDouble(txttotal.Text), Convert.ToDouble(txtdescuento.Text) ); using (compra) { compra.crateCompra(); List <Models.Compras> resultado = compra.GetlastCompras(dtFecha.Text + " 00:00:00", dtFechaDoc.Text + " 00:00:00", txtNumero.Text, Convert.ToDouble(txttotal.Text)); Purchases detalles = new Purchases(); detalles.Id = 0; detalles.Id_compra = resultado[0].Id; Kardex kardex = new Kardex(); Product producto = new Product(); Afecta_inv afecta = new Afecta_inv(); Caducidades Caducida = new Caducidades(); Caducida.Id = 0; Caducida.Id_compra = resultado[0].Id; double nuevo = 0; foreach (DataGridViewRow row in dtProductos.Rows) { using (producto) { List <Product> prod = producto.getProductById(Convert.ToInt16(row.Cells["id_producto"].Value.ToString())); nuevo = Convert.ToInt16(row.Cells["cantidad"].Value.ToString()); while (prod[0].Parent != "0") { nuevo = nuevo * Convert.ToInt16(prod[0].C_unidad); prod = producto.getProductById(Convert.ToInt16(prod[0].Parent)); } detalles.Cantidad = Convert.ToDouble(row.Cells["cantidad"].Value.ToString()); detalles.Id_producto = Convert.ToInt16(row.Cells["id_producto"].Value.ToString()); detalles.P_u = Convert.ToDouble(row.Cells["p_u"].Value.ToString()); detalles.Total = Convert.ToDouble(row.Cells["total"].Value.ToString()); using (detalles) { detalles.createPurchases(); Caducida.Id_producto = prod[0].Id; Caducida.Caducidad = row.Cells["caducidad"].Value.ToString(); Caducida.Lote = row.Cells["lote"].Value.ToString(); Caducida.Cantidad = nuevo; using (caducidad) { Caducida.createCaducidad(); } kardex.Fecha = Convert.ToDateTime(dtFecha.Text).ToString(); kardex.Id_producto = prod[0].Id; kardex.Tipo = "C"; kardex.Cantidad = nuevo; kardex.Antes = prod[0].Existencia; kardex.Id = 0; kardex.Id_documento = Convert.ToInt16(resultado[0].Id); using (kardex) { kardex.CreateKardex(); List <Kardex> numeracion = kardex.getidKardex(prod[0].Id, Convert.ToInt16(resultado[0].Id), "C"); using (afecta) { afecta.Agrega(numeracion[0].Id); } } } } } } this.Close(); }
private void button2_Click(object sender, EventArgs e) { bool valido = true; foreach (DataGridViewRow row in dtProductos.Rows) { if (row.DefaultCellStyle.BackColor.Name.ToString() == "Red") { valido = false; } } if (valido == false) { Autenficiar auto = new Autenficiar(); Autenficiar.origen = "Compras"; auto.ShowDialog(); Models.Log historial = new Models.Log(); using (historial) { foreach (DataGridViewRow row in dtProductos.Rows) { if (row.DefaultCellStyle.BackColor.Name.ToString() == "Red") { historial.Id_usuario = Autorizo; historial.Descripcion = "autorizo el ingreso de la compra de " + row.Cells["descripcion"].Value.ToString() + " que llego mas caro "; historial.createLog(); } } } valido = true; } if (valido == true) { int dias = 0; string fecha_credito = "0000-00-00"; string pagado = "SI"; if (chkContado.Checked != true) { dias = Convert.ToInt16(txtdias.Text); fecha_credito = dtVencimiento.Text; pagado = "NO"; } Models.Compras compra = new Models.Compras( 0, txtFolio.Text, dtFecha.Text, dtFechaDoc.Text, txtNumero.Text, "A", dias, fecha_credito, pagado, Convert.ToDouble(txtSubtotal.Text), Convert.ToDouble(txtiva.Text), Convert.ToDouble(txttotal.Text), Convert.ToDouble(txtdescuento.Text), dtRecepcion.Text, Autorizo ); using (compra) { compra.crateCompra(); Models.Log historial = new Models.Log(); using (historial) { historial.Id_usuario = Convert.ToInt32(Inicial.id_usario); historial.Descripcion = "agrego la compra " + txtFolio.Text + "del proveedor " + cbProveedor.Text + " por $ " + txttotal.Text; historial.createLog(); } List <Models.Compras> resultado = compra.GetlastCompras(dtFecha.Text, dtFechaDoc.Text, txtNumero.Text, Convert.ToDouble(txttotal.Text)); Models.Purchases detalles = new Models.Purchases(); detalles.Id = 0; detalles.Id_compra = resultado[0].Id; Models.Kardex kardex = new Models.Kardex(); Models.Product producto = new Models.Product(); Models.Afecta_inv afecta = new Models.Afecta_inv(); Models.Caducidades Caducida = new Models.Caducidades(); Models.prov_prod costos = new Models.prov_prod(); Caducida.Id = 0; Caducida.Id_compra = resultado[0].Id; double nuevo = 0; foreach (DataGridViewRow row in dtProductos.Rows) { using (producto) { List <Models.Product> prod = producto.getProductById(Convert.ToInt16(row.Cells["id_producto"].Value.ToString())); nuevo = Convert.ToDouble(row.Cells["cantidad"].Value.ToString()); while (prod[0].Parent != "0") { nuevo = nuevo * Convert.ToInt16(prod[0].C_unidad); prod = producto.getProductById(Convert.ToInt16(prod[0].Parent)); } detalles.Cantidad = Convert.ToDouble(row.Cells["cantidad"].Value.ToString()); detalles.Id_producto = Convert.ToInt32(row.Cells["id_producto"].Value.ToString()); detalles.P_u = Convert.ToDouble(row.Cells["p_u"].Value.ToString()); detalles.Total = Convert.ToDouble(row.Cells["total"].Value.ToString()); using (detalles) { using (costos) { List <Models.prov_prod> cost = costos.get_costobyproveedorandprodu(Convert.ToInt32(row.Cells["id_producto"].Value.ToString()), Convert.ToInt32(txtNumero.Text)); if (cost.Count > 0) { costos.Id_producto = Convert.ToInt32(row.Cells["id_producto"].Value.ToString()); costos.Id_proveedor = Convert.ToInt32(txtNumero.Text); costos.Cantidad = cost[0].Cantidad; costos.Costo = Convert.ToDouble(row.Cells["p_u"].Value.ToString()); costos.update_from_compra(); } else { costos.Id_producto = Convert.ToInt32(row.Cells["id_producto"].Value.ToString()); costos.Id_proveedor = Convert.ToInt32(txtNumero.Text); costos.Cantidad = Convert.ToDouble(row.Cells["cantidad"].Value.ToString()); costos.Costo = Convert.ToDouble(row.Cells["p_u"].Value.ToString()); costos.create(); } } detalles.createPurchases(); if (row.Cells["lote"].Value.ToString() != "") { Caducida.Id_producto = prod[0].Id; Caducida.Caducidad = row.Cells["caducidad"].Value.ToString(); Caducida.Lote = row.Cells["lote"].Value.ToString(); Caducida.Cantidad = nuevo; using (caducidad) { Caducida.createCaducidad(); } } kardex.Fecha = Convert.ToDateTime(dtFecha.Text).ToString(); kardex.Id_producto = prod[0].Id; kardex.Tipo = "C"; kardex.Cantidad = nuevo; kardex.Antes = prod[0].Existencia; kardex.Id = 0; kardex.Id_documento = Convert.ToInt16(resultado[0].Id); using (kardex) { kardex.CreateKardex(); List <Models.Kardex> numeracion = kardex.getidKardex(prod[0].Id, Convert.ToInt16(resultado[0].Id), "C"); using (afecta) { afecta.Agrega(numeracion[0].Id); } } } } } } foreach (DataGridViewRow row in dtDocumentos.Rows) { Models.Ordenes_compra ordenes = new Models.Ordenes_compra(); using (ordenes) { ordenes.Id = Convert.ToInt32(row.Cells["documento"].Value.ToString()); ordenes.Terminado = true; ordenes.termina_orden(); } } this.Close(); } }