예제 #1
0
        public static double GetCurrencyRate(IsoCurrencyModel CurrencyIn, IsoCurrencyModel CurrencyOut)
        {
            if (CurrencyIn == null || CurrencyOut == null)
            {
                return(0);
            }
            double output = 0.0;

            if (CurrencyIn.Base == CurrencyOut.Currency)
            {
                output = 1 / CurrencyIn.Rate;
            }
            else
            {
                if (CurrencyOut.Base == CurrencyIn.Currency)
                {
                    output = CurrencyOut.Rate;
                }
                else
                {
                    output = (CurrencyOut.Rate / CurrencyIn.Rate);
                }
            }
            return(output);
        }
예제 #2
0
        /// <summary>
        /// Save currency
        /// </summary>
        /// <param name="key"></param>
        /// <param name="currency"></param>
        /// <returns></returns>
        public static IsoCurrencyModel SaveCurrency(string key, IsoCurrencyModel currency)
        {
            try
            {
                string         sql;
                SqlParameter[] arrParam;
                if (!string.IsNullOrEmpty(key) && key != currency.ISOCode)
                {
                    sql         = "Update ISOCurrencies set InUse=0 Where [ISO-4217]=@ISOCode";
                    arrParam    = new SqlParameter[1];
                    arrParam[0] = new SqlParameter("@IsoCode", key);
                    DataContext.ExecuteSql(sql, CommandType.Text, arrParam);
                }

                if (CurrencyExists(currency.ISOCode))
                {
                    sql = "Update ISOCurrencies set Currency=@Currency, InUse=1 Where [ISO-4217]=@ISOCode";
                }
                else
                {
                    sql = "Insert Into ISOCurrencies([ISO-4217],Currency, InUse) Values (@ISOCode,@Currency,1)";
                }
                arrParam    = new SqlParameter[2];
                arrParam[0] = new SqlParameter("@IsoCode", currency.ISOCode);
                arrParam[1] = new SqlParameter("@Currency", currency.Currency);
                object obj = DataContext.ExecuteScalarSql(sql, CommandType.Text, arrParam);
                return(currency);
            }
            catch
            {
                throw;
            }
        }