コード例 #1
0
 public CardService(ICardRepository cardRepository, IWithdrawalFeeCalculator withdrawalFeeCalculator,
                    IFeeRepository feeRepository, IFeeFactory feeFactory)
 {
     _cardRepository          = cardRepository;
     _withdrawalFeeCalculator = withdrawalFeeCalculator;
     _feeRepository           = feeRepository;
     _feeFactory = feeFactory;
 }
コード例 #2
0
        public void WithdrawMoneyFrom(IWithdrawalAndDepositAccount account, decimal amount, IWithdrawalFeeCalculator withdrawalFeeCalculator)
        {
            var totalAmount = withdrawalFeeCalculator.CalculateAmountToWithdraw(amount);

            if (totalAmount > account.Amount)
            {
                Console.WriteLine("Insufficient funds.");
                return;
            }
            account.Withdraw(totalAmount);
            Console.WriteLine("{0}: {1}", account.GetType().Name, account.Amount);
        }