/// <summary> /// Quitar un monto por denominación en mesa. /// </summary> /// <param name="monto">Monto a quitar</param> public void quitarMontoCierre(MontoCierreATMs monto) { switch (monto.Tipo) { case TiposMontoCierre.MesaDescarga: _montos_mesa_descargas.Remove(monto); _montos_descargas.Remove(monto); break; case TiposMontoCierre.ColaDescarga: _montos_cola_descargas.Remove(monto); _montos_descargas.Remove(monto); break; case TiposMontoCierre.MesaDescargaFull: _montos_mesa_descargas_full.Remove(monto); _montos_descargas_full.Remove(monto); break; case TiposMontoCierre.ColaDescargaFull: _montos_cola_descargas_full.Remove(monto); _montos_descargas_full.Remove(monto); break; } }
/// <summary> /// Crear los montos de cierre por denominación para las descargas full. /// </summary> /// <param name="denominaciones">Lista de denominaciones para las cuales se crearán los montos</param> public void crearMontosDescargasFull(BindingList <Denominacion> denominaciones) { foreach (Denominacion denominacion in denominaciones) { if (denominacion.Moneda != Monedas.Euros) { if (denominacion.Moneda == Monedas.Colones) { if (denominacion.Valor > 500) { MontoCierreATMs monto_mesa_descarga_full = new MontoCierreATMs(denominacion: denominacion, tipo: TiposMontoCierre.MesaDescargaFull); MontoCierreATMs monto_cola_descarga_full = new MontoCierreATMs(denominacion: denominacion, tipo: TiposMontoCierre.ColaDescargaFull); this.agregarMontoCierre(monto_mesa_descarga_full); this.agregarMontoCierre(monto_cola_descarga_full); } } else { MontoCierreATMs monto_mesa_descarga_full = new MontoCierreATMs(denominacion: denominacion, tipo: TiposMontoCierre.MesaDescargaFull); MontoCierreATMs monto_cola_descarga_full = new MontoCierreATMs(denominacion: denominacion, tipo: TiposMontoCierre.ColaDescargaFull); this.agregarMontoCierre(monto_mesa_descarga_full); this.agregarMontoCierre(monto_cola_descarga_full); } } } }
/// <summary> /// Agregar un monto por denominación en mesa para descargas. /// </summary> /// <param name="monto">Monto a agregar</param> public void agregarMontoCierre(MontoCierreATMs monto) { switch (monto.Tipo) { case TiposMontoCierre.MesaDescarga: _montos_mesa_descargas.Add(monto); _montos_descargas.Add(monto); break; case TiposMontoCierre.ColaDescarga: _montos_cola_descargas.Add(monto); _montos_descargas.Add(monto); break; case TiposMontoCierre.MesaDescargaFull: if (monto.Denominacion.Moneda != Monedas.Euros) { if (monto.Denominacion.Moneda == Monedas.Colones) { if (monto.Denominacion.Valor > 500) { _montos_mesa_descargas_full.Add(monto); _montos_descargas_full.Add(monto); } } else { _montos_mesa_descargas_full.Add(monto); _montos_descargas_full.Add(monto); } } break; case TiposMontoCierre.ColaDescargaFull: if (monto.Denominacion.Moneda != Monedas.Euros) { if (monto.Denominacion.Moneda == Monedas.Colones) { if (monto.Denominacion.Valor > 500) { _montos_cola_descargas_full.Add(monto); _montos_descargas_full.Add(monto); } } else { _montos_cola_descargas_full.Add(monto); _montos_descargas_full.Add(monto); } } break; } }
/// <summary> /// Crear los montos de cierre por denominación para las descargas normales. /// </summary> /// <param name="denominaciones">Lista de denominaciones para las cuales se crearán los montos</param> public void crearMontosDescargas(BindingList <Denominacion> denominaciones) { foreach (Denominacion denominacion in denominaciones) { MontoCierreATMs monto_mesa_descarga = new MontoCierreATMs(denominacion: denominacion, tipo: TiposMontoCierre.MesaDescarga); MontoCierreATMs monto_cola_descarga = new MontoCierreATMs(denominacion: denominacion, tipo: TiposMontoCierre.ColaDescarga); this.agregarMontoCierre(monto_mesa_descarga); this.agregarMontoCierre(monto_cola_descarga); } }
/// <summary> /// Eliminar un monto por denominación de un cierre. /// </summary> /// <param name="m">Objeto MontoCierreATMs con los datos del monto</param> public void eliminarMontoCierreATMs(MontoCierreATMs m) { SqlCommand comando = _manejador.obtenerProcedimiento("DeleteMontoCierreATMs"); _manejador.agregarParametro(comando, "@monto", m, SqlDbType.Int); try { _manejador.ejecutarConsultaActualizacion(comando); comando.Connection.Close(); } catch (Exception) { comando.Connection.Close(); throw new Excepcion("ErrorMontoCierreATMsEliminacion"); } }
/// <summary> /// Registrar en el sistema el monto por denominación de un cierre de ATM's. /// </summary> /// <param name="m">Objeto MontoCierreATMs con los datos del monto por denominación</param> public void agregarMontoCierreATMs(ref MontoCierreATMs m, CierreATMs c) { SqlCommand comando = _manejador.obtenerProcedimiento("InsertCierreATMsMonto"); _manejador.agregarParametro(comando, "@denominacion", m.Denominacion, SqlDbType.TinyInt); _manejador.agregarParametro(comando, "@cantidad", m.Cantidad, SqlDbType.Int); _manejador.agregarParametro(comando, "@tipo", m.Tipo, SqlDbType.TinyInt); _manejador.agregarParametro(comando, "@cierre", c, SqlDbType.Int); try { m.ID = (int)_manejador.ejecutarEscalar(comando); comando.Connection.Close(); } catch (Exception) { comando.Connection.Close(); throw new Excepcion("ErrorMontoCierreATMsRegistro"); } }
/// <summary> /// Obtener los montos por denominación de un cierre de ATM's. /// </summary> /// <param name="c">Objeto CierreATMs con los datos del cierre</param> public void obtenerMontosCierreATMs(ref CierreATMs c) { SqlCommand comando = _manejador.obtenerProcedimiento("SelectCierreATMsMontosCierreATMs"); SqlDataReader datareader = null; _manejador.agregarParametro(comando, "@cierre", c, SqlDbType.Int); try { datareader = _manejador.ejecutarConsultaDatos(comando); while (datareader.Read()) { int id_monto = (int)datareader["ID_Monto"]; int cantidad = (int)datareader["Cantidad"]; TiposMontoCierre tipo = (TiposMontoCierre)datareader["Tipo"]; byte id_denominacion = (byte)datareader["ID_Denominacion"]; decimal valor = (decimal)datareader["Valor"]; Monedas moneda = (Monedas)datareader["Moneda"]; string codigo = datareader["Codigo"] as string; Denominacion denominacion = new Denominacion(id: id_denominacion, valor: valor, moneda: moneda, codigo: codigo); MontoCierreATMs monto = new MontoCierreATMs(denominacion, id: id_monto, cantidad: cantidad, tipo: tipo); c.agregarMontoCierre(monto); } comando.Connection.Close(); } catch (Exception) { comando.Connection.Close(); throw new Excepcion("ErrorDatosConexion"); } }