private void btnAgregarDetalle_Click(object sender, EventArgs e) { try { bool existe = VerificarMotosDetalle(); if (existe) { MessageBox.Show("No puede ingresar la misma moto", "Aviso", MessageBoxButtons.OK, MessageBoxIcon.Warning); } else { MotoADO motoADO = new MotoADO(ConfigurationManager.ConnectionStrings["StringVehiculo"].ConnectionString); Moto moto = motoADO.ConsultarMoto(Convert.ToInt32(cbxMotos.SelectedValue)); VentaDET ventaDet = new VentaDET(Convert.ToInt32(txtCodigo.Text), moto.IDMoto, Convert.ToInt32(txtCantidad.Value)); VentaDET venta = ventaDet.CalcularMontos(moto, ventaDet); dtgDetalle.Rows.Add("" + moto.IDMoto, "" + moto.Nombre, "" + venta.Cantidad, "" + venta.MontoFleteEnvio, "" + venta.MontoImpuestoAduana, "" + venta.MontoGanancia, "" + venta.MontoIVA, "" + venta.SubTotal, "" + venta.Total); //Actualizar subtotal automaticamente cantidadMotos += venta.Cantidad; double subtotal = Convert.ToDouble(txtSubtotal.Text); subtotal += Math.Round(venta.Total, 3); txtSubtotal.Text = "" + subtotal; } } catch (Exception ex) { MessageBox.Show(ex.Message, "ERROR", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
private void btnConsultar_Click(object sender, EventArgs e) { try { MotoADO motoADO = new MotoADO(ConfigurationManager.ConnectionStrings["StringVehiculo"].ConnectionString); Moto moto = motoADO.ConsultarMoto(Convert.ToInt32(txtIDMoto.Text.Trim())); if (moto != null) { txtNombre.Text = moto.Nombre; txtPorcentajeFlete.Text = "" + moto.ProcentajeFlete * 100; txtPrecio.Text = "" + moto.Precio; txtExistencias.Text = "" + moto.Cantidad; HabilitarModificarEliminar(); } else { DialogResult respuesta = MessageBox.Show("La moto no se encuentra registrada\n¿Desea agregarla?", "Mensaje", MessageBoxButtons.YesNo, MessageBoxIcon.Information); if (respuesta == DialogResult.Yes) { HabilitarAgregar(); }//fin if dialogo else { this.EstadoInicial(); }//fin de else dialogo } } catch (Exception ex) { EstadoInicial(); MessageBox.Show(ex.Message, "ERROR", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
/// <summary> /// Este evento elimina la fila seleccionada por el usuario para una posible modificacion /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void dtgDetalle_RowHeaderMouseDoubleClick(object sender, DataGridViewCellMouseEventArgs e) { MotoADO motoADO = new MotoADO(ConfigurationManager.ConnectionStrings["StringVehiculo"].ConnectionString); Moto moto = motoADO.ConsultarMoto(Convert.ToInt32(dtgDetalle.Rows[e.RowIndex].Cells[0].Value)); VentaDET ventaDet = new VentaDET(Convert.ToInt32(txtCodigo.Text), moto.IDMoto, Convert.ToInt32(dtgDetalle.Rows[e.RowIndex].Cells[2].Value)); VentaDET venta = ventaDet.CalcularMontos(moto, ventaDet); //Esto es para restar la fila selecciona y recalcular el subtotal double subtotal = Convert.ToDouble(txtSubtotal.Text); subtotal = subtotal - Math.Round(venta.Total, 3); txtSubtotal.Text = "" + subtotal; cantidadMotos = cantidadMotos - venta.Cantidad; //se selecciona la moto y la cantidad seleccionada cbxMotos.SelectedValue = dtgDetalle.Rows[e.RowIndex].Cells[0].Value; txtCantidad.Value = Convert.ToDecimal(dtgDetalle.Rows[e.RowIndex].Cells[2].Value); dtgDetalle.Rows.RemoveAt(e.RowIndex); }