2025-02-27 18:59:58 +08:00
|
|
|
package userrepository
|
|
|
|
|
|
|
|
|
|
import (
|
2025-03-14 12:41:11 +08:00
|
|
|
"fmt"
|
2025-03-05 21:21:44 +08:00
|
|
|
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) {
|
2025-03-05 21:21:44 +08:00
|
|
|
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.
|
2025-03-05 21:21:44 +08:00
|
|
|
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
|
|
|
|
|
}
|
|
|
|
|
|
2025-03-05 21:21:44 +08:00
|
|
|
return &user, nil
|
2025-02-27 18:59:58 +08:00
|
|
|
}
|