public async Task <AccessTokenDto> CreateAccessTokenAsync(User user) { var jwtToken = GenerateJwtToken(CreateUserClaims(user)); var refreshToken = new RefreshToken { UserId = user.Id, Token = GenerateRefreshToken() }; if (await _refreshTokenRepository.AnyByUserIdAsync(user.Id)) { _refreshTokenRepository.Update(refreshToken); } else { _refreshTokenRepository.Create(refreshToken); } await _saveProvider.SaveAsync(); return(new AccessTokenDto { RefreshToken = refreshToken.Token, Token = jwtToken }); }