private void btnCambiar_Click(object sender, EventArgs e) { SQLC Sql = new SQLC(); Sql.ConsultarCantidad(dtgProductos); if (Sql.CantidadesD == true) { } else { var selectedState = cmbState.SelectedValue; using (var donJuan = new BD_DONJUANEntities()) { if ((string)selectedState == PEDIDO.EstadosPedido["Entregado"]) { if (selectedPedido != null) { var productos = donJuan.PRODUCTO_MOVIMIENTO.Include("PRODUCTO").Where(x => x.PEDIDO_ID == selectedPedido.PEDIDO_ID).ToList(); updateInventory(productos); } } var pedido = donJuan.PEDIDOes.Where(x => x.PEDIDO_ID == selectedPedido.PEDIDO_ID).FirstOrDefault(); if (pedido != null) { pedido.ESTADO = (string)selectedState; } donJuan.SaveChanges(); MessageBox.Show("Se actualizo el estado del pedido!"); init(); } } }
private void btnRegistrarCompra_Click(object sender, EventArgs e) { var compra = new COMPRA(); if (!(productosCompra.Count() > 0)) { ShowErrorBox("No ha seleccionado productos!"); return; } V.BRegistrarCompra(txtSubTotal, txtTotal, txtFactura, ErrorP1); if (V.VRegistrarCompra(txtSubTotal, txtTotal, txtFactura, ErrorP1)) { compra.COMPRA_ID = Convert.ToInt32(txtCompraID.Text); compra.SUBTOTAL = Convert.ToDecimal(txtSubTotal.Text); compra.TOTAL = Convert.ToDecimal(txtTotal.Text); compra.FECHA = Convert.ToDateTime(dtpFecha.Text); compra.FACTURA = txtFactura.Text; compra.PROVEEDOR_ID = Convert.ToInt32(provee); compra.PRODUCTO_MOVIMIENTO = productosCompra; using (var donJuan = new BD_DONJUANEntities()) { foreach (var item in productosCompra) { donJuan.Entry(item.PRODUCTO).State = System.Data.Entity.EntityState.Modified; donJuan.PRODUCTO_MOVIMIENTO.Add(item); } donJuan.COMPRAs.Add(compra); donJuan.SaveChanges(); updateInventory(compra.PRODUCTO_MOVIMIENTO.ToList()); MessageBox.Show("Se agrego una Compra!"); init(); } } }
public void updateInventory(List <PRODUCTO_MOVIMIENTO> productosMovimiento) { using (var donJuan = new BD_DONJUANEntities()) { foreach (var producto in productosMovimiento) { var multiplier = (producto.TIPO == PRODUCTO_MOVIMIENTO.TiposMovimiento["COMPRA"]) ? 1 : -1; var cantidad = (producto.CANTIDAD ?? 0) * multiplier; //var element = donJuan.INVENTARIOs.ToList(); var element = donJuan.INVENTARIOs.Where(x => x.PRODUCTO.PRODUCTO_ID == producto.PRODUCTO_ID).FirstOrDefault(); if (element != null) { element.CANTIDAD += cantidad; } } donJuan.SaveChanges(); } }