/// <summary> /// Se agrega una carga a la lista de cargas. /// </summary> private void dgvCargas_RowsAdded(object sender, DataGridViewRowsAddedEventArgs e) { for (int contador = 0; contador < e.RowCount; contador++) { DataGridViewRow fila = dgvCargas.Rows[e.RowIndex + contador]; CargaATM carga = (CargaATM)fila.DataBoundItem; _coordinacion.actualizarCodigosCajerosCargaATM(carga); fila.Cells[ATMCarga.Index].Value = carga.ToString(); if (carga.CodigoApertura.Equals("") && carga.CodigoCierre.Equals("") && carga.ConfirmacionCodigos == false && carga.SolicitudCodigos == false) { fila.DefaultCellStyle.BackColor = Color.Silver; } if (carga.CodigoApertura.Equals("") && carga.CodigoCierre.Equals("") && carga.ConfirmacionCodigos == false && carga.SolicitudCodigos == true) { fila.DefaultCellStyle.BackColor = Color.Red; } if (!carga.CodigoApertura.Equals("") && carga.CodigoCierre.Equals("") && carga.ConfirmacionCodigos == false && carga.SolicitudCodigos == true) { fila.DefaultCellStyle.BackColor = Color.Gold; } if (!carga.CodigoApertura.Equals("") && !carga.CodigoCierre.Equals("") && carga.ConfirmacionCodigos == false && carga.SolicitudCodigos == true) { fila.DefaultCellStyle.BackColor = Color.Lime; } } }
/// <summary> /// Clic en el botón de aceptar. /// </summary> private void btnAceptar_Click(object sender, EventArgs e) { try { _coordinacion.importarCargasATMs(_cargas); DateTime Fecha = new DateTime(2014, 02, 10); CargaATM C = new CargaATM(); C = _cargas[0]; BindingList <CargaATM> _atminfo = _coordinacion.listarCargasATMsEspeciales(null, null, C.Fecha_asignada, null, null); _coordinacion.guardarDatosATMINFO(_atminfo, "I"); Mensaje.mostrarMensaje("MensajeCargasATMsConfirmacionGeneracion"); dgvCargas.DataSource = null; btnAceptar.Enabled = false; btnRevisar.Enabled = false; } catch (Excepcion ex) { ex.mostrarMensaje(); } }
/// <summary> /// Clic en el botón de eliminar carga. /// </summary> private void btnEliminar_Click(object sender, EventArgs e) { try { if (Mensaje.mostrarMensajeConfirmacion("MensajeCargaATMEliminacion") == DialogResult.Yes) { foreach (DataGridViewRow fila in dgvCargas.SelectedRows) { CargaATM carga = (CargaATM)fila.DataBoundItem; _coordinacion.eliminarCargaATM(carga, _colaborador); BindingList <CargaATM> _carguita = new BindingList <CargaATM>(); _carguita.Add(carga); _coordinacion.guardarDatosATMINFO(_carguita, "E"); dgvCargas.Rows.Remove(fila); } Mensaje.mostrarMensaje("MensajeCargaATMConfirmacionEliminacion"); } } catch (Excepcion ex) { ex.mostrarMensaje(); } }
/// <summary> /// Se selecciona otra carga de la lista de cargas. /// </summary> private void dgvCargas_SelectionChanged(object sender, EventArgs e) { if (dgvCargas.SelectedRows.Count > 0) { DataGridViewRow fila = dgvCargas.SelectedRows[0]; CargaATM carga = (CargaATM)fila.DataBoundItem; _indice = fila.Index; btnModificar.Enabled = true; btnFinalizar.Enabled = true; if (carga.Cierre == null) { btnModificar.Enabled = true; } else { btnModificar.Enabled = true; } } else { btnModificar.Enabled = false; } }
/// <summary> /// Clic en el botón de eliminar una carga de emergencia. /// </summary> private void btnEliminar_Click(object sender, EventArgs e) { try { if (Mensaje.mostrarMensajeConfirmacion("MensajeCargaEmergenciaATMEliminacion") == DialogResult.Yes) { CargaEmergenciaATM carga = (CargaEmergenciaATM)dgvCargasEmergencia.SelectedRows[0].DataBoundItem; _coordinacion.eliminarCargaEmergenciaATM(carga); EmpresaTransporte empresa = new EmpresaTransporte(id: 5, nombre: "BAC"); BindingList <CargaATM> nuevalista = new BindingList <CargaATM>(); CargaATM nueva = new CargaATM(atm: carga.ATM, id: carga.ID, fecha_asignada: carga.Fecha, transportadora: empresa); nueva.Cartuchos = carga.Cartuchos; nuevalista.Add(nueva); _coordinacion.guardarDatosATMINFO(nuevalista, "E"); dgvCargasEmergencia.Rows.Remove(dgvCargasEmergencia.SelectedRows[0]); Mensaje.mostrarMensaje("MensajeCargaEmergenciaATMConfirmacionEliminacion"); } } catch (Excepcion ex) { ex.mostrarMensaje(); } }
/// <summary> /// Se agrega una carga a la lista de cargas. /// </summary> private void dgvCargas_RowsAdded(object sender, DataGridViewRowsAddedEventArgs e) { for (int contador = 0; contador < e.RowCount; contador++) { DataGridViewRow fila = dgvCargasSucursales.Rows[e.RowIndex + contador]; CargaATM carga = (CargaATM)fila.DataBoundItem; fila.Cells[ATMCarga.Index].Value = carga.ToString(); if (carga.Colaborador_verificador != null) { if (carga.Modificada) { fila.DefaultCellStyle.BackColor = Color.Green; } else { fila.DefaultCellStyle.BackColor = Color.LightGreen; } } else if (carga.Cierre != null) { fila.DefaultCellStyle.BackColor = Color.Yellow; } else if (carga.Cajero != null) { fila.DefaultCellStyle.BackColor = Color.LightCoral; } } }
/// <summary> /// Mostrar la ventana de revisión de la carga. /// </summary> private void mostrarVentanaRevision() { CargaATM carga = (CargaATM)dgvCargas.SelectedRows[0].DataBoundItem; frmModificacionCarga formulario = new frmModificacionCarga(carga, _colaborador, true); formulario.ShowDialog(this); }
/// <summary> /// Clic en el botón de revisar. /// </summary> private void btnRevisar_Click(object sender, EventArgs e) { CargaATM carga = (CargaATM)dgvCargas.SelectedCells[0].OwningRow.DataBoundItem; frmModificacionCarga formulario = new frmModificacionCarga(carga, _coordinador, true); formulario.ShowDialog(this); }
/// <summary> /// Obtener los cartuchos de una carga de un ATM. /// </summary> /// <param name="a">Parámetro que indica si se mostrarán los cartuchos anulados</param> /// <param name="c">Objeto CargaATM con los datos de la carga</param> public void obtenerCartuchosCargaATM(ref CargaATM c, bool a) { SqlCommand comando = _manejador.obtenerProcedimiento("SelectCartuchosCargaATM"); SqlDataReader datareader = null; _manejador.agregarParametro(comando, "@anulado", a, SqlDbType.Bit); _manejador.agregarParametro(comando, "@carga", c, SqlDbType.Int); try { datareader = _manejador.ejecutarConsultaDatos(comando); while (datareader.Read()) { int id_cartucho_carga = (int)datareader["ID_Cartucho_Carga"]; short cantidad_asignada = (short)datareader["Cantidad_Asignada"]; short cantidad_carga = (short)datareader["Cantidad_Carga"]; short cantidad_descarga = (short)datareader["Cantidad_Descarga"]; string marchamo = datareader["Marchamo"] as string; bool anulado = (bool)datareader["Anulado"]; byte id_denominacion = (byte)datareader["ID_Denominacion"]; decimal valor = (decimal)datareader["Valor"]; Monedas moneda = (Monedas)datareader["Moneda"]; string codigo = (string)datareader["Codigo"]; string configuracion_diebold = (string)datareader["Configuracion_Diebold"]; string configuracion_opteva = (string)datareader["Configuracion_Opteva"]; byte? id_imagen = datareader["ID_Imagen"] as byte?; Denominacion denominacion = new Denominacion(id: id_denominacion, valor: valor, moneda: moneda, codigo: codigo, id_imagen: id_imagen, configuracion_diebold: configuracion_diebold, configuracion_opteva: configuracion_opteva); Cartucho cartucho = null; if (datareader["ID_Cartucho"] != DBNull.Value) { int id_cartucho = (int)datareader["ID_Cartucho"]; string numero = (string)datareader["Numero"]; TiposCartucho tipo = (TiposCartucho)datareader["Tipo"]; cartucho = new Cartucho(numero, id: id_cartucho, denominacion: denominacion, tipo: tipo); } CartuchoCargaATM cartucho_carga = new CartuchoCargaATM(denominacion, id: id_cartucho_carga, marchamo: marchamo, movimiento: c, cantidad_descarga: cantidad_descarga, cantidad_carga: cantidad_carga, cantidad_asignada: cantidad_asignada, cartucho: cartucho, anulado: anulado); c.agregarCartucho(cartucho_carga); } comando.Connection.Close(); } catch (Exception) { comando.Connection.Close(); throw new Excepcion("ErrorDatosConexion"); } }
/// <summary> /// Generar las cargas para una moneda específica. /// </summary> private void generarCargasATMs(DocumentoExcel archivo, DateTime fecha, Celda celda_a, Celda celda_atm, Celda celda_ruta, Celda celda_hora) { // Leer las denominaciones while (!celda_a.Valor.Equals(string.Empty)) { short id_carga = short.Parse(celda_a.Valor); byte id_ruta = byte.Parse(celda_ruta.Valor); short numero_atm = short.Parse(celda_atm.Valor); DateTime hora = DateTime.FromOADate(Convert.ToDouble(celda_hora.Valor)); //hora.ToString("hh:ss"); ATM atm = new ATM(numero: numero_atm); _mantenimiento.obtenerDatosATM(ref atm); CargaATM carga = this.buscarCarga(atm, fecha, id_ruta, hora, id_carga); celda_a = archivo.seleccionarCelda(celda_a.Fila + 1, celda_a.Columna); celda_atm = archivo.seleccionarCelda(celda_atm.Fila + 1, celda_atm.Columna); celda_ruta = archivo.seleccionarCelda(celda_ruta.Fila + 1, celda_ruta.Columna); celda_hora = archivo.seleccionarCelda(celda_hora.Fila + 1, celda_hora.Columna); } }
/// <summary> /// Actualizar la lista de cargas asignadas. /// </summary> private void actualizarlista() { try { dgvCargasAsignadas.DataSource = _coordinacion.listarCargasATMsPorCajero(_cierre.Cajero, false); foreach (DataGridViewRow fila in dgvCargasAsignadas.Rows) { CargaATM carga = (CargaATM)fila.DataBoundItem; if (carga.Ruta == _ruta_valida || carga.Ruta == null) { fila.DefaultCellStyle.BackColor = Color.LightGreen; } if (carga.TipoVisita == TipoVisitas.Carga_Descarga_Papel || carga.TipoVisita == TipoVisitas.Descarga_Papel || carga.TipoVisita == TipoVisitas.Papel) { fila.DefaultCellStyle.BackColor = Color.Plum; fila.Cells["clmPapel"].Value = true; } } } catch (Exception ex) { throw ex; } }
/// <summary> /// Generar las cargas para una moneda específica. /// </summary> private void generarCargasMoneda(DocumentoExcel archivo, Monedas moneda, DateTime fecha, Celda celda_a, Celda celda_b, Celda celda_atm) { // Leer las denominaciones this.identificarDenominaciones(archivo, celda_a, celda_b, moneda); while (!celda_atm.Valor.Equals(string.Empty)) { short numero_atm = short.Parse(celda_atm.Valor.Substring(0, 3)); ATM atm = new ATM(numero: numero_atm); _mantenimiento.obtenerDatosATM(ref atm); CargaATM carga = this.buscarCarga(atm, fecha); for (int columna = celda_a.Columna; columna <= celda_b.Columna; columna++) { Celda celda_monto = archivo.seleccionarCelda(celda_atm.Fila, columna); this.asignarCartuchos(celda_monto, ref carga); } celda_atm = archivo.seleccionarCelda(celda_atm.Fila + 1, celda_atm.Columna); } }
/// <summary> /// Se selecciona una carga de la lista de cargas asignadas. /// </summary> private void dgvCargasAsignadas_SelectionChanged(object sender, EventArgs e) { if (dgvCargasAsignadas.SelectedRows.Count > 0) { DataGridViewRow fila = dgvCargasAsignadas.SelectedRows[0]; CargaATM carga = (CargaATM)fila.DataBoundItem; btnMontos.Enabled = true; btnCartuchos.Enabled = true; if (carga.Ruta == _ruta_valida || carga.Ruta == null) { btnRevisar.Enabled = true; btnAceptar.Enabled = true; } else { btnRevisar.Enabled = false; btnAceptar.Enabled = false; } } else { btnMontos.Enabled = false; btnRevisar.Enabled = false; btnAceptar.Enabled = false; btnCartuchos.Enabled = false; } }
/// <summary> /// Clic en el botón de revisar los montos por denominación de una carga. /// </summary> private void btnRevisar_Click(object sender, EventArgs e) { CargaATM carga = (CargaATM)dgvCargasAsignadas.SelectedRows[0].DataBoundItem; frmModificacionCarga formulario = new frmModificacionCarga(carga, _cierre.Cajero, true); formulario.ShowDialog(this); }
/// <summary> /// Asignar los cartuchos de una carga y determinar si el monto erra correcto. /// </summary> private void asignarCartuchos(Celda celda_monto, ref CargaATM carga) { decimal monto = 0; if ((decimal.TryParse(celda_monto.Valor, out monto) && monto > 0)) { Denominacion denominacion = _denominaciones[celda_monto.Columna]; short cantidad_total = (short)Math.Ceiling(monto / denominacion.Valor); double numero_cartuchos = (double)cantidad_total / (double)denominacion.Formulas_maximas; int cantidad_cartuchos = (int)Math.Ceiling(numero_cartuchos); short cantidad_cartucho = (short)(cantidad_total / cantidad_cartuchos); cantidad_cartucho = (short)(100 * (int)Math.Ceiling((decimal)(cantidad_cartucho / 100))); for (int contador = 0; contador < cantidad_cartuchos; contador++) { CartuchoCargaATM cartucho = new CartuchoCargaATM(movimiento: carga, cantidad_asignada: cantidad_cartucho, denominacion: denominacion); carga.agregarCartucho(cartucho); } switch (denominacion.Moneda) { case Monedas.Colones: carga.Monto_pedido_colones += monto; break; case Monedas.Dolares: carga.Monto_pedido_dolares += monto; break; } } }
public frmIngresoManifiestoATMs(CargaATM carga) { InitializeComponent(); _carga = carga; _manifiesto = carga.Manifiesto; _manifiesto_full = carga.Manifiesto_full; try { txtFecha.Text = carga.Fecha_asignada.ToShortDateString(); dgvManifiestos.AutoGenerateColumns = false; dgvManifiestosFull.AutoGenerateColumns = false; BindingList <ManifiestoATMCarga> manifiestos = new BindingList <ManifiestoATMCarga>(); BindingList <ManifiestoATMFull> manifiestos_full = new BindingList <ManifiestoATMFull>(); dgvManifiestos.DataSource = manifiestos; dgvManifiestosFull.DataSource = manifiestos_full; if (_manifiesto != null) { manifiestos.Add(_manifiesto); } if (_manifiesto_full != null) { manifiestos_full.Add(_manifiesto_full); } if (_carga.ATM_full) { gbBusquedaManifiestosFull.Enabled = true; gbDatosManifiestoFull.Enabled = true; pnlENA.Enabled = true; pnlENA.Enabled = true; //pnlENA.Enabled = _carga.ENA; } chkBolsaRechazo.Enabled = true; chkBolsaRechazoFull.Enabled = true; // chkBolsaRechazo.Enabled = _carga.Bolsa_Rechazo; _impresion_carga = true; _impresion_full = _carga.ATM_full; _monto = _carga.Monto_carga_colones + _carga.Monto_carga_dolares * nudTipoCambio.Value; // Cargar los esquemas cboEsquema.DataSource = _mantenimiento.listarEsquemasManifiestos(); } catch (Exception ex) { this.Close(); throw ex; } }
/// <summary> /// Obtener las emergencias ligadas a la carga de emergenciade un ATM. /// </summary> /// <param name="c">Objeto CargaEmergenciaATM con los datos de la carga de emergencia</param> public void obtenerEmergenciasCargaEmergenciaATM(ref CargaEmergenciaATM c) { SqlCommand comando = _manejador.obtenerProcedimiento("SelectCargasATMCargaEmergenciaATM"); SqlDataReader datareader = null; _manejador.agregarParametro(comando, "@carga", c, SqlDbType.Int); try { datareader = _manejador.ejecutarConsultaDatos(comando); while (datareader.Read()) { int id_carga = (int)datareader["pk_ID"]; byte emergencia = (byte)datareader["Emergencia"]; DateTime fecha_asignada = (DateTime)datareader["Fecha_Asignada"]; TiposCartucho tipo = (TiposCartucho)datareader["Tipo"]; CargaATM carga = new CargaATM(id: id_carga, emergencia: emergencia, fecha_asignada: fecha_asignada, tipo: tipo); c.agregarEmergencia(carga); } comando.Connection.Close(); } catch (Exception) { comando.Connection.Close(); throw new Excepcion("ErrorDatosConexion"); } }
/// <summary> /// Obtener las descargas del cierre de un cajero de ATM's. /// </summary> /// <param name="c">Objeto CierreATMs con los datos del cierre del cajero de ATM's</param> public void obtenerDescargasATMsCierreATMs(ref CierreATMs c) { SqlCommand comando = _manejador.obtenerProcedimiento("SelectDescargasATMsCierreATMs"); SqlDataReader datareader = null; _manejador.agregarParametro(comando, "@cierre", c, SqlDbType.Int); try { datareader = _manejador.ejecutarConsultaDatos(comando); while (datareader.Read()) { int id_descarga = (int)datareader["ID_Descarga"]; DateTime fecha = (DateTime)datareader["Fecha"]; string observaciones = (string)datareader["Observaciones"]; short id_atm = (short)datareader["ID_ATM"]; short numero = (short)datareader["Numero"]; string codigo = (string)datareader["Codigo"]; string oficinas = (string)datareader["Oficinas"]; ATM atm = new ATM(id: id_atm, numero: numero, codigo: codigo, oficinas: oficinas); CargaATM carga = null; if (datareader["ID_Carga"] != DBNull.Value) { int id_carga = (int)datareader["ID_Carga"]; DateTime fecha_asignada = (DateTime)datareader["Fecha_Asignada"]; TiposCartucho tipo = (TiposCartucho)datareader["Tipo"]; carga = new CargaATM(atm, id: id_carga, fecha_asignada: fecha_asignada, tipo: tipo); } CargaEmergenciaATM carga_emergencia = null; if (datareader["ID_Carga_Emergencia"] != DBNull.Value) { int id_carga_emergencia = (int)datareader["ID_Carga_Emergencia"]; DateTime fecha_carga = (DateTime)datareader["Fecha"]; carga_emergencia = new CargaEmergenciaATM(id: id_carga_emergencia, atm: atm, fecha: fecha_carga); } DescargaATM descarga = new DescargaATM(id: id_descarga, fecha: fecha, cierre: c, carga: carga, carga_emergencia: carga_emergencia, observaciones: observaciones); c.agregarDescarga(descarga); } comando.Connection.Close(); } catch (Exception) { comando.Connection.Close(); throw new Excepcion("ErrorDatosConexion"); } }
/// <summary> /// Se agrega una carga a la lista de cargas. /// </summary> private void dgvCargas_RowsAdded(object sender, DataGridViewRowsAddedEventArgs e) { for (int contador = 0; contador < e.RowCount; contador++) { DataGridViewRow fila = dgvCargas.Rows[e.RowIndex + contador]; CargaATM carga = (CargaATM)fila.DataBoundItem; fila.Cells[ATMCarga.Index].Value = carga.ToString(); if (carga.Colaborador_verificador != null) { if (carga.Modificada) { fila.DefaultCellStyle.BackColor = Color.Green; } else { fila.DefaultCellStyle.BackColor = Color.LightGreen; } } else if (carga.Cierre != null) { fila.DefaultCellStyle.BackColor = Color.Yellow; } else if (carga.Cajero != null) { fila.DefaultCellStyle.BackColor = Color.LightCoral; } //Marca la carga según el tipo de visita. if (carga.TipoVisita == TipoVisitas.Carga_Descarga) { fila.Cells["clmCarga"].Value = true; fila.Cells["clmDescarga"].Value = true; } if (carga.TipoVisita == TipoVisitas.Descarga) { fila.Cells["clmDescarga"].Value = true; } if (carga.TipoVisita == TipoVisitas.Carga_Descarga_Papel) { fila.Cells["clmCarga"].Value = true; fila.Cells["clmDescarga"].Value = true; fila.Cells["clmPapel"].Value = true; } if (carga.TipoVisita == TipoVisitas.Descarga_Papel) { fila.Cells["clmDescarga"].Value = true; fila.Cells["clmPapel"].Value = true; } if (carga.TipoVisita == TipoVisitas.Papel) { fila.Cells["clmPapel"].Value = true; } } }
/// <summary> /// Obtener una lista de las descargas full pendientes con determinado marchamo. /// </summary> /// <param name="m">Número de marchamo buscado</param> /// <returns>Lista de descargas full pendientes</returns> public BindingList <DescargaATMFull> listarDescargasATMsFullPendientesPorMarchamo(string m) { BindingList <DescargaATMFull> descargas = new BindingList <DescargaATMFull>(); SqlCommand comando = _manejador.obtenerProcedimiento("SelectCargasATMsFullNoDescargadasPorMarchamos"); SqlDataReader datareader = null; _manejador.agregarParametro(comando, "@marchamo", m, SqlDbType.VarChar); try { datareader = _manejador.ejecutarConsultaDatos(comando); while (datareader.Read()) { int id_carga = (int)datareader["ID_Carga"]; DateTime fecha_asignada = (DateTime)datareader["Fecha_Asignada"]; bool ena = (bool)datareader["ENA"]; short id_atm = (short)datareader["ID_ATM"]; short numero = (short)datareader["Numero"]; string codigo_atm = (string)datareader["Codigo_ATM"]; string oficinas = (string)datareader["Oficinas"]; int id_manifiesto = (int)datareader["ID_Manifiesto"]; string codigo_manifiesto = (string)datareader["Codigo_Manifiesto"]; string marchamo = (string)datareader["Marchamo"]; string marchamo_adicional_ena = datareader["Marchamo_Adicional_ENA"] as string; string marchamo_ena_a = datareader["Marchamo_ENA_A"] as string; string marchamo_ena_b = datareader["Marchamo_ENA_B"] as string; DateTime fecha = (DateTime)datareader["Fecha_Manifiesto"]; string bolsa_rechazo = ""; if (datareader["Bolsa_Rechazo"] != DBNull.Value) { bolsa_rechazo = (string)datareader["Bolsa_Rechazo"]; } ATM atm = new ATM(id: id_atm, numero: numero, codigo: codigo_atm, oficinas: oficinas); ManifiestoATMFull manifiesto = new ManifiestoATMFull(codigo_manifiesto, marchamo, fecha, marchamo_adicional_ena, marchamo_ena_a, marchamo_ena_b, bolsa_rechazo, id: id_manifiesto); CargaATM carga = new CargaATM(atm, id: id_carga, fecha_asignada: fecha_asignada, manifiesto_full: manifiesto, ena: ena); DescargaATMFull descarga = new DescargaATMFull(carga: carga); descargas.Add(descarga); } comando.Connection.Close(); } catch (Exception) { comando.Connection.Close(); throw new Excepcion("ErrorDatosConexion"); } return(descargas); }
public frmSolicitudCodigoCargasATM(CargaATM carga, Colaborador colaborador) { InitializeComponent(); _carga = carga; lblATM.Text = carga.ATM.Numero.ToString() + "-" + carga.ATM.Codigo; txtCodigoApertura.Text = carga.CodigoApertura; txtCodigoCiere.Text = carga.CodigoCierre; }
/// <summary> /// Validar una carga. /// </summary> private void validarCarga(DataGridViewRow fila) { CargaATM carga = (CargaATM)fila.DataBoundItem; ATM atm = carga.ATM; _filas_incorrectas.Remove(fila.Index); fila.Cells[CantidadColones.Index].Style.BackColor = SystemColors.Window; foreach (CartuchoCargaATM cartucho in carga.Cartuchos_Colones) { Denominacion denominacion = cartucho.Denominacion; if (denominacion.ID_Invalido || !denominacion.Carga_atm) { this.mostrarError(MontoColones, fila, pbErrorDenominacion.BackColor); } else if (cartucho.Cantidad_asignada < denominacion.Formulas_minimas) { this.mostrarError(CantidadColones, fila, pbErrorMínimoFormulas.BackColor); } } fila.Cells[CantidadDolares.Index].Style.BackColor = SystemColors.Window; foreach (CartuchoCargaATM cartucho in carga.Cartuchos_Dolares) { Denominacion denominacion = cartucho.Denominacion; if (denominacion.ID_Invalido || !denominacion.Carga_atm) { this.mostrarError(MontoDolares, fila, pbErrorDenominacion.BackColor); } else if (cartucho.Cantidad_asignada < denominacion.Formulas_minimas) { this.mostrarError(CantidadDolares, fila, pbErrorMínimoFormulas.BackColor); } } if (atm.ID_Invalido) { this.mostrarError(ATM, fila, pbATMDesconocido.BackColor); } else if (carga.Cartuchos.Count > atm.Cartuchos) { this.mostrarError(CantidadCartuchos, fila, pbErrorCantidadCartuchos.BackColor); } if (carga.Cantidad_denominaciones > 4) { this.mostrarError(Denominaciones, fila, pbErrorCantidadDenominaciones.BackColor); } fila.Cells[Tipo.Index].Value = carga.Tipo; fila.Cells[CantidadCartuchos.Index].Value = carga.Cartuchos.Count; }
/// <summary> /// Asignar una emergencia a la carga. /// </summary> private void asignarEmergencia(DataGridViewRow fila) { BindingList <CargaATM> emergencias_pendientes = (BindingList <CargaATM>)dgvEmergenciasPendientes.DataSource; BindingList <CargaATM> emergencias_asignadas = (BindingList <CargaATM>)dgvEmergenciasAsignadas.DataSource; CargaATM emergencia = (CargaATM)fila.DataBoundItem; emergencias_pendientes.Remove(emergencia); emergencias_asignadas.Add(emergencia); }
/// <summary> /// Buscar Guardar las cargas de los ATMs /// </summary> private CargaATM buscarCarga(ATM atm, DateTime fecha, byte ruta, DateTime hora, int id_carga) { CargaATM nueva = new CargaATM(atm, transportadora: atm.Empresa_encargada, fecha_asignada: fecha, tipo: atm.Tipo, externa: atm.Externo, atm_full: atm.Full, cartucho_rechazo: atm.Cartucho_rechazo, ena: atm.ENA, ruta: ruta, hora_llegada: hora, id: id_carga); _cargas.Add(nueva); return(nueva); }
/// <summary> /// Se agregan cargas a las lista de cargas no asignadas. /// </summary> private void dgvCargas_RowsAdded(object sender, DataGridViewRowsAddedEventArgs e) { for (int contador = 0; contador < e.RowCount; contador++) { DataGridViewRow fila = dgvCargas.Rows[e.RowIndex + contador]; CargaATM carga = (CargaATM)fila.DataBoundItem; fila.Cells[ATMCarga.Index].Value = carga.ToString(); } }
/// <summary> /// Mostrar la ventana de modificación. /// </summary> public void mostarVentanaModificacion() { DataGridViewRow fila = dgvCargas.SelectedCells[0].OwningRow; CargaATM carga = (CargaATM)fila.DataBoundItem; frmModificacionCarga formulario = new frmModificacionCarga(carga, _colaborador, false); formulario.ShowDialog(this); btnAceptar.Enabled = _cargas.Count > 0 && _filas_incorrectas.Count == 0; }
/// <summary> /// Mostrar la ventana de modificación de la carga. /// </summary> private void mostrarVentanaModificacion() { CargaATM carga = (CargaATM)dgvCargas.SelectedRows[0].DataBoundItem; frmModificacionCarga formulario = new frmModificacionCarga(carga, _colaborador, false); formulario.ShowDialog(this); carga.recalcularMontosCarga(); dgvCargas.Refresh(); }
/// <summary> /// Mostrar la ventana de modificación de la carga. /// </summary> private void mostrarVentanaModificacion(DataGridView tabla) { CargaATM carga = (CargaATM)tabla.SelectedRows[0].DataBoundItem; frmModificacionCarga formulario = new frmModificacionCarga(carga, _coordinador, false); formulario.ShowDialog(this); carga.recalcularMontosCarga(); tabla.Refresh(); }
/// <summary> /// Obtener una lista de las descargas pendientes con determinado marchamo. /// </summary> /// <param name="m">Número de marchamo buscado</param> /// <returns>Lista de descargas pendientes</returns> public BindingList <DescargaATM> listarDescargasATMsPendientesPorMarchamoCompletas(string m) { BindingList <DescargaATM> descargas = new BindingList <DescargaATM>(); SqlCommand comando = _manejador.obtenerProcedimiento("SelectCargasATMsNoDescargadasPorMarchamosCompletas"); SqlDataReader datareader = null; _manejador.agregarParametro(comando, "@marchamo", m, SqlDbType.VarChar); try { datareader = _manejador.ejecutarConsultaDatos(comando); while (datareader.Read()) { DateTime fecha_asignada = (DateTime)datareader["Fecha_Asignada"]; int id_carga = (int)datareader["ID_Carga"]; TiposCartucho tipo = (TiposCartucho)datareader["Tipo"]; bool atm_full = (bool)datareader["ATM_Full"]; bool cartucho_rechazo = (bool)datareader["Cartucho_Rechazo"]; bool ena = (bool)datareader["ENA"]; short id_atm = (short)datareader["ID_ATM"]; short numero = (short)datareader["Numero"]; string codigo_atm = (string)datareader["Codigo_ATM"]; string oficinas = (string)datareader["Oficinas"]; int id_manifiesto = (int)datareader["ID_Manifiesto"]; string codigo_manifiesto = (string)datareader["Codigo_Manifiesto"]; string marchamo = (string)datareader["Marchamo"]; string marchamo_adicional = (string)datareader["Marchamo_Adicional"]; string bolsa_rechazo = datareader["Bolsa_Rechazo"] as string; DateTime fecha = (DateTime)datareader["Fecha"]; ATM atm = new ATM(id: id_atm, numero: numero, codigo: codigo_atm, oficinas: oficinas); ManifiestoATMCarga manifiesto = new ManifiestoATMCarga(codigo_manifiesto, marchamo, fecha, bolsa_rechazo, marchamo_adicional, id: id_manifiesto); CargaATM carga = new CargaATM(atm, id: id_carga, fecha_asignada: fecha_asignada, tipo: tipo, atm_full: atm_full, cartucho_rechazo: cartucho_rechazo, ena: ena); DescargaATM descarga = new DescargaATM(manifiesto: manifiesto, carga: carga); descargas.Add(descarga); } comando.Connection.Close(); } catch (Exception) { comando.Connection.Close(); throw new Excepcion("ErrorDatosConexion"); } return(descargas); }
/// <summary> /// Cambiar el orden de una carga en la lista de carga. /// </summary> private void cambiarOrdenCarga(int desplazamiento) { BindingList <CargaATM> cargas = (BindingList <CargaATM>)dgvCargas.DataSource; DataGridViewRow fila = dgvCargas.SelectedRows[0]; CargaATM carga = (CargaATM)fila.DataBoundItem; int posicion = fila.Index + desplazamiento; cargas.Remove(carga); cargas.Insert(posicion, carga); dgvCargas.Rows[posicion].Selected = true; }