/// <summary> /// Clic en el botón de agregar los montos esperados de un ATM. /// </summary> private void btnAgregar_Click(object sender, EventArgs e) { // Verificar que se hayan seleccionado los datos if (cboATM.SelectedItem == null) { return; } try { ATM atm = (ATM)cboATM.SelectedItem; Monedas moneda = (Monedas)cboMoneda.SelectedIndex; MontosRetirosATM montos = new MontosRetirosATM(atm, moneda); _coordinacion.agregarMontosRetirosATM(ref montos); BindingList <MontosRetirosATM> montos_atms = (BindingList <MontosRetirosATM>)dgvMontos.DataSource; montos_atms.Add(montos); dgvMontos.AutoResizeColumns(); } catch (Excepcion ex) { ex.mostrarMensaje(); } }
/// <summary> /// Registrar los montos esperados en retiros de un ATM en el sistema. /// </summary> /// <param name="m">Objeto MontosRetirosATM con los montos esperados</param> public void agregarMontosRetirosATM(ref MontosRetirosATM m) { SqlCommand comando = _manejador.obtenerProcedimiento("InsertMontosRetirosATM"); _manejador.agregarParametro(comando, "@atm", m.ATM, SqlDbType.SmallInt); _manejador.agregarParametro(comando, "@moneda", m.Moneda, SqlDbType.TinyInt); _manejador.agregarParametro(comando, "@retiro_lunes", m.Retiro_lunes, SqlDbType.Money); _manejador.agregarParametro(comando, "@retiro_martes", m.Retiro_martes, SqlDbType.Money); _manejador.agregarParametro(comando, "@retiro_miercoles", m.Retiro_miercoles, SqlDbType.Money); _manejador.agregarParametro(comando, "@retiro_jueves", m.Retiro_jueves, SqlDbType.Money); _manejador.agregarParametro(comando, "@retiro_viernes", m.Retiro_viernes, SqlDbType.Money); _manejador.agregarParametro(comando, "@retiro_sabado", m.Retiro_sabado, SqlDbType.Money); _manejador.agregarParametro(comando, "@retiro_domingo", m.Retiro_domingo, SqlDbType.Money); _manejador.agregarParametro(comando, "@retiro_lunes_quincena", m.Retiro_lunes_quincena, SqlDbType.Money); _manejador.agregarParametro(comando, "@retiro_martes_quincena", m.Retiro_martes_quincena, SqlDbType.Money); _manejador.agregarParametro(comando, "@retiro_miercoles_quincena", m.Retiro_miercoles_quincena, SqlDbType.Money); _manejador.agregarParametro(comando, "@retiro_jueves_quincena", m.Retiro_jueves_quincena, SqlDbType.Money); _manejador.agregarParametro(comando, "@retiro_viernes_quincena", m.Retiro_viernes_quincena, SqlDbType.Money); _manejador.agregarParametro(comando, "@retiro_sabado_quincena", m.Retiro_sabado_quincena, SqlDbType.Money); _manejador.agregarParametro(comando, "@retiro_domingo_quincena", m.Retiro_domingo, SqlDbType.Money); try { m.ID = (short)_manejador.ejecutarEscalar(comando); comando.Connection.Close(); } catch (Exception) { comando.Connection.Close(); throw new Excepcion("ErrorMontosRetirosATMRegistro"); } }
/// <summary> /// Verificar si un ATM ya tiene asignado los montos esperados de retiros. /// </summary> /// <param name="a">Objeto MontosRetirosATM con los datos del ATM a verificar</param> /// <returns>Valor que indica si los montos esperados ya fueron asignados</returns> public bool verificarMontosRetirosATM(ref MontosRetirosATM m) { bool existe = false; SqlCommand comando = _manejador.obtenerProcedimiento("SelectExistenMontosRetirosATM"); SqlDataReader datareader = null; _manejador.agregarParametro(comando, "@atm", m.ATM, SqlDbType.SmallInt); _manejador.agregarParametro(comando, "@moneda", m.Moneda, SqlDbType.TinyInt); try { datareader = _manejador.ejecutarConsultaDatos(comando); if (datareader.Read()) { short id = (short)datareader["pk_ID"]; existe = id != m.ID; m.ID = id; } comando.Connection.Close(); } catch (Exception) { comando.Connection.Close(); throw new Excepcion("ErrorVerificarMontosRetirosATM"); } return(existe); }
/// <summary> /// Actualizar los montos esperados en retiros de un ATM en el sistema. /// </summary> /// <param name="m">Objeto MontosRetirosATM con los montos esperados</param> public void actualizarMontosRetirosATM(MontosRetirosATM m) { SqlCommand comando = _manejador.obtenerProcedimiento("UpdateMontosRetirosATM"); _manejador.agregarParametro(comando, "@retiro_lunes", m.Retiro_lunes, SqlDbType.Money); _manejador.agregarParametro(comando, "@retiro_martes", m.Retiro_martes, SqlDbType.Money); _manejador.agregarParametro(comando, "@retiro_miercoles", m.Retiro_miercoles, SqlDbType.Money); _manejador.agregarParametro(comando, "@retiro_jueves", m.Retiro_jueves, SqlDbType.Money); _manejador.agregarParametro(comando, "@retiro_viernes", m.Retiro_viernes, SqlDbType.Money); _manejador.agregarParametro(comando, "@retiro_sabado", m.Retiro_sabado, SqlDbType.Money); _manejador.agregarParametro(comando, "@retiro_domingo", m.Retiro_domingo, SqlDbType.Money); _manejador.agregarParametro(comando, "@retiro_lunes_quincena", m.Retiro_lunes_quincena, SqlDbType.Money); _manejador.agregarParametro(comando, "@retiro_martes_quincena", m.Retiro_martes_quincena, SqlDbType.Money); _manejador.agregarParametro(comando, "@retiro_miercoles_quincena", m.Retiro_miercoles_quincena, SqlDbType.Money); _manejador.agregarParametro(comando, "@retiro_jueves_quincena", m.Retiro_jueves_quincena, SqlDbType.Money); _manejador.agregarParametro(comando, "@retiro_viernes_quincena", m.Retiro_viernes_quincena, SqlDbType.Money); _manejador.agregarParametro(comando, "@retiro_sabado_quincena", m.Retiro_sabado_quincena, SqlDbType.Money); _manejador.agregarParametro(comando, "@retiro_domingo_quincena", m.Retiro_domingo, SqlDbType.Money); _manejador.agregarParametro(comando, "@montos", m, SqlDbType.SmallInt); try { _manejador.ejecutarConsultaActualizacion(comando); comando.Connection.Close(); } catch (Exception) { comando.Connection.Close(); throw new Excepcion("ErrorMontosRetirosATMActualizacion"); } }
/// <summary> /// Se modifican los montos esperados del ATM seleccionado. /// </summary private void dgvMontos_CellEndEdit(object sender, DataGridViewCellEventArgs e) { if (dgvMontos.RowCount > 0) { try { DataGridViewRow fila = dgvMontos.Rows[e.RowIndex]; MontosRetirosATM montos = (MontosRetirosATM)fila.DataBoundItem; _coordinacion.actualizarMontosRetirosATM(montos); dgvMontos.AutoResizeColumns(); } catch (Excepcion ex) { ex.mostrarMensaje(); } } }
/// <summary> /// Leer los montos esperados del archivo. /// </summary> private void leerMontos() { DocumentoExcel archivo = null; try { _montos.Clear(); archivo = new DocumentoExcel(_archivo, false); archivo.seleccionarHoja(1); Celda celda_atm = archivo.seleccionarCelda("A2"); Celda celda_moneda = archivo.seleccionarCelda("B2"); Celda celda_lunes = archivo.seleccionarCelda("C2"); Celda celda_martes = archivo.seleccionarCelda("D2"); Celda celda_miercoles = archivo.seleccionarCelda("E2"); Celda celda_jueves = archivo.seleccionarCelda("F2"); Celda celda_viernes = archivo.seleccionarCelda("G2"); Celda celda_sabado = archivo.seleccionarCelda("H2"); Celda celda_domingo = archivo.seleccionarCelda("I2"); Celda celda_lunes_quincena = archivo.seleccionarCelda("J2"); Celda celda_martes_quincena = archivo.seleccionarCelda("K2"); Celda celda_miercoles_quincena = archivo.seleccionarCelda("L2"); Celda celda_jueves_quincena = archivo.seleccionarCelda("M2"); Celda celda_viernes_quincena = archivo.seleccionarCelda("N2"); Celda celda_sabado_quincena = archivo.seleccionarCelda("O2"); Celda celda_domingo_quincena = archivo.seleccionarCelda("P2"); while (!celda_atm.Valor.Equals(string.Empty)) { short numero_atm = short.Parse(celda_atm.Valor); ATM atm = new ATM(numero: numero_atm); _mantenimiento.obtenerDatosATM(ref atm); if (atm.ID_Valido) { Monedas moneda = (Monedas)0; decimal retiro_lunes = decimal.Parse(celda_lunes.Valor); decimal retiro_martes = decimal.Parse(celda_martes.Valor); decimal retiro_miercoles = decimal.Parse(celda_miercoles.Valor); decimal retiro_jueves = decimal.Parse(celda_jueves.Valor); decimal retiro_viernes = decimal.Parse(celda_viernes.Valor); decimal retiro_sabado = decimal.Parse(celda_sabado.Valor); decimal retiro_domingo = decimal.Parse(celda_domingo.Valor); decimal retiro_lunes_quincena = decimal.Parse(celda_lunes_quincena.Valor); decimal retiro_martes_quincena = decimal.Parse(celda_martes_quincena.Valor); decimal retiro_miercoles_quincena = decimal.Parse(celda_miercoles_quincena.Valor); decimal retiro_jueves_quincena = decimal.Parse(celda_jueves_quincena.Valor); decimal retiro_viernes_quincena = decimal.Parse(celda_viernes_quincena.Valor); decimal retiro_sabado_quincena = decimal.Parse(celda_sabado_quincena.Valor); decimal retiro_domingo_quincena = decimal.Parse(celda_domingo_quincena.Valor); MontosRetirosATM monto = new MontosRetirosATM(atm, moneda, retiro_lunes: retiro_lunes, retiro_martes: retiro_martes, retiro_miercoles: retiro_miercoles, retiro_jueves: retiro_jueves, retiro_viernes: retiro_viernes, retiro_sabado: retiro_sabado, retiro_domingo: retiro_domingo, retiro_lunes_quincena: retiro_lunes_quincena, retiro_martes_quincena: retiro_martes_quincena, retiro_miercoles_quincena: retiro_miercoles_quincena, retiro_jueves_quincena: retiro_jueves_quincena, retiro_viernes_quincena: retiro_viernes_quincena, retiro_sabado_quincena: retiro_sabado_quincena, retiro_domingo_quincena: retiro_domingo_quincena); _montos.Add(monto); } celda_atm = archivo.seleccionarCelda(celda_atm.Fila + 1, celda_atm.Columna); celda_moneda = archivo.seleccionarCelda(celda_atm.Fila, celda_moneda.Columna); celda_lunes = archivo.seleccionarCelda(celda_atm.Fila, celda_lunes.Columna); celda_martes = archivo.seleccionarCelda(celda_atm.Fila, celda_martes.Columna); celda_miercoles = archivo.seleccionarCelda(celda_atm.Fila, celda_miercoles.Columna); celda_jueves = archivo.seleccionarCelda(celda_atm.Fila, celda_jueves.Columna); celda_viernes = archivo.seleccionarCelda(celda_atm.Fila, celda_viernes.Columna); celda_sabado = archivo.seleccionarCelda(celda_atm.Fila, celda_sabado.Columna); celda_domingo = archivo.seleccionarCelda(celda_atm.Fila, celda_domingo.Columna); celda_lunes_quincena = archivo.seleccionarCelda(celda_atm.Fila, celda_lunes_quincena.Columna); celda_martes_quincena = archivo.seleccionarCelda(celda_atm.Fila, celda_martes_quincena.Columna); celda_miercoles_quincena = archivo.seleccionarCelda(celda_atm.Fila, celda_miercoles_quincena.Columna); celda_jueves_quincena = archivo.seleccionarCelda(celda_atm.Fila, celda_jueves_quincena.Columna); celda_viernes_quincena = archivo.seleccionarCelda(celda_atm.Fila, celda_viernes_quincena.Columna); celda_sabado_quincena = archivo.seleccionarCelda(celda_atm.Fila, celda_sabado_quincena.Columna); celda_domingo_quincena = archivo.seleccionarCelda(celda_atm.Fila, celda_domingo_quincena.Columna); } archivo.mostrar(); archivo.cerrar(); } catch (Exception ex) { archivo.mostrar(); archivo.cerrar(); throw ex; } }
/// <summary> /// Obtener una lista de todos los ATM's con sus respectivos montos esperados de retiros para una moneda específica. /// </summary> /// <param name="m">Moneda para la cual se genera la lista</param> /// <returns>Lista de los ATM's y sus respectivos montos</returns> public BindingList <MontosRetirosATM> listarMontosRetirosATMs(Monedas m) { BindingList <MontosRetirosATM> montos_atms = new BindingList <MontosRetirosATM>(); SqlCommand comando = _manejador.obtenerProcedimiento("SelectMontosRetirosATMs"); SqlDataReader datareader = null; _manejador.agregarParametro(comando, "@moneda", m, SqlDbType.TinyInt); try { datareader = _manejador.ejecutarConsultaDatos(comando); while (datareader.Read()) { short id_montos = (short)datareader["ID_Montos"]; short id_atm = (short)datareader["ID_ATM"]; short numero = (short)datareader["Numero"]; string codigo = (string)datareader["Codigo"]; decimal retiro_lunes = (decimal)datareader["Retiro_Lunes"]; decimal retiro_martes = (decimal)datareader["Retiro_Martes"]; decimal retiro_miercoles = (decimal)datareader["Retiro_Miercoles"]; decimal retiro_jueves = (decimal)datareader["Retiro_Jueves"]; decimal retiro_viernes = (decimal)datareader["Retiro_Viernes"]; decimal retiro_sabado = (decimal)datareader["Retiro_Sabado"]; decimal retiro_domingo = (decimal)datareader["Retiro_Domingo"]; decimal retiro_lunes_quincena = (decimal)datareader["Retiro_Lunes_Quincena"]; decimal retiro_martes_quincena = (decimal)datareader["Retiro_Martes_Quincena"]; decimal retiro_miercoles_quincena = (decimal)datareader["Retiro_Miercoles_Quincena"]; decimal retiro_jueves_quincena = (decimal)datareader["Retiro_Jueves_Quincena"]; decimal retiro_viernes_quincena = (decimal)datareader["Retiro_Viernes_Quincena"]; decimal retiro_sabado_quincena = (decimal)datareader["Retiro_Sabado_Quincena"]; decimal retiro_domingo_quincena = (decimal)datareader["Retiro_Domingo_Quincena"]; ATM atm = new ATM(id: id_atm, numero: numero, codigo: codigo); MontosRetirosATM montos = new MontosRetirosATM(atm, m, id: id_montos, retiro_lunes: retiro_lunes, retiro_martes: retiro_martes, retiro_miercoles: retiro_miercoles, retiro_jueves: retiro_jueves, retiro_viernes: retiro_viernes, retiro_sabado: retiro_sabado, retiro_domingo: retiro_domingo, retiro_lunes_quincena: retiro_lunes_quincena, retiro_martes_quincena: retiro_martes_quincena, retiro_miercoles_quincena: retiro_miercoles_quincena, retiro_jueves_quincena: retiro_jueves_quincena, retiro_viernes_quincena: retiro_viernes_quincena, retiro_sabado_quincena: retiro_sabado_quincena, retiro_domingo_quincena: retiro_domingo_quincena); montos_atms.Add(montos); } comando.Connection.Close(); } catch (Exception) { comando.Connection.Close(); throw new Excepcion("ErrorDatosConexion"); } return(montos_atms); }