package logic import ( "context" "gitea.youtukeji.com.cn/xiabin/youtu_grpc/app/user_management/internal/gen/dao/model" "gitea.youtukeji.com.cn/xiabin/youtu_grpc/app/user_management/internal/svc" "gitea.youtukeji.com.cn/xiabin/youtu_grpc/app/user_management/user_management" "github.com/zeromicro/go-zero/core/logx" ) type CreateUserLogic struct { ctx context.Context svcCtx *svc.ServiceContext logx.Logger } func NewCreateUserLogic(ctx context.Context, svcCtx *svc.ServiceContext) *CreateUserLogic { return &CreateUserLogic{ ctx: ctx, svcCtx: svcCtx, Logger: logx.WithContext(ctx), } } // CreateUser 创建用户 func (l *CreateUserLogic) CreateUser(in *user_management.CreateUserRequest) (res *user_management.CreateUserResponse, err error) { user := l.svcCtx.Query.User userModel := model.User{ Nickname: in.Nickname, Avatar: in.Avatar, } userModel.ID, err = l.svcCtx.IDGen.NextID() if err != nil { return nil, err } err = user.WithContext(l.ctx).Create(&userModel) if err != nil { return nil, err } return &user_management.CreateUserResponse{UserId: userModel.ID}, nil }