/** * el método generarCompra() inserta una nueva compra a la base de datos y modifica la cantidad existenete llamando al método * actualizarCantidad() de la clase Disolvente * no tiene parámetros * regresa el total de la compra o -1 en case de error */ public int generarCompra() { int status = d.actualizarCantidad(-cantidad); if (status > 0) { SqlCommand cmd; SqlConnection con; int res; String query = String.Format("insert into Compra (clave, idCliente, idDisolvente, cantidad, totalCompra) values ({0}, {1}, {2}, {3}, {4})", clave, idCliente, d.getId(), cantidad, totalC); try { con = Conexion.agregarConexion(); cmd = new SqlCommand(query, con); res = cmd.ExecuteNonQuery(); con.Close(); return(totalC); } catch (Exception ex) { MessageBox.Show("error " + ex.Message); return(-1); } } else { return(-1); } }
/** * el método devolucion() busca la cantidad de productos de una compra específica, elimina la compra y modifica la * cantida de disolventes en existencia de la compra devuelta * no tiene parámetros * regresa 1 o -1 en caso de éxito o error respectivamente */ public int devolucion() { int res = 0; SqlConnection con; SqlCommand cmd1, cmd2; SqlDataReader rd; int cantidadDev = 0, idDisolv = 0; String query1 = String.Format("select cantidad, idDisolvente from Compra where clave={0}", clave); String query2 = String.Format("delete from Compra where clave={0}", clave); try { con = Conexion.agregarConexion(); cmd1 = new SqlCommand(query1, con); rd = cmd1.ExecuteReader(); if (rd.Read()) { cantidadDev = rd.GetInt16(0); idDisolv = rd.GetInt16(1); } d = new Disolvente(idDisolv); d.actualizarCantidad(cantidadDev); rd.Close(); cmd2 = new SqlCommand(query2, con); res = cmd2.ExecuteNonQuery(); con.Close(); return(1); } catch (Exception ex) { MessageBox.Show("error: " + ex); return(-1); } }
private void btHacerPedido_Click(object sender, RoutedEventArgs e) { float present = Conexion.getPresentacion(cbAcidez.SelectedIndex); Disolvente d = new Disolvente(cbAcidez.SelectedIndex + 1, present); int nuevC = d.actualizarCantidad(1000); if (nuevC <= 0) { MessageBox.Show("no se pudo realizar el pedido"); } }