Esempio n. 1
0
        public void Execute()
        {
            Console.Clear();
            _UI.Display(60, 0);

            Console.Write("Введите номер счёта, который хотите закрыть: ");
            long id = long.Parse(Console.ReadLine());

            Console.Clear();
            _UI.Display(80, 0);

            if (_database.IsBalanceExists(id))
            {
                Balance closedCount = _database.Get(id);
                _database.Remove(id);
                _closedCounts.Push(closedCount);
                Console.WriteLine("Счёт " + closedCount.Id + " c суммой " + closedCount.Value + " успешно закрыт");
            }
            else
            {
                Console.WriteLine("Счёта номер " + id + " не существует в базе данных");
            }

            Thread.Sleep(1500);
        }
        public void Execute()
        {
            Console.Clear();

            _UI.Display(60, 0);
            Console.Write("Введите номер счёта отправителя: ");
            long senderId = long.Parse(Console.ReadLine());

            Console.Write("Введитель номер счёта получателя: ");
            long receiverId = long.Parse(Console.ReadLine());

            Console.Write("Введитель сумму: ");
            int value = int.Parse(Console.ReadLine());

            if (!isTransferValid(senderId, receiverId, value))
            {
                Console.Clear();
                _UI.Display(60, 0);
                Console.WriteLine("Операция некорректна!");
                Thread.Sleep(1500);
                return;
            }

            Balance  sender   = _database.Get(senderId);
            Balance  receiver = _database.Get(receiverId);
            Transfer transfer = new Transfer(sender, receiver, value);

            sender.Distruct(value);
            receiver.Add(value);
            _transfers.Push(transfer);

            Console.Clear();
            _UI.Display(60, 0);
            Console.WriteLine("Операция прошла успешно");
            Thread.Sleep(1500);
        }
Esempio n. 3
0
        private static void Main(string[] args)
        {
            ExecutableCommand[] commands = new[] { new ExecutableCommand("Открыть счёт", new BalanceOpening(_balancesDatabase)), new ExecutableCommand("Закрыть счёт", new BalanceClosing(_balancesDatabase)),
                                                   new ExecutableCommand("Перевести деньги", new TransferBetweenBalances(_balancesDatabase)) };
            BalancesUI UI = new BalancesUI(_balancesDatabase);

            while (true)
            {
                Console.Clear();
                UI.Display(50, 0);

                string input = GetCommandName();
                ProcessCommands(commands, input);
            }
        }