Exemple #1
0
        /// <summary>
        /// Adjusts value for currency
        /// </summary>
        /// <param name="originalValue">Original value</param>
        /// <param name="currencyString">Currency string</param>
        /// <returns>Return adjusted value for currency</returns>
        public double AdjustValueForCurrency(double originalValue, string currencyString)
        {
            CurrencyConversion currencyConversion = this.CurrencyConversion;

            if (currencyConversion == null)
            {
                return(originalValue);
            }

            int currencyCode     = currencyString.ToInt();
            int analysisCurrency = this.Settings.CurrencyCode;

            if (currencyCode == 0 || currencyCode == analysisCurrency || analysisCurrency == 0)
            {
                return(originalValue);
            }

            var conversionRate = currencyConversion.ExchangeRateFromCodeToCode(currencyCode, analysisCurrency);

            if (conversionRate == 0 || conversionRate == 1)
            {
                return(originalValue);
            }

            return(originalValue / conversionRate);
        }