private void btnTerminar_Click(object sender, EventArgs e) { try { if (!_mantenimiento.VerificaTulasManifiestoAV(ref _manifiesto, dgvDetalleAltoVolumen.Rows.Count)) { epError.SetError(txtNumero, "El total de tulas no corresponden al manifiesto."); return; } else { decimal _montototal = 0; decimal _montoconvertido = 0; decimal _montofinal = 0; if (conteoerrores == 2) { frmValidacionCoordinadorCE formulario = new frmValidacionCoordinadorCE(12, _usuario); formulario.ShowDialog(this); if (insertarPAV) { TipoCambio _tipocambio = null; for (int i = 0; i < dgvDetalleAltoVolumen.Rows.Count; i++) { procesodetalle = (ProcesamientoAltoVolumenDetalle)dgvDetalleAltoVolumen.Rows[i].DataBoundItem; if (((Monedas)cboMoneda.SelectedIndex == procesodetalle.Moneda)) { _montototal += procesodetalle.Monto; } else { _tipocambio = _mantenimiento.obtenerTipoCambio(DateTime.Today); if (_tipocambio == null) { _tipocambio = _mantenimiento.obtenerTipoCambio(DateTime.Today.AddDays(-1)); } if (procesodetalle.Moneda == Monedas.Dolares) { _montoconvertido = (_tipocambio.Compra * procesodetalle.Monto); _montototal += _montoconvertido; } else { _montoconvertido = (procesodetalle.Monto / _tipocambio.Venta); _montototal += _montoconvertido; } } } _montofinal = _montototal - nudMonto.Value; procesoAV.Camara = (Camara)cboCamara.SelectedItem; procesoAV.Cliente = (Cliente)cboCliente.SelectedItem; procesoAV.Moneda = (Monedas)cboMoneda.SelectedIndex; procesoAV.Monto = nudMonto.Value; procesoAV.PuntoVenta = (PuntoVenta)cboPuntoVenta.SelectedItem; _mantenimiento.actualizarProcesamientoAltoVolumen(procesoAV, _usuario); BindingList <ProcesamientoAltoVolumenDetalle> listaDetalle; listaDetalle = (BindingList <ProcesamientoAltoVolumenDetalle>)dgvDetalleAltoVolumen.DataSource; foreach (ProcesamientoAltoVolumenDetalle _detproc in listaDetalle) { _mantenimiento.actualizarProcesamientoAltoVolumenDetalle(_detproc, _usuario); } MessageBox.Show("Se ha actualizado de forma correcta el registro asociado al procesamiento de alto volumen."); btnCancelar_Click(sender, e); } } else { TipoCambio _tipocambio = null; for (int i = 0; i < dgvDetalleAltoVolumen.Rows.Count; i++) { procesodetalle = (ProcesamientoAltoVolumenDetalle)dgvDetalleAltoVolumen.Rows[i].DataBoundItem; if (((Monedas)cboMoneda.SelectedIndex == procesodetalle.Moneda)) { _montototal += procesodetalle.Monto; } else { _tipocambio = _mantenimiento.obtenerTipoCambio(DateTime.Today); if (_tipocambio == null) { _tipocambio = _mantenimiento.obtenerTipoCambio(DateTime.Today.AddDays(-1)); } if (procesodetalle.Moneda == Monedas.Dolares) { _montoconvertido = (_tipocambio.Compra * procesodetalle.Monto); _montototal += _montoconvertido; } else { _montoconvertido = (procesodetalle.Monto / _tipocambio.Venta); _montototal += _montoconvertido; } } } _montofinal = _montototal - nudMonto.Value; if (cboMoneda.SelectedItem.ToString().Equals("Colones")) { if (Math.Abs(_montofinal) > 2000) { epError.SetError(nudMontoTula, "El monto total de las tulas en proceso posee una diferencia no permitada contra el monto declarado del manifiesto."); conteoerrores += 1; return; } } else { if (Math.Abs(_montofinal) > 3) { epError.SetError(nudMontoTula, "El monto total de las tulas en proceso posee una diferencia no permitada contra el monto declarado del manifiesto."); conteoerrores += 1; return; } } procesoAV.Camara = (Camara)cboCamara.SelectedItem; procesoAV.Cliente = (Cliente)cboCliente.SelectedItem; procesoAV.Moneda = (Monedas)cboMoneda.SelectedIndex; procesoAV.Monto = nudMonto.Value; procesoAV.PuntoVenta = (PuntoVenta)cboPuntoVenta.SelectedItem; _mantenimiento.actualizarProcesamientoAltoVolumen(procesoAV, _usuario); BindingList <ProcesamientoAltoVolumenDetalle> listaDetalle; listaDetalle = (BindingList <ProcesamientoAltoVolumenDetalle>)dgvDetalleAltoVolumen.DataSource; foreach (ProcesamientoAltoVolumenDetalle _detproc in listaDetalle) { _mantenimiento.actualizarProcesamientoAltoVolumenDetalle(_detproc, _usuario); } MessageBox.Show("Se ha actualizado de forma correcta el registro asociado al procesamiento de alto volumen."); btnCancelar_Click(sender, e); } } } catch (Excepcion ex) { ex.mostrarMensaje(); } }
private void btnTerminar_Click(object sender, EventArgs e) { try { if (!_mantenimiento.VerificaTulasManifiestoAV(ref _manifiesto, dgvDetalleAltoVolumen.Rows.Count)) { epError.SetError(txtNumero, "El total de tulas no corresponden al manifiesto."); return; } else { decimal _montototal = 0; decimal _montoconvertido = 0; decimal _montofinal = 0; if (conteoerrores == 2) { frmValidacionCoordinadorCE formulario = new frmValidacionCoordinadorCE(11, _usuario); formulario.ShowDialog(this); if (insertarPAV) { TipoCambio _tipocambio = null; for (int i = 0; i < dgvDetalleAltoVolumen.Rows.Count; i++) { procesodetalle = (ProcesamientoAltoVolumenDetalle)dgvDetalleAltoVolumen.Rows[i].DataBoundItem; if (((Monedas)cboMoneda.SelectedIndex == procesodetalle.Moneda)) { _montototal += procesodetalle.Monto; } else { _tipocambio = _mantenimiento.obtenerTipoCambio(DateTime.Today); if (_tipocambio == null) { _tipocambio = _mantenimiento.obtenerTipoCambio(DateTime.Today.AddDays(-1)); } if (procesodetalle.Moneda == Monedas.Dolares) { _montoconvertido = (_tipocambio.Compra * procesodetalle.Monto); _montototal += _montoconvertido; } else { _montoconvertido = (procesodetalle.Monto / _tipocambio.Venta); _montototal += _montoconvertido; } } } _montofinal = _montototal - nudMonto.Value; epError.SetError(txtNumero, ""); procesoBV = _mantenimiento.listarProcesamientoBajoVolumenCajero(ref _usuario); _mantenimiento.agregarProcesamientoAltoVolumen(ref procesoAV, procesoBV); for (int i = 0; i < dgvDetalleAltoVolumen.Rows.Count; i++) { procesodetalle = (ProcesamientoAltoVolumenDetalle)dgvDetalleAltoVolumen.Rows[i].DataBoundItem; _mantenimiento.agregarProcesamientoAltoVolumenDetalle(ref procesodetalle, procesoAV); } MessageBox.Show("El proceso de registro de Alto Volumen ha sido registrado satisfactoriamente."); //dgvDetalleAltoVolumen.DataSource = null; dgvDetalleAltoVolumen.DataSource = new BindingList <ProcesamientoAltoVolumenDetalle>(); txtHeaderCard.Text = ""; txtNumero.Text = ""; nudMonto.Value = 0; nudMontoTula.Value = 0; txtTula.Text = ""; gbDatosTula.Enabled = false; dgvDetalleAltoVolumen.Enabled = false; btnTerminar.Enabled = false; btnCancelar.Enabled = false; conteoerrores = 0; } } else { TipoCambio _tipocambio = null; for (int i = 0; i < dgvDetalleAltoVolumen.Rows.Count; i++) { procesodetalle = (ProcesamientoAltoVolumenDetalle)dgvDetalleAltoVolumen.Rows[i].DataBoundItem; if (((Monedas)cboMoneda.SelectedIndex == procesodetalle.Moneda)) { _montototal += procesodetalle.Monto; } else { _tipocambio = _mantenimiento.obtenerTipoCambio(DateTime.Today); if (_tipocambio == null) { _tipocambio = _mantenimiento.obtenerTipoCambio(DateTime.Today.AddDays(-1)); } if (procesodetalle.Moneda == Monedas.Dolares) { _montoconvertido = (_tipocambio.Compra * procesodetalle.Monto); _montototal += _montoconvertido; } else { _montoconvertido = (procesodetalle.Monto / _tipocambio.Venta); _montototal += _montoconvertido; } } } _montofinal = _montototal - nudMonto.Value; if (cboMoneda.SelectedItem.ToString().Equals("Colones")) { if (Math.Abs(_montofinal) > 2000) { epError.SetError(nudMontoTula, "El monto total de las tulas en proceso posee una diferencia no permitada contra el monto declarado del manifiesto."); conteoerrores += 1; return; } } else { if (Math.Abs(_montofinal) > 3) { epError.SetError(nudMontoTula, "El monto total de las tulas en proceso posee una diferencia no permitada contra el monto declarado del manifiesto."); conteoerrores += 1; return; } } epError.SetError(txtNumero, ""); procesoBV = _mantenimiento.listarProcesamientoBajoVolumenCajero(ref _usuario); _mantenimiento.agregarProcesamientoAltoVolumen(ref procesoAV, procesoBV); for (int i = 0; i < dgvDetalleAltoVolumen.Rows.Count; i++) { procesodetalle = (ProcesamientoAltoVolumenDetalle)dgvDetalleAltoVolumen.Rows[i].DataBoundItem; _mantenimiento.agregarProcesamientoAltoVolumenDetalle(ref procesodetalle, procesoAV); } MessageBox.Show("El proceso de registro de Alto Volumen ha sido registrado satisfactoriamente."); //dgvDetalleAltoVolumen.DataSource = null; dgvDetalleAltoVolumen.DataSource = new BindingList <ProcesamientoAltoVolumenDetalle>(); txtHeaderCard.Text = ""; txtNumero.Text = ""; nudMonto.Value = 0; nudMontoTula.Value = 0; txtTula.Text = ""; gbDatosTula.Enabled = false; dgvDetalleAltoVolumen.Enabled = false; btnTerminar.Enabled = false; btnCancelar.Enabled = false; conteoerrores = 0; } } //this.Close(); } catch (Excepcion ex) { ex.mostrarMensaje(); } }