go-kratos/app/ucenter/internal/data/user.go

53 lines
1.3 KiB
Go

package data
import (
"context"
"ky-go-kratos/app/ucenter/internal/biz"
"ky-go-kratos/app/ucenter/internal/data/ent"
api "ky-go-kratos/api/ucenter/user"
"github.com/go-kratos/kratos/v2/log"
)
type userRepo struct {
log *log.Helper
data *Data
}
func NewUserRepo(data *Data, logger log.Logger) biz.UserRepo {
return &userRepo{data: data, log: log.NewHelper(logger)}
}
func (r *userRepo) GetUserInfo(ctx context.Context, req *api.GetUserInfoRequest) ([]*ent.User, error) {
user, err := r.data.Ent.User.Query().Where().All(ctx)
if err != nil {
return nil, err
}
res, _ := r.data.Redis.Get(ctx, "test").Result()
r.log.Errorf("redis Get Result: %v", res)
return user, nil
}
func (r *userRepo) CreateUserInfo(ctx context.Context, req *api.CreateUserInfoRequest) (*api.CreateUserInfoReply, error) {
data, err := r.data.Ent.User.Create().
SetName(req.Name).
SetNickname(req.Nickname).
SetEmail(req.Email).
SetPhone(req.Phone).
SetPassword("md5").
Save(ctx)
if err != nil {
return nil, err
}
log.Info(data)
if err := r.SetUserId(ctx, data.Name, data.ID); err != nil {
r.log.Warnf("redis Set Error %v", err)
}
return &api.CreateUserInfoReply{Id: data.ID}, nil
}
func (r *userRepo) SetUserId(ctx context.Context, key string, value string) error {
return r.data.Redis.Set(ctx, key, value, 0).Err()
}