generated from VLADIMIR/template
save refresh token in login route
This commit is contained in:
@@ -6,6 +6,7 @@ import (
|
||||
"evening_detective_server/internal/modules/email_sender"
|
||||
"evening_detective_server/internal/modules/password_generator"
|
||||
"evening_detective_server/internal/modules/processor_jwt"
|
||||
"evening_detective_server/internal/repos/refresh_tokens_repo"
|
||||
"evening_detective_server/internal/repos/users_repo"
|
||||
"fmt"
|
||||
"strings"
|
||||
@@ -18,6 +19,7 @@ type UsersService struct {
|
||||
passwordGenerator password_generator.IPasswordGenerator
|
||||
emailSender email_sender.IEmailSender
|
||||
processorJWT processor_jwt.IProcessorJWT
|
||||
refreshTokensRepo *refresh_tokens_repo.RefreshTokensRepo
|
||||
}
|
||||
|
||||
func NewUsersService(
|
||||
@@ -25,12 +27,14 @@ func NewUsersService(
|
||||
passwordGenerator password_generator.IPasswordGenerator,
|
||||
emailSender email_sender.IEmailSender,
|
||||
processorJWT processor_jwt.IProcessorJWT,
|
||||
refreshTokensRepo *refresh_tokens_repo.RefreshTokensRepo,
|
||||
) *UsersService {
|
||||
return &UsersService{
|
||||
usersRepo: usersRepo,
|
||||
passwordGenerator: passwordGenerator,
|
||||
emailSender: emailSender,
|
||||
processorJWT: processorJWT,
|
||||
refreshTokensRepo: refreshTokensRepo,
|
||||
}
|
||||
}
|
||||
|
||||
@@ -130,8 +134,13 @@ func (s *UsersService) Login(
|
||||
|
||||
fmt.Println(accessToken, refreshToken)
|
||||
|
||||
// delete refresh tokens
|
||||
// save new refresh token
|
||||
if err := s.refreshTokensRepo.DeleteRefreshTokensByUserId(ctx, user.ID); err != nil {
|
||||
return "", "", err
|
||||
}
|
||||
|
||||
if err := s.refreshTokensRepo.AddRefreshToken(ctx, user.ID, refreshToken); err != nil {
|
||||
return "", "", err
|
||||
}
|
||||
|
||||
return accessToken, refreshToken, nil
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user