From 600cd83a8102de893a40efbe272a0b9336224e47 Mon Sep 17 00:00:00 2001 From: "$(pass /github/name)" <$(pass /github/email)> Date: Thu, 5 Sep 2024 16:40:23 +0200 Subject: [PATCH] add: user_service GetUserByID Function --- internal/services/user_service.go | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) diff --git a/internal/services/user_service.go b/internal/services/user_service.go index ab048e2..1a25bd3 100644 --- a/internal/services/user_service.go +++ b/internal/services/user_service.go @@ -1,7 +1,6 @@ package services import ( - "fmt" "net/http" "strings" @@ -20,6 +19,7 @@ import ( type UserServiceInterface interface { RegisterUser(user *models.User) (int64, string, error) GetUserByEmail(email string) (*models.User, error) + GetUserByID(id int64) (*models.User, error) GetUsers(where map[string]interface{}) (*[]models.User, error) VerifyUser(token *string) (*models.User, error) } @@ -69,14 +69,7 @@ func (service *UserService) Update(user *models.User) (int64, string, error) { return http.StatusNotAcceptable, "", err } - if user.Password == "" && user.RoleID != constants.Roles.Member { - return http.StatusNotAcceptable, "", fmt.Errorf("No password provided") - } - hash, err := utils.HashPassword(user.Password) - if err != nil { - return http.StatusInternalServerError, "", err - } - user.Password = hash + setPassword(user.Password, user) user.Status = constants.UnverifiedStatus user.CreatedAt = time.Now() @@ -106,6 +99,12 @@ func (service *UserService) Update(user *models.User) (int64, string, error) { return id, token, nil } + +func (service *UserService) GetUserByID(id int64) (*models.User, error) { + + return service.Repo.GetUserByID(id) +} + func (service *UserService) GetUserByEmail(email string) (*models.User, error) { return service.Repo.GetUserByEmail(email) }