private void DepositCryptocurrency(Member user, decimal amountInCryptocurrency) { Money moneyAmount = ConvertToMoney(amountInCryptocurrency); LogType LogType = ErrorLoggerHelper.GetTypeFromProcessor(DepositApiProcessor); user.Reload(); if (DepositTarget == DepositTargetBalance.PurchaseBalance) { user.AddToPurchaseBalance(moneyAmount, Code + " deposit", BalanceLogType.Other); user.SaveBalances(); } if (DepositTarget == DepositTargetBalance.CashBalance) { user.AddToCashBalance(moneyAmount, Code + " deposit", BalanceLogType.Other); user.SaveBalances(); //Referral commission for sponsors when user does Cash Balance deposit CashBalanceCrediter Crediter = (CashBalanceCrediter)CrediterFactory.Acquire(user, CreditType.CashBalanceDeposit); Crediter.TryCreditReferer(moneyAmount); } if (DepositTarget == DepositTargetBalance.Wallet) { user.AddToCryptocurrencyBalance(Type, amountInCryptocurrency, Code + " Wallet deposit", BalanceLogType.WalletDeposit); } PaymentProportionsManager.MemberPaidIn(moneyAmount, CryptocurrencyTypeHelper.ConvertToPaymentProcessor(Type), user); History.AddTransfer(user.Name, moneyAmount, Code + " deposit", DepositTarget.ToString()); ContestManager.IMadeAnAction(ContestType.Transfer, user.Name, moneyAmount, 0); }
public void Accept() { try { var user = new Member(UserId); CryptocurrencyObject.MakeWithdrawal(Amount, Address, user, WithdrawalSourceBalance); Status = WithdrawRequestStatus.Accepted; } catch (MsgException msg) { throw msg; } catch (Exception ex) { ErrorLogger.Log(ex.Message, ErrorLoggerHelper.GetTypeFromProcessor(CryptocurrencyObject.WithdrawalApiProcessor), true); } finally { Save(); } }
public static void logPayout(string message, TransactionRequest request, TransactionResponse response, string paymentProcessor) { PaymentProcessor processor = PaymentAccountDetails.GetFromStringType(paymentProcessor); ErrorLogger.Log(String.Format(@"{0}: PayoutRequest ID: {1} Raw response: {2}", message, request.PayeeId, response.RawResponse), ErrorLoggerHelper.GetTypeFromProcessor(processor), true); }