/// <summary> /// Recalcular los detalles por denominación de la descarga. /// </summary> public void recalcularDetalles() { foreach (DetalleDescargaATMFull detalle in _detalles_denominacion.Values) { detalle.Cantidad_descargada = 0; detalle.Cantidad_depositada = 0; } foreach (MontoDescargaATMFull monto in _montos) { DetalleDescargaATMFull detalle = this.obtenerDetalle(monto.Denominacion); detalle.Cantidad_descargada += monto.Cantidad; } foreach (ContadorDescargaATMFull contador in _contadores) { DetalleDescargaATMFull detalle = this.obtenerDetalle(contador.Denominacion); detalle.Cantidad_depositada += contador.Cantidad_depositada; } _detalles_colones.Clear(); _detalles_dolares.Clear(); _detalles.Clear(); _cuadrada = true; foreach (DetalleDescargaATMFull detalle in _detalles_denominacion.Values) { switch (detalle.Denominacion.Moneda) { case Monedas.Colones: _detalles_colones.Add(detalle); break; case Monedas.Dolares: _detalles_dolares.Add(detalle); break; } if (detalle.Cantidad_diferencia != 0) { _cuadrada = false; } _detalles.Add(detalle); } }
/// <summary> /// Obtener el detalle por denominación de una denominación. /// </summary> private DetalleDescargaATMFull obtenerDetalle(Denominacion denominacion) { if (_detalles_denominacion.ContainsKey(denominacion)) { return(_detalles_denominacion[denominacion]); } else { DetalleDescargaATMFull detalle = new DetalleDescargaATMFull(denominacion); _detalles_denominacion.Add(denominacion, detalle); return(detalle); } }