public async Task <ActionResultResponse> Insert(string userId, string roleId) { var isExists = await _userRoleRepository.CheckExists(userId, roleId); if (isExists) { return(new ActionResultResponse(-1, _resourceService.GetString("Role already assigned for this user."))); } // Check user exists by id. var isUserExists = await _userAccountRepository.CheckExistsByUserId(userId); if (!isUserExists) { return(new ActionResultResponse(-2, _resourceService.GetString("User does not exists."))); } var roleInfo = await _roleRepository.FindByIdAsync(roleId, new CancellationToken()); if (roleInfo == null) { return(new ActionResultResponse(-3, _resourceService.GetString("Role does not exists."))); } var result = await _userRoleRepository.Insert(userId, roleId); return(new ActionResultResponse(result, result <= 0 ? _sharedResourceService.GetString("Something went wrong. Please contact with administrator.") : _resourceService.GetString("Assign role successful."))); }