generated from VLADIMIR/template
add login route
This commit is contained in:
@@ -2,6 +2,7 @@ package users_service
|
||||
|
||||
import (
|
||||
"context"
|
||||
"errors"
|
||||
"evening_detective_server/internal/modules/email_sender"
|
||||
"evening_detective_server/internal/modules/password_generator"
|
||||
"evening_detective_server/internal/repos/users_repo"
|
||||
@@ -91,3 +92,29 @@ func (s *UsersService) RefreshPassword(
|
||||
|
||||
return err
|
||||
}
|
||||
|
||||
func (s *UsersService) Login(
|
||||
ctx context.Context,
|
||||
email string,
|
||||
password string,
|
||||
) error {
|
||||
user, err := s.usersRepo.GetUserByEmail(
|
||||
ctx,
|
||||
email,
|
||||
)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
if err = bcrypt.CompareHashAndPassword([]byte(user.PasswordHash), []byte(password)); err != nil {
|
||||
return errors.New("Не верен email или пароль")
|
||||
}
|
||||
|
||||
fmt.Println(user, err)
|
||||
|
||||
// gen tokens (module)
|
||||
|
||||
// save refresh token?
|
||||
|
||||
return nil // claims?
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user