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); }
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); } }