Beispiel #1
0
        public void Close(Bank bank, int id)
        {
            var account = _accountStorage.Get(bank, id);

            if (account == null)
            {
                throw new ArgumentNullException(nameof(account));
            }

            _output.OutputMessage($"Счет {account.Id} закрыт. Итоговая сумма: {account.Sum}");

            _accountStorage.Remove(bank, account);
        }
Beispiel #2
0
        public void Put(Bank bank, decimal sum, int id)
        {
            var account = _accountStorage.Get(bank, id);

            if (account == null)
            {
                throw new ArgumentNullException(nameof(account));
            }

            var putValidationMessage = account.ValidatePut(sum);

            if (putValidationMessage is null)
            {
                account.AddSum(sum);
                _output.OutputMessage($"На счёт {account.Id} добавлено {sum}. Итоговая сумма - {account.Sum}");
            }
            else
            {
                _output.OutputMessage(putValidationMessage);
            }
        }
        public void Withdraw(Bank bank, decimal sum, int id)
        {
            var account = _accountStorage.Get(bank, id);

            if (account == null)
            {
                throw new ArgumentNullException(nameof(account));
            }

            var withDrawValidationMessage = account.ValidateWithdraw(sum);

            if (withDrawValidationMessage is null)
            {
                account.SubtractSum(sum);
                _output.OutputMessage($"Со счета {account.Id} было снято: {sum}");
            }
            else
            {
                _output.OutputMessage(withDrawValidationMessage);
            }
        }