Example #1
0
 public BankProduct.IBankProduct GetBankProductById(string id)
 {
     BankProduct.IBankProduct tempProduct = null;
     foreach (BankProduct.IBankProduct bankProduct in _bankProducts)
     {
         if (bankProduct.GetProductId() == id)
         {
             tempProduct = bankProduct;
             break;
         }
     }
     return(tempProduct);
 }
Example #2
0
        public void ExecuteTest()
        {
            Bank bank = new Bank(Bank.GetFreeBanktId());

            string clientId = bank.GetFreeBankProductId();
            Client client   = new Client("Jan", "Nowak", "01234567891");

            string      accountId   = bank.GetFreeBankProductId();
            BankAccount bankAccount = new BankAccount(accountId, new InterestTenPercent(), 1000, client);

            AddBankProduct addBankProduct = new AddBankProduct(bank, bankAccount);

            bank.DoOperation(addBankProduct);

            BankProduct.IBankProduct product = bank.GetBankProductById(accountId);
            Assert.AreNotEqual(null, product);
        }
Example #3
0
        public void Send(string sourceAccountId, string destinationAccountId, int saldo)
        {
            Withdraw withdraw        = null;
            Deposit  deposit         = null;
            Bank     sourceBank      = null;
            Bank     destinationBank = null;

            foreach (Bank bank in bankDictionary.Values)
            {
                if (bank.GetBankProductById(sourceAccountId) != null)
                {
                    System.Console.WriteLine("Znalazlem");
                    BankProduct.IBankProduct bankProduct = bank.GetBankProductById(sourceAccountId);

                    if (typeof(BankAccount) == bankProduct.GetType())
                    {
                        withdraw   = new Withdraw((BankProduct.BankAccount)bankProduct, saldo);
                        sourceBank = bank;
                    }
                }

                if (bank.GetBankProductById(destinationAccountId) != null)
                {
                    BankProduct.IBankProduct bankProduct = bank.GetBankProductById(destinationAccountId);
                    if (typeof(BankAccount) == bankProduct.GetType())
                    {
                        deposit         = new Deposit((BankProduct.BankAccount)bankProduct, saldo);
                        destinationBank = bank;
                    }
                }
            }

            if ((destinationBank != null) && (sourceBank != null))
            {
                System.Console.WriteLine("Poszlo");
                sourceBank.DoOperation(withdraw);
                destinationBank.DoOperation(deposit);
            }
        }
Example #4
0
 public Deposit(BankProduct.IBankProduct bankProduct, double value)
 {
     _bankProduct = bankProduct;
     _value       = value;
 }
Example #5
0
 public AddBankProduct(Bank bank, BankProduct.IBankProduct bankProduct)
 {
     _bank        = bank;
     _bankProduct = bankProduct;
 }
Example #6
0
 public Withdraw(BankProduct.IBankProduct bankProduct, double value)
 {
     _bankProduct = bankProduct;
     _value       = value;
 }