legalgo-BE-go/internal/accessor/user/get_user_by_id.go

24 lines
421 B
Go
Raw Normal View History

2025-02-27 18:59:58 +08:00
package userrepository
import (
2025-03-14 12:41:11 +08:00
"fmt"
userdomain "legalgo-BE-go/internal/domain/user"
2025-02-27 18:59:58 +08:00
)
2025-03-06 23:55:46 +08:00
func (ur *accessor) GetUserByID(id string) (*userdomain.User, error) {
var user userdomain.User
2025-02-27 18:59:58 +08:00
2025-03-06 23:55:46 +08:00
if id == "" {
2025-03-14 12:41:11 +08:00
return nil, fmt.Errorf("id is empty")
2025-02-27 18:59:58 +08:00
}
2025-03-06 23:55:46 +08:00
if err := ur.db.
Preload("Subscribe").
Preload("Subscribe.SubscribePlan").
2025-03-06 23:55:46 +08:00
First(&user, "id = ?", id).Error; err != nil {
2025-02-27 18:59:58 +08:00
return nil, err
}
return &user, nil
2025-02-27 18:59:58 +08:00
}