public Compra_Productos(object compra) { InitializeComponent(); c = (Compra)compra; txt_num_factura.Text = c.Numero_factura; txt_proveedor.Text = c.Dato; txt_tipo.Text = c.Tipo; date_fecha.Value = c.Fecha_factura; date_vencimiento.Value = c.Fecha_vencimiento; txt_estado.Text = c.Estado; // txt_estado.Font.Style = Color.Red; listacarrito = DatosCompra_Producto.getCompra_Producto(c.Id_compra); bdd_carrito.DataSource = listacarrito; for (int x = 0; x < listacarrito.Count; x++) { abonar = ((Compra_Producto)listacarrito[x]).Precio * ((Compra_Producto)listacarrito[x]).Cantidad; string total = (abonar + Convert.ToDecimal(txt_total.Text)).ToString(); txt_total.Text = (Convert.ToDecimal(Math.Round(Convert.ToDecimal(total), 2))).ToString(); bdd_carrito[10, x].Value = abonar; } if (c.Estado == "Debe") { btn_pagar.Enabled = true; } txt_total_pesos.Text = c.Importe.ToString(); }
private void btn_borrar_compras_Click(object sender, EventArgs e) { DialogResult dr = MessageBox.Show(this, "¿Desea dar de baja compras con facturas sin numero ?", "Atención", MessageBoxButtons.YesNo, MessageBoxIcon.Question); if (dr == DialogResult.Yes) { lista_compras = Datos.DatosCompra.getCompras("and c.numero_factura like ''"); for (int i = 0; i < lista_compras.Count; i++) { DatosCompra.setBajaCompra(((Compra)lista_compras[i]).Id_compra); DatosCompra_Producto.setBajaCompra_producto(((Compra)lista_compras[i]).Id_compra); } } }
//inicia cuando se aprenta el botón guardar private void btn_no_imprimir_Click(object sender, EventArgs e) { bool continuar = true; //verifica si la facura esta vacia if (txt_num_factura.Text == "" || txt_num_factura.Text == " ") { DialogResult dr = MessageBox.Show(this, "No se ha introducido un número de factura, ¿desea continuar?", "Atención", MessageBoxButtons.YesNo, MessageBoxIcon.Question); if (dr == DialogResult.Yes) { continuar = true; } if (dr == DialogResult.No) { continuar = false; } } //continua si se habilita por el usuarui if (continuar == true) { if (listacarrito.Count > 0 || listacarrito_nuevo.Count > 0) { // verifico si el cliente es nuevo if (cbox_proveedor.SelectedItem == null) { Pais pa = new Pais(); Proveedor pro = new Proveedor(cbox_proveedor.Text, " ", " ", " ", " ", DatosPais.obtener_id_pais_maximo(), 0, " ", pa); DatosProveedor.NuevoProveedor(pro); id_proveedor = DatosProveedor.obtener_id_proveedor_maximo(); } //verifico si hay un cliente seleccionado en el cbox_cliente else { id_proveedor = ((Proveedor)cbox_proveedor.SelectedItem).Id_proveedor; } Int64 id_compra; string tipo; string estado; if (cbox_tipo_factura.SelectedIndex == 0) { tipo = "Contado"; estado = "Pago"; } else { tipo = "Credito"; estado = "Debe"; } Compra c = new Compra(0, id_proveedor, DateTime.Today, date_fecha.Value, date_vencimiento.Value, tipo, txt_num_factura.Text, estado, Convert.ToDecimal(txt_pesos.Text)); DatosCompra.NuevaCompra(c); // obtengo el id max de venta try { id_compra = DatosCompra.obtener_id_compra(); } catch { id_compra = 0; } //recorre el array de carrito para registrar la compra en la base de datos, también modifica el stock del producto for (int i = 0; i < listacarrito.Count; i++) { Compra_Producto cp = new Compra_Producto(0, id_compra, ((Producto)listacarrito[i]).Id_producto, ((Producto)listacarrito[i]).Precio_unidad, ((Producto)listacarrito[i]).Stock); DatosCompra_Producto.NuevaCompraProducto(cp); for (Int32 h = 0; h < listaInicial.Count; h++) { if (((Producto)listacarrito[i]).Id_producto == ((Producto)listainicial2[h]).Id_producto) { ((Producto)listacarrito[i]).Stock = ((Producto)listainicial2[h]).Stock + ((Producto)listacarrito[i]).Stock; DatosProducto.ModificarProducto((Producto)listacarrito[i]); } } } for (int i = 0; i < listacarrito_nuevo.Count; i++) { DatosProducto.NuevoProducto((Producto)listacarrito_nuevo[i]); Int64 id_producto = DatosProducto.obtener_idMax_producto(); Compra_Producto cp = new Compra_Producto(0, id_compra, id_producto, ((Producto)listacarrito_nuevo[i]).Precio_unidad, ((Producto)listacarrito_nuevo[i]).Stock); DatosCompra_Producto.NuevaCompraProducto(cp); } this.Close(); } else { MessageBox.Show(this, "No hay items para dar de alta", "¡Aviso!", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); txt_codigo2.Focus(); } } /*else { * txt_num_factura.Focus(); * * }*/ }