public async Task <IActionResult> AddRecurringTransaction(int userId, RecurringTransactionForCreationDto RecurringTransactionForCreation) { var creator = await _userRepo.GetUser(userId); if (creator.Id != int.Parse(User.FindFirst(ClaimTypes.NameIdentifier).Value)) { return(Unauthorized()); } var RecurringTransaction = _mapper.Map <RecurringTransaction>(RecurringTransactionForCreation); RecurringTransaction.User = creator; _repo.Add(RecurringTransaction); if (await _repo.SaveAll()) { var jobToReturn = _mapper.Map <RecurringTransactionForReturnDto>(RecurringTransaction); return(CreatedAtRoute("GetRecurringTransaction", new { Id = RecurringTransaction.Id, userId = userId }, jobToReturn)); } throw new Exception("Creation of RecurringTransaction item failed on save"); }
public async Task <IActionResult> UpdateRecurringTransaction(int userId, int Id, RecurringTransactionForCreationDto RecurringTransactionForUpdateDto) { if (userId != int.Parse(User.FindFirst(ClaimTypes.NameIdentifier).Value)) { return(Unauthorized()); } var RecurringTransactionFromRepo = await _repo.GetRecurringTransaction(Id); _mapper.Map(RecurringTransactionForUpdateDto, RecurringTransactionFromRepo); if (await _repo.SaveAll()) { return(CreatedAtRoute("GetRecurringTransaction", new { Id = RecurringTransactionFromRepo.Id, userId = userId }, RecurringTransactionFromRepo)); } throw new Exception($"Updating RecurringTransaction item {Id} failed on save"); }