private void btnNoIncluirProducto_Click(object sender, EventArgs e) { clsNegocioProducto objNegocioProducto = new clsNegocioProducto(); if (dgDetallePaquete.RowCount > 0) { indexDataGrid = dgDetallePaquete.CurrentCell.RowIndex; bool valor = Boolean.Parse(dtDetallePaqueteLogico.Rows[indexDataGrid][6].ToString()); if (valor) { int idProducto = int.Parse(dtDetallePaqueteLogico.Rows[indexDataGrid][1].ToString()); int cantidad = int.Parse(dtDetallePaqueteLogico.Rows[indexDataGrid][4].ToString()); dtDetallePaqueteLogico.Rows[indexDataGrid][6] = false; objNegocioProducto.aumentarCantidad(idProducto, cantidad); DataGridViewRow row = dgDetallePaquete.Rows[indexDataGrid]; row.Cells["Estado"].Value = false; } } }
private void restaurarCantidades() { clsNegocioProducto objNegocioProducto = new clsNegocioProducto(); try { foreach (DataRow fila in dtDetallePaqueteLogico.Rows) { int idProducto = int.Parse(fila[1].ToString()); int cantidad = int.Parse(fila[4].ToString()); if (bool.Parse(fila[6].ToString())) { objNegocioProducto.aumentarCantidad(idProducto, cantidad); } } } catch (Exception) { } }
private void dgDetalleVenta_CellEndEdit(object sender, DataGridViewCellEventArgs e) { clsNegocioProducto objNegocioProducto = new clsNegocioProducto(); string nuevoPrecioTexto = dgDetalleVenta[4, indexCantidad].Value.ToString(); string nuevaCantidadTexto = dgDetalleVenta[3, indexCantidad].Value.ToString(); int idDetalleVenta = int.Parse(dtDetalleVentaLogico.Rows[indexCantidad][0].ToString()); int idProductoLogico = int.Parse(dtDetalleVentaLogico.Rows[indexCantidad][1].ToString()); int nuevaCantidad = int.Parse(nuevaCantidadTexto); DataTable dtProducto = dtProducto = objNegocioProducto.consultarProductoId(idProductoLogico).Tables[0]; int cantidadProducto = int.Parse(dtProducto.Rows[0][7].ToString()); int antiguaCantidad = int.Parse(dtDetalleVentaLogico.Rows[indexCantidad][4].ToString()); double precioProducto = double.Parse(dtProducto.Rows[0][2].ToString()); decimal nuevoPrecio = decimal.Parse(nuevoPrecioTexto); if (flagDesbloquear) { if (e.ColumnIndex == 3) { if (nuevaCantidad >= 0) { if (idProductoLogico != 0) { if (antiguaCantidad < nuevaCantidad) { if (nuevaCantidad <= antiguaCantidad + cantidadProducto) { int cantidad = nuevaCantidad - antiguaCantidad; if (objNegocioDetalleVenta.modificarCantidad(idDetalleVenta, nuevaCantidad, precioProducto)) { objNegocioProducto.disminuirCantidad(idProductoLogico, cantidad); dtDetalleVentaLogico.Rows[indexCantidad][4] = nuevaCantidad; dtDetalleVentaLogico.Rows[indexCantidad][5] = nuevaCantidad * precioProducto; dgDetalleVenta[5, indexCantidad].Value = nuevaCantidad * precioProducto; } } else { MessageBox.Show("Cantidad de producto no disponible"); dtDetalleVentaLogico.Rows[indexCantidad][4] = antiguaCantidad; dtDetalleVentaLogico.Rows[indexCantidad][5] = antiguaCantidad * precioProducto; dgDetalleVenta[3, indexCantidad].Value = antiguaCantidad; return; } } if (antiguaCantidad > nuevaCantidad) { int cantidad = antiguaCantidad - nuevaCantidad; if (objNegocioDetalleVenta.modificarCantidad(idDetalleVenta, nuevaCantidad, precioProducto)) { objNegocioProducto.aumentarCantidad(idProductoLogico, cantidad); dtDetalleVentaLogico.Rows[indexCantidad][4] = nuevaCantidad; dtDetalleVentaLogico.Rows[indexCantidad][5] = nuevaCantidad * precioProducto; dgDetalleVenta[5, indexCantidad].Value = nuevaCantidad * precioProducto; } } } else { MessageBox.Show("No se puede modificar la cantidad de un producto que no es parte del paquete"); } } } if (e.ColumnIndex == 4) { if (nuevoPrecio >= 0) { if (idProductoLogico != 0) { if (objNegocioDetalleVenta.modificarPrecio(idDetalleVenta, nuevoPrecio)) { decimal resultado = antiguaCantidad * nuevoPrecio; dgDetalleVenta[5, indexCantidad].Value = resultado.ToString(); } else { MessageBox.Show("No se puede modificar el precio del producto"); } } } } sumarVenta(); } }
private void dgDetallePaquete_CellEndEdit(object sender, DataGridViewCellEventArgs e) { DataTable dtProducto = new DataTable(); clsNegocioProducto objNegocioProducto = new clsNegocioProducto(); int nuevaCantidad; //MessageBox.Show(); string nuevaCantidadTexto = dgDetallePaquete[3, indexCantidad].Value.ToString(); Int32.TryParse(nuevaCantidadTexto, out nuevaCantidad); if (e.ColumnIndex == 3) { if (nuevaCantidad > 0) { int idProducto = int.Parse(dtDetallePaqueteLogico.Rows[indexCantidad][1].ToString()); dtProducto = objNegocioProducto.consultarProductoId(idProducto).Tables[0]; int cantidadProducto = int.Parse(dtProducto.Rows[0][7].ToString()); int antiguaCantidad = int.Parse(dtDetallePaqueteLogico.Rows[indexCantidad][4].ToString()); double precioProducto = double.Parse(dtProducto.Rows[0][2].ToString()); bool estadoProduto = bool.Parse(dtDetallePaqueteLogico.Rows[indexCantidad][6].ToString()); int idProductoLogico = int.Parse(dtDetallePaqueteLogico.Rows[indexCantidad][0].ToString()); if (idProductoLogico != 0) { if (estadoProduto) { if (antiguaCantidad < nuevaCantidad) { if (nuevaCantidad <= antiguaCantidad + cantidadProducto) { int cantidad = nuevaCantidad - antiguaCantidad; objNegocioProducto.disminuirCantidad(idProducto, cantidad); } else { MessageBox.Show("Cantidad de producto no disponible"); dtDetallePaqueteLogico.Rows[indexCantidad][4] = antiguaCantidad; dtDetallePaqueteLogico.Rows[indexCantidad][5] = antiguaCantidad * precioProducto; dgDetallePaquete[3, indexCantidad].Value = antiguaCantidad; return; } } else { int cantidad = antiguaCantidad - nuevaCantidad; objNegocioProducto.aumentarCantidad(idProducto, cantidad); } dtDetallePaqueteLogico.Rows[indexCantidad][4] = nuevaCantidad; dtDetallePaqueteLogico.Rows[indexCantidad][5] = nuevaCantidad * precioProducto; } else { MessageBox.Show("No se puede modificar la cantidad de un producto que no es parte del paquete"); } } else { dgDetallePaquete[3, indexCantidad].Value = antiguaCantidad; return; } } } }