Example #1
0
        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");
        }
Example #2
0
        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");
        }