From 79a1eeca1f4222094b214203ea8ac19bd5f0e81e Mon Sep 17 00:00:00 2001 From: shanshanzhong Date: Sun, 15 Mar 2026 19:43:53 -0700 Subject: [PATCH] =?UTF-8?q?feat:=20=E8=87=AA=E5=8A=A8=E7=94=9F=E6=88=90?= =?UTF-8?q?=E5=B9=B6=E6=9B=B4=E6=96=B0=E7=94=A8=E6=88=B7=E7=BC=BA=E5=A4=B1?= =?UTF-8?q?=E7=9A=84=E6=8E=A8=E8=8D=90=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- internal/logic/public/user/queryUserInfoLogic.go | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/internal/logic/public/user/queryUserInfoLogic.go b/internal/logic/public/user/queryUserInfoLogic.go index 51a49e8..7ddf548 100644 --- a/internal/logic/public/user/queryUserInfoLogic.go +++ b/internal/logic/public/user/queryUserInfoLogic.go @@ -9,6 +9,7 @@ import ( "github.com/perfect-panel/server/pkg/constant" "github.com/perfect-panel/server/pkg/kutt" + "github.com/perfect-panel/server/pkg/uuidx" "github.com/perfect-panel/server/pkg/xerr" "github.com/pkg/errors" @@ -49,6 +50,16 @@ func (l *QueryUserInfoLogic) QueryUserInfo() (resp *types.User, err error) { resp.UserDevices[i].DeviceNo = tool.DeviceIdToHash(d.Id) } } + // refer_code 为空时自动生成 + if resp.ReferCode == "" { + resp.ReferCode = uuidx.UserInviteCode(u.Id) + if err := l.svcCtx.DB.Model(&user.User{}).Where("id = ?", u.Id).Update("refer_code", resp.ReferCode).Error; err != nil { + l.Errorw("auto generate refer_code failed", logger.Field("user_id", u.Id), logger.Field("error", err.Error())) + } else { + _ = l.svcCtx.UserModel.ClearUserCache(l.ctx, u) + } + } + ownerEmailMethod := l.fillFamilyContext(resp, u.Id) var userMethods []types.UserAuthMethod