public async Task <IActionResult> Withdraw(int?id) { if (id == null) { return(NotFound()); } var termD = await _TermDepositRepo.Get(id); if (termD == null) { return(NotFound()); } TDWithdrawlVM TDWVM = new TDWithdrawlVM { Accounts = await _AcctRepo.Get(UserManager.GetUserId(User)), Withdrawn = termD.Withdrawn, maturityDate = termD.DateCreated.AddYears(termD.TermYears) }; return(View(TDWVM)); }
public async Task <IActionResult> Withdraw(int id, [Bind("WithdrawlToAccount, AccountID, Withdrawn")] TDWithdrawlVM TDWVM) { TermDeposit termD = await _TermDepositRepo.Get(id); if (ModelState.IsValid) { try { if (TDWVM.WithdrawlToAccount) { var account = await _AcctRepo.Get(TDWVM.AccountID); await _TermDepositRepo.Withdraw(termD); await _AcctRepo.TDDeposit(account, termD.WithdrawlAmount, termD.Id); } else { await _TermDepositRepo.Withdraw(termD); } } catch (DbUpdateConcurrencyException) { if (!TermDepositExists(id)) { return(NotFound()); } else { throw; } } return(RedirectToAction(nameof(Index))); } return(View(TDWVM)); }