53 lines
1.3 KiB
Go
53 lines
1.3 KiB
Go
package service
|
|
|
|
import (
|
|
"context"
|
|
|
|
api "ky-go-kratos/api/ucenter/user"
|
|
"ky-go-kratos/app/ucenter/internal/biz"
|
|
|
|
"github.com/go-kratos/kratos/v2/log"
|
|
"google.golang.org/protobuf/types/known/timestamppb"
|
|
)
|
|
|
|
type UserService struct {
|
|
api.UnimplementedUserServer
|
|
|
|
uc *biz.UserUsecase
|
|
}
|
|
|
|
func NewUserService(uc *biz.UserUsecase) *UserService {
|
|
return &UserService{uc: uc}
|
|
}
|
|
|
|
func (s *UserService) GetUserInfo(ctx context.Context, req *api.GetUserInfoRequest) (*api.GetUserInfoReply, error) {
|
|
data, err := s.uc.GetUserInfo(ctx, req)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
users := make([]*api.GetUserInfoReply_User, 0, len(data))
|
|
for _, u := range data {
|
|
users = append(users, &api.GetUserInfoReply_User{
|
|
Id: u.ID,
|
|
Name: u.Name,
|
|
Nickname: u.Nickname,
|
|
Email: u.Email,
|
|
Phone: u.Phone,
|
|
IsDeleted: u.IsDeleted,
|
|
CreatedAt: timestamppb.New(u.CreatedAt),
|
|
UpdatedAt: timestamppb.New(u.UpdatedAt),
|
|
DeletedAt: timestamppb.New(u.DeletedAt),
|
|
})
|
|
}
|
|
return &api.GetUserInfoReply{Users: users}, nil
|
|
}
|
|
|
|
func (s *UserService) CreateUserInfo(ctx context.Context, req *api.CreateUserInfoRequest) (*api.CreateUserInfoReply, error) {
|
|
log.Info(req)
|
|
data, err := s.uc.CreateUserInfo(ctx, req)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
return data, nil
|
|
}
|