private void btnOkPrecio_Click(object sender, EventArgs e) { long idProducto = long.Parse(dgvProductos.SelectedRows[0].Cells["Id"].Value.ToString()); Producto producto = new Producto() { Id = idProducto }; PrecioProducto precio = new PrecioProducto() { Id = extras.GetPrecioProducto_Id() + 1, IdProducto = producto.Id, IdProveedor = extras.GetId(cmbProveedor.SelectedItem.ToString()), Fecha = DateTime.Today.ToString("yyyy-MM-dd"), Precio = decimal.Parse(txtPrecioUnitario.Text), Iva = decimal.Parse(txtAlicuotaIva.Text), PrecioTotal = decimal.Parse(txtTotal.Text), Observaciones = "" }; extras.AddPrecioProducto(precio); SetTable_Precios(producto); panelPrecio.Visible = false; }
private void btnSeleccionarPedido_Click(object sender, EventArgs e) { if (dgvPedidos.SelectedRows.Count != 0) { Controles_PedidoSeleccionado(); dgvContenido.Rows.Clear(); long idPedido = long.Parse(dgvPedidos.SelectedRows[0].Cells["Id"].Value.ToString()); Pedido pedido = new Pedido() { Id = idPedido }; List <LineaPedido> list = extras.GetLineasPedido(pedido); decimal totalSinIva = 0; decimal totalConIva = 0; if (list.Count != 0) { foreach (LineaPedido linea in list) { Producto producto = new Producto() { Id = linea.IdProducto }; producto = extras.GetProducto(producto); PrecioProducto precio = extras.GetProducto_UltimoPrecio(producto); //decimal subtotal = decimal.Round(linea.KilosPedidos * precio.Precio); //decimal iva = decimal.Round(subtotal * precio.Iva, 2); //dgvContenido.Rows.Add(linea.Id, producto.Id + ". " + producto.Nombre, linea.KilosPedidos, precio.Precio, subtotal, precio.Iva, iva, (subtotal + iva)); //totalSinIva += subtotal; //totalConIva += (subtotal + iva); } txtTotalSinIva.Text = decimal.Round(totalSinIva, 2).ToString(); txtTotalConIva.Text = decimal.Round(totalConIva, 2).ToString(); } } }
private void dgvContenido_CellEndEdit(object sender, DataGridViewCellEventArgs e) { if (dgvContenido.SelectedRows.Count != 0) { DataGridViewRow row = dgvContenido.SelectedRows[0]; if (row.Cells["cProducto"].Value.ToString() != "") { Producto producto = new Producto() { Id = extras.GetId(row.Cells["cProducto"].Value.ToString()) }; PrecioProducto precio = extras.GetProducto_UltimoPrecio(producto); bool hayprecio = bool.Parse(row.Cells["cHayPrecio"].Value.ToString()); decimal precioUnitario = 0; if (precio != null) { if (!hayprecio) { precioUnitario = precio.Precio; row.Cells["cPrecioUnitario"].Value = decimal.Round(precioUnitario, 2); row.Cells["cAlicuotaIva"].Value = precio.Iva; row.Cells["cHayPrecio"].Value = "true"; } } else { if (!hayprecio) { precio = new PrecioProducto(); precioUnitario = 0; row.Cells["cPrecioUnitario"].Value = decimal.Round(precioUnitario, 2); precio.Iva = 0.21m; row.Cells["cHayPrecio"].Value = "true"; } else { decimal.TryParse(row.Cells["cPrecioUnitario"].Value.ToString(), out precioUnitario); } } decimal cantidad = 0; decimal.TryParse(row.Cells["cCantidad"].Value.ToString(), out cantidad); decimal subtotal = decimal.Round(cantidad * precioUnitario, 2); row.Cells["cSubtotal"].Value = subtotal; decimal alicuotaIva = 0.21m; decimal.TryParse(row.Cells["cAlicuotaIva"].Value.ToString(), out alicuotaIva); //row.Cells["cAlicuotaIva"].Value = precio.Iva; decimal iva = decimal.Round((subtotal * alicuotaIva), 2); row.Cells["cIVA"].Value = iva; row.Cells["cTotal"].Value = (subtotal + iva); //if (ultimoPrecio <= 0) //{ // row.Cells["cPrecioUnitario"].Value = decimal.Round(0, 2); // row.Cells["cSubtotal"].Value = decimal.Round(0, 2); // row.Cells["cAlicuotaIva"].Value = decimal.Round(21, 2); // row.Cells["cIVA"].Value = decimal.Round(0, 2); // row.Cells["cTotal"].Value = decimal.Round(0, 2); //} txtTotalSinIva.Text = row.Cells["cSubtotal"].Value.ToString(); txtTotalConIva.Text = row.Cells["cTotal"].Value.ToString(); } } }