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)); }
public async Task <IActionResult> AddOrUpdateUserAchievements(string id, [FromBody] AchievementDyscyplineVm achievementDyscyplineVm) => Ok(await _userService.AddOrUpdateUserAchievement(id, achievementDyscyplineVm));