- File:
-
- 1 edited
-
iknow-api/Services/Implementations/AuthService.cs (modified) (5 diffs)
Legend:
- Unmodified
- Added
- Removed
-
iknow-api/Services/Implementations/AuthService.cs
rc155364 rb38c39c 3 3 using System.Text; 4 4 using BCrypt.Net; 5 using iknow_api. Services;5 using iknow_api.Controllers; 6 6 using iknow_api.Models; 7 7 using iknow_api.DTOs; … … 14 14 { 15 15 private readonly IUserRepository _userRepository; 16 private readonly IRefreshTokenRepository _refreshTokenRepository;17 private readonly IRefreshTokenService _refreshTokenService;18 16 private readonly IConfiguration _configuration; 19 17 20 public AuthService(IUserRepository userRepository, IConfiguration configuration 21 , IRefreshTokenService refreshTokenService, IRefreshTokenRepository refreshTokenRepository) 18 public AuthService(IUserRepository userRepository, IConfiguration configuration) 22 19 { 23 20 _userRepository = userRepository; 24 21 _configuration = configuration; 25 _refreshTokenService = refreshTokenService;26 _refreshTokenRepository = refreshTokenRepository;27 22 } 28 23 … … 45 40 46 41 await _userRepository.AddUserAsync(user); 42 int userId = user.Id; 43 var contactInfo = new ContactInfo 44 { 45 UserId = userId, 46 city = registerDto.city, 47 address = registerDto.address, 48 municipality = registerDto.municipality, 49 phoneNumber = registerDto.phoneNumber, 50 microsoftEmail = registerDto.microsoftEmail 51 }; 52 await _userRepository.AddContactAsync(contactInfo); 53 var enrollmentInfo = new EnrollmentInfo 54 { 55 UserId = userId, 56 enrollmentYear = registerDto.enrollmentYear, 57 quota = (Models.quota)registerDto.quotaType, 58 major = (Models.major)registerDto.majorType 59 }; 60 await _userRepository.AddEnrollmentAsync(enrollmentInfo); 61 await _userRepository.AddHighSchoolAsync(new HighSchool 62 { 63 UserId = userId, 64 GPA = registerDto.gpa, 65 tip = (Models.type)registerDto.tip 66 }); 47 67 return true; 48 68 } 49 69 50 public async Task< AuthResultDto?> LoginAsync(LoginDto loginDto)70 public async Task<string?> LoginAsync(LoginDto loginDto) 51 71 { 52 72 var user = await _userRepository.GetUserByUsernameAsync(loginDto.Email); … … 54 74 return null; 55 75 56 var result = new AuthResultDto 57 { 58 AccessToken = CreateToken(user) 59 }; 60 61 if (loginDto.GenerateRefreshToken) 62 { 63 int userid = _userRepository.GetUserByUsernameAsync(loginDto.Email).Id; 64 result.RefreshToken = await _refreshTokenService.GenerateRefreshToken(userid); 65 } 66 67 return result; 76 return CreateToken(user); 68 77 } 69 78 … … 71 80 { 72 81 return await _userRepository.GetUsersCountAsync(); 73 }74 75 public async Task<AuthResultDto> GenerateNewJWT(VerifyRefreshTokenDto token)76 {77 int userid = await _refreshTokenRepository.GetUserId(token.token) ?? 0;78 User user = await _userRepository.GetOnlyUserByIdAsync(userid);79 80 var result = new AuthResultDto81 {82 AccessToken = CreateToken(user)83 };84 85 return result;86 82 } 87 83
Note:
See TracChangeset
for help on using the changeset viewer.
