Exemplo n.º 1
0
        /// <summary>
        /// Print CryptocurrencyMoney class object in clear format, ex. 1334.300 12.0036
        /// </summary>
        public override string ToClearString()
        {
            string ts = amount.ToStringGlobal(CryptocurrencyTypeHelper.GetDecimalPlaces(cryptocurrencyType));

            ts = CutEndingZeros(ts);
            return(ts.Replace(",", ""));
        }
Exemplo n.º 2
0
 public String GetClearStringBalance(BalanceType type)
 {
     if (BalanceTypeHelper.IsCryptoBalance(type))
     {
         return(UserCryptocurrencyBalance.Get(Member.CurrentId, CryptocurrencyTypeHelper.ConvertToCryptocurrencyType(type)).ToClearString());
     }
     return(GetBasicBalance(type).ToClearString());
 }
Exemplo n.º 3
0
 public decimal GetDecimalBalance(BalanceType type)
 {
     if (BalanceTypeHelper.IsCryptoBalance(type))
     {
         return(UserCryptocurrencyBalance.Get(Member.CurrentId, CryptocurrencyTypeHelper.ConvertToCryptocurrencyType(type)).ToDecimal());
     }
     else
     {
         return(GetBasicBalance(type).ToDecimal());
     }
 }
Exemplo n.º 4
0
        public static String RecognizeCurrencyAndReturnString(bool asStock, decimal value)
        {
            BalanceType targetType = asStock ? AppSettings.InternalExchange.InternalExchangeStockType : AppSettings.InternalExchange.InternalExchangePurchaseVia;

            if (BalanceTypeHelper.IsCryptoBalance(targetType))
            {
                return(new CryptocurrencyMoney(CryptocurrencyTypeHelper.ConvertToCryptocurrencyType(targetType), value).ToString());
            }

            return(new Money(value).ToString());
        }
Exemplo n.º 5
0
        public static String GetBalanceCode(bool isStock)
        {
            BalanceType targetBalance = isStock == true ? AppSettings.InternalExchange.InternalExchangeStockType : AppSettings.InternalExchange.InternalExchangePurchaseVia;

            if (BalanceTypeHelper.IsCryptoBalance(targetBalance))
            {
                return(CryptocurrencyFactory.Get(CryptocurrencyTypeHelper.ConvertToCryptocurrencyType(targetBalance)).Code);
            }

            return(AppSettings.Site.CurrencyCode);
        }
Exemplo n.º 6
0
        public static String GetBalanceSign(bool isStock)
        {
            BalanceType targetBalance = isStock == true ? AppSettings.InternalExchange.InternalExchangeStockType : AppSettings.InternalExchange.InternalExchangePurchaseVia;

            if (BalanceTypeHelper.IsCryptoBalance(targetBalance))
            {
                Cryptocurrency crypto = CryptocurrencyFactory.Get(CryptocurrencyTypeHelper.ConvertToCryptocurrencyType(targetBalance));
                if (String.IsNullOrEmpty(crypto.CurrencyDisplaySignBefore))
                {
                    return(crypto.CurrencyDisplaySignAfter.Trim());
                }
                return(crypto.CurrencyDisplaySignBefore.Trim());
            }
            return(AppSettings.Site.CurrencySign.Trim());
        }
Exemplo n.º 7
0
        public String GetStringBalance(BalanceType type)
        {
            if (BalanceTypeHelper.IsCryptoBalance(type))
            {
                return(UserCryptocurrencyBalance.Get(Member.CurrentId, CryptocurrencyTypeHelper.ConvertToCryptocurrencyType(type)).ToString().Trim());
            }
            else
            {
                if (type == BalanceType.PTCCredits || type == BalanceType.PointsBalance)
                {
                    return(GetBasicBalance(type).ToClearString().Trim());
                }

                return(GetBasicBalance(type).ToString().Trim());
            }
        }
    public void MarkAsPaid()
    {
        Status = WithdrawRequestStatus.Accepted;
        var user = new Member(UserId);

        if (WithdrawalSourceBalance == WithdrawalSourceBalance.MainBalance)
        {
            PaymentProportionsManager.MemberPaidOut(Amount, CryptocurrencyTypeHelper.ConvertToPaymentProcessor(Cryptocurrency), user);
            CryptocurrencyObject.AddPaymentProof(Amount, user);
        }
        else
        {
            CryptocurrencyObject.AddPaymentProof(CryptocurrencyObject.ConvertToMoney(Amount.ToDecimal()), user);
        }

        Save();
    }
Exemplo n.º 9
0
        /// <summary>
        /// Print CryptocurrencyMoney class object, ex. ฿4.30042801
        /// </summary>
        public override string ToString()
        {
            string output = amount.ToStringGlobal(CryptocurrencyTypeHelper.GetDecimalPlaces(cryptocurrencyType));

            if (AppSettings.Site.CommasInNumbersEnabled)
            {
                String formatCommand = "{0:n" + CryptocurrencyTypeHelper.GetDecimalPlaces(cryptocurrencyType) + "}";
                output = String.Format(new System.Globalization.CultureInfo("en-US"), formatCommand, Decimal.Parse(output));
            }

            output = CutEndingZeros(output);
            output = String.Format("{0}{1}{2}",
                                   cryptocurrency.CurrencyDisplaySignBefore,
                                   output,
                                   cryptocurrency.CurrencyDisplaySignAfter);

            return(output);
        }
Exemplo n.º 10
0
    public static String GetDisplayValue(BalanceType balanceType, decimal input)
    {
        Money ValueInMoney = new Money(input);

        if (balanceType == BalanceType.PointsBalance)
        {
            return(ValueInMoney.AsPoints().ToString());
        }

        else if (balanceType == BalanceType.PTCCredits)
        {
            return(ValueInMoney.ToClearString());
        }

        else if (BalanceTypeHelper.IsCryptoBalance(balanceType))
        {
            return((new CryptocurrencyMoney(CryptocurrencyTypeHelper.ConvertToCryptocurrencyType(balanceType), input)).ToString());
        }


        return(ValueInMoney.ToString());
    }
Exemplo n.º 11
0
 private void SubtractFromCryptocurrencyBalance(CryptocurrencyType cryptocurrencyType, CryptocurrencyMoney value, string note, BalanceLogType logType = BalanceLogType.Other)
 {
     UserCryptocurrencyBalance.Remove(this.Id, value, cryptocurrencyType);
     //Works on ONE crypto balance at the moment
     BalanceLog.Add(this, CryptocurrencyTypeHelper.ConvertToBalanceType(cryptocurrencyType), value.ToDecimal() * -1, note, logType);
 }
Exemplo n.º 12
0
 public override int GetMultiplier()
 {
     return((int)Math.Pow(10, CryptocurrencyTypeHelper.GetDecimalPlaces(cryptocurrencyType)));
 }