示例#1
0
        public async Task <ApiResponse> AddOrUpdateUserAchievement(string id, AchievementDyscyplineVm achievementDyscyplineVm)
        {
            var user = _unitOfWork.userRepository.FindByCondition(x => x.Id == id).FirstOrDefault();

            if (user == null)
            {
                throw new MyNotFoundException(ApiResponseDescription.USER_NOT_FOUND);
            }

            if (achievementDyscyplineVm.Id == 0)
            {
                var model = _mapper.Map <AchievementDyscyplineVm, AchievementDyscypline>(achievementDyscyplineVm);

                model.ApplicationUserId = id;

                _unitOfWork.achievementDyscyplineRepository.Create(model);
            }
            else
            {
                var model = _unitOfWork.achievementDyscyplineRepository.FindByCondition(x => x.Id == achievementDyscyplineVm.Id).FirstOrDefault();

                _mapper.Map <AchievementDyscyplineVm, AchievementDyscypline>(achievementDyscyplineVm, model);

                _unitOfWork.achievementDyscyplineRepository.Update(model);
            }

            await _unitOfWork.CompleteAsync();

            return(new ApiResponse(true));
        }
示例#2
0
 public async Task <IActionResult> AddOrUpdateUserAchievements(string id, [FromBody] AchievementDyscyplineVm achievementDyscyplineVm) =>
 Ok(await _userService.AddOrUpdateUserAchievement(id, achievementDyscyplineVm));