public async Task <IActionResult> Edit(int id, [Bind("Id,CategoryItemId,BankAccountId,FPUserId,Created,Type,Memo,Amount,IsDeleted")] Transaction transaction) { if (id != transaction.Id) { return(NotFound()); } if (ModelState.IsValid) { try { var oldTransaction = _context.Transaction.AsNoTracking().FirstOrDefault(t => t.Id == transaction.Id); _context.Update(transaction); var bankAccount = _context.BankAccount.Find(transaction.BankAccountId); if (oldTransaction.Amount > transaction.Amount) { var result = oldTransaction.Amount - transaction.Amount; bankAccount.CurrentBalance += result; _context.Update(bankAccount); } else { var result = oldTransaction.Amount - transaction.Amount; bankAccount.CurrentBalance += result; _context.Update(bankAccount); } await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!TransactionExists(transaction.Id)) { return(NotFound()); } else { throw; } } return(RedirectToAction(nameof(Index))); } ViewData["BankAccountId"] = new SelectList(_context.BankAccount, "Id", "Name", transaction.BankAccountId); ViewData["CategoryItemId"] = new SelectList(_context.CategoryItem, "Id", "Id", transaction.CategoryItemId); ViewData["FPUserId"] = new SelectList(_context.Users, "Id", "Id", transaction.FPUserId); return(View(transaction)); }
public async Task <IActionResult> Edit(int id, [Bind("Id,HouseholdId,Created,Subject,Body,IsRead")] Notification notification) { if (id != notification.Id) { return(NotFound()); } if (ModelState.IsValid) { try { _context.Update(notification); await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!NotificationExists(notification.Id)) { return(NotFound()); } else { throw; } } return(RedirectToAction(nameof(Index))); } return(View(notification)); }
public async Task <IActionResult> Edit(int id, [Bind("Id,Name,Greeting,Established")] Household household) { if (id != household.Id) { return(NotFound()); } if (ModelState.IsValid) { try { _context.Update(household); await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!HouseholdExists(household.Id)) { return(NotFound()); } else { throw; } } return(RedirectToAction(nameof(Index))); } return(View(household)); }
public async Task <IActionResult> Edit(int id, [Bind("Id,HouseholdId,Created,Expires,Accepted,EmailTo,Subject,Body,RoleName,Code")] Invitation invitation) { if (id != invitation.Id) { return(NotFound()); } if (ModelState.IsValid) { try { _context.Update(invitation); await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!InvitationExists(invitation.Id)) { return(NotFound()); } else { throw; } } return(RedirectToAction(nameof(Index))); } return(View(invitation)); }
public async Task <IActionResult> Edit(int id, [Bind("Id,HouseholdId,Name,Description")] Category category) { if (id != category.Id) { return(NotFound()); } if (ModelState.IsValid) { try { _context.Update(category); await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!CategoryExists(category.Id)) { return(NotFound()); } else { throw; } } return(RedirectToAction(nameof(Index))); } ViewData["HouseholdId"] = new SelectList(_context.Set <Household>(), "Id", "Id", category.HouseholdId); return(View(category)); }
public async Task <IActionResult> Edit(int id, [Bind("Id,CategoryId,Name,Description,TargetAmount,ActualAmount,Code")] CategoryItem categoryItem) { if (id != categoryItem.Id) { return(NotFound()); } if (ModelState.IsValid) { try { _context.Update(categoryItem); await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!CategoryItemExists(categoryItem.Id)) { return(NotFound()); } else { throw; } } return(RedirectToAction(nameof(Index))); } return(View(categoryItem)); }
public async Task <IActionResult> Edit(int id, [Bind("Id,HouseholdId,FPUserId,Name,Transaction,Type,StartingBalance,CurrentBalance")] BankAccount bankAccount) { if (id != bankAccount.Id) { return(NotFound()); } if (ModelState.IsValid) { try { _context.Update(bankAccount); await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!BankAccountExists(bankAccount.Id)) { return(NotFound()); } else { throw; } } return(RedirectToAction(nameof(Index))); } return(View(bankAccount)); }