public void TerminalTransfer(ref ICashWihdrawal card2income, decimal amount) { if (amount + amount * TransferPaymentCommisionPersent < this.Balance) { this.Balance -= amount + amount * TransferPaymentCommisionPersent; this.Emittent.Funds += amount * TransferPaymentCommisionPersent; card2income.Income(amount); } else { Console.WriteLine("Not enough money!"); } }
public decimal Withdraw(ICashWihdrawal card, decimal amount) { return(card.AtmWithdraw(amount)); }
public void PaymentWithdraw(ICashWihdrawal card, string paymentDetails, decimal amount) { card.AtmWithdraw(amount); //Logic for transfering money to another account }
public void TransferWithdraw(ICashWihdrawal card2income, ICashWihdrawal card2withdraw, decimal amount) { card2income.TerminalTransfer(ref card2withdraw, amount); }