static void Main(string[] args)
        {
            IRepository repository = new ListRepository();
            BankService service    = new BankService(repository);


            AccountHolder holder  = AccountHolderCreator.CreateNewHolder("Alexey", "Kanunnikov", "+8 (029) 370-4492", "*****@*****.**");
            AccountHolder holder2 = AccountHolderCreator.CreateNewHolder("Alexey", "Prokhorov", "+8 (029) 370-4492", "*****@*****.**");

            service.OpenAccount(holder, new BaseAccountFactory(), new GuidAccountGenerator());
            service.OpenAccount(holder2, new SilverAccountFactory(), new GuidAccountGenerator());

            IEnumerable <Account> holdersA = holder.GetAllAccount();

            foreach (Account a in holdersA)
            {
                Console.WriteLine();
                a.Deposit(120);
                a.Withdraw(11);
                Console.WriteLine(a.ToString());
            }

            string number = holder.GetAllAccount().First().AccountNumber;

            service.SuspendAccount(number);

            List <Account> allAccounts = repository.ToList();

            foreach (Account i in allAccounts)
            {
                Console.WriteLine();
                Console.WriteLine(i.ToString());
            }
        }
Пример #2
0
        static void Main(string[] args)
        {
            ListRepository repository = new ListRepository();

            BankService service = new BankService(repository);

            AccountHolder first_holder = CreateAccountHolder.CreateAccount("Kostya", "Pityk", "*****@*****.**", "+8 (029) 250-1234");

            AccountHolder second_holder = CreateAccountHolder.CreateAccount("Stas", "Ivanov", "*****@*****.**", "+8 (029) 370-8656");

            service.OpenAccount(first_holder, new Bank.Account.Account_Factories.SilverAccountFactory(), new GenerateAccountNumber());
            service.OpenAccount(first_holder, new Bank.Account.Account_Factories.GoldAccountFactory(), new GenerateAccountNumber());

            IEnumerable <Account> accounts = first_holder.GetAllAccount();

            foreach (var temp in accounts)
            {
                temp.Deposit(80);
                temp.Withdraw(30);
                Console.WriteLine(temp.ToString());
            }

            foreach (var temp in accounts)
            {
                service.FrozenAccount(temp);
                Console.WriteLine(temp.ToString());
            }

            foreach (var temp in accounts)
            {
                service.UnFrozenAccount(temp);
                Console.WriteLine(temp.ToString());
            }

            foreach (var temp in accounts)
            {
                service.CloseAccount(temp);
                Console.WriteLine(temp.ToString());
            }

            Console.ReadKey();
        }