From d6630f4335de85a76eea52eae7b88889850093c0 Mon Sep 17 00:00:00 2001 From: eson <9673575+githubcontent@user.noreply.gitee.com> Date: Tue, 29 Aug 2023 15:44:01 +0800 Subject: [PATCH 1/5] fix --- model/gmodel/fs_user_logic.go | 11 ----------- 1 file changed, 11 deletions(-) diff --git a/model/gmodel/fs_user_logic.go b/model/gmodel/fs_user_logic.go index ae9e50d7..50d5227c 100644 --- a/model/gmodel/fs_user_logic.go +++ b/model/gmodel/fs_user_logic.go @@ -137,15 +137,9 @@ type UserProfile struct { // 自平台的注册流程 func (u *FsUserModel) RegisterByFusen(ctx context.Context, token *auth.RegisterToken) (user *FsUser, err error) { - logcontent := "" - defer func() { - logx.Info("aaaa:", logcontent, " ", err.Error()) - }() - err = u.db.WithContext(ctx).Transaction(func(tx *gorm.DB) error { user = &FsUser{} - var err error UserTx := tx.Model(user) err = UserTx.Where("email = ?", token.Email).Take(user).Error @@ -169,8 +163,6 @@ func (u *FsUserModel) RegisterByFusen(ctx context.Context, token *auth.RegisterT return err } - logcontent += "create." - // 继承guest_id的资源表 err = InheritGuestIdResource(tx, user.Id, token.GuestId, func(txResouce, txUserMaterial, txUserInfo *gorm.DB) error { userProfile := &UserProfile{ @@ -191,13 +183,11 @@ func (u *FsUserModel) RegisterByFusen(ctx context.Context, token *auth.RegisterT Ctime: &now, Utime: &now, } - logcontent += "profile." err = txUserInfo.Create(uinfo).Error if err == gorm.ErrRecordNotFound { return nil } - return err }) @@ -210,7 +200,6 @@ func (u *FsUserModel) RegisterByFusen(ctx context.Context, token *auth.RegisterT return fmt.Errorf("the email had registered") }) - logcontent += "end" if err != nil && err != gorm.ErrRecordNotFound { return nil, err } From 7a845bb83fc8619a07dd7fbc281e9154ad0b7222 Mon Sep 17 00:00:00 2001 From: eson <9673575+githubcontent@user.noreply.gitee.com> Date: Tue, 29 Aug 2023 16:02:54 +0800 Subject: [PATCH 2/5] fix --- server/auth/internal/logic/useremailconfirmationlogic.go | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/server/auth/internal/logic/useremailconfirmationlogic.go b/server/auth/internal/logic/useremailconfirmationlogic.go index 5d2e1867..0f91ab42 100644 --- a/server/auth/internal/logic/useremailconfirmationlogic.go +++ b/server/auth/internal/logic/useremailconfirmationlogic.go @@ -123,8 +123,11 @@ func (l *UserEmailConfirmationLogic) UserEmailConfirmation(req *types.RequestEma return resp.SetStatus(basic.CodeDbSqlErr) } - FinishRegister(l.svcCtx, user, token) - logx.Info("success", token.TraceId) + err = FinishRegister(l.svcCtx, user, token) + if err != nil { + logx.Error(err) + } + logx.Info("success:", token.TraceId) } default: From 1ed2346303b8b1f4ebae1057b9dc9f9302f50829 Mon Sep 17 00:00:00 2001 From: eson <9673575+githubcontent@user.noreply.gitee.com> Date: Tue, 29 Aug 2023 16:07:47 +0800 Subject: [PATCH 3/5] fix --- model/gmodel/fs_user_logic.go | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/model/gmodel/fs_user_logic.go b/model/gmodel/fs_user_logic.go index 50d5227c..76f36d3c 100644 --- a/model/gmodel/fs_user_logic.go +++ b/model/gmodel/fs_user_logic.go @@ -141,8 +141,9 @@ func (u *FsUserModel) RegisterByFusen(ctx context.Context, token *auth.RegisterT user = &FsUser{} var err error - UserTx := tx.Model(user) - err = UserTx.Where("email = ?", token.Email).Take(user).Error + + userTx := tx.Model(user) + err = userTx.Where("email = ?", token.Email).Take(user).Error if err == gorm.ErrRecordNotFound { @@ -151,13 +152,14 @@ func (u *FsUserModel) RegisterByFusen(ctx context.Context, token *auth.RegisterT Resetaurant := token.Extend["resetaurant"].(string) createAt := time.Now().UTC().Unix() + user.Email = &token.Email user.CreatedAt = &createAt user.PasswordHash = &token.Password user.FirstName = &FirstName user.LastName = &LastName - err = UserTx.Create(user).Error + err = tx.Model(user).Create(user).Error if err != nil && err != gorm.ErrRecordNotFound { logx.Error(err) return err From ff7bbe66a7a9ac2488d8f9d3518f105ad0f88231 Mon Sep 17 00:00:00 2001 From: eson <9673575+githubcontent@user.noreply.gitee.com> Date: Tue, 29 Aug 2023 16:15:34 +0800 Subject: [PATCH 4/5] fix --- model/gmodel/fs_user_logic.go | 13 +++++++++---- .../internal/logic/useremailconfirmationlogic.go | 8 +++++--- 2 files changed, 14 insertions(+), 7 deletions(-) diff --git a/model/gmodel/fs_user_logic.go b/model/gmodel/fs_user_logic.go index 76f36d3c..257a683d 100644 --- a/model/gmodel/fs_user_logic.go +++ b/model/gmodel/fs_user_logic.go @@ -60,7 +60,6 @@ func InheritGuestIdResource(tx *gorm.DB, userId, guestId int64, afterDo func(txR err = txRes. Where("guest_id = ?", guestId). UpdateColumn("user_id", userId).Error - if err != nil && err != gorm.ErrRecordNotFound { return err } @@ -82,6 +81,15 @@ func InheritGuestIdResource(tx *gorm.DB, userId, guestId int64, afterDo func(txR } if afterDo != nil { + if txRes.Error != nil { + txRes = tx.Model(&FsResource{}) + } + if txUserMaterial.Error != nil { + txUserMaterial = tx.Model(&FsUserMaterial{}) + } + if txUserInfo.Error != nil { + txUserInfo = tx.Model(&FsUserInfo{}) + } return afterDo(txRes, txUserMaterial, txUserInfo) } return fmt.Errorf("guest_id must not be 0") @@ -98,7 +106,6 @@ func (u *FsUserModel) RegisterByGoogleOAuth(ctx context.Context, token *auth.Reg if err != nil { // 没有找到在数据库就创建注册 if err == gorm.ErrRecordNotFound { - createAt := time.Now().UTC().Unix() user.Email = &token.Email user.CreatedAt = &createAt @@ -108,7 +115,6 @@ func (u *FsUserModel) RegisterByGoogleOAuth(ctx context.Context, token *auth.Reg if err != nil { return err } - // 继承guest_id的资源表 return InheritGuestIdResource(tx, user.Id, token.GuestId, nil) } @@ -144,7 +150,6 @@ func (u *FsUserModel) RegisterByFusen(ctx context.Context, token *auth.RegisterT userTx := tx.Model(user) err = userTx.Where("email = ?", token.Email).Take(user).Error - if err == gorm.ErrRecordNotFound { FirstName := token.Extend["first_name"].(string) diff --git a/server/auth/internal/logic/useremailconfirmationlogic.go b/server/auth/internal/logic/useremailconfirmationlogic.go index 0f91ab42..fdd04c7c 100644 --- a/server/auth/internal/logic/useremailconfirmationlogic.go +++ b/server/auth/internal/logic/useremailconfirmationlogic.go @@ -111,7 +111,10 @@ func (l *UserEmailConfirmationLogic) UserEmailConfirmation(req *types.RequestEma return resp.SetStatus(basic.CodeDbSqlErr) } - FinishRegister(l.svcCtx, user, token) + err = FinishRegister(l.svcCtx, user, token) + if err != nil { + logx.Error(err) + } logx.Info("success", token.TraceId) case "facebook": @@ -120,9 +123,8 @@ func (l *UserEmailConfirmationLogic) UserEmailConfirmation(req *types.RequestEma user, err := l.svcCtx.AllModels.FsUser.RegisterByFusen(l.ctx, token) if err != nil && err != gorm.ErrRecordNotFound { logx.Error(err, ":", token.TraceId) - return resp.SetStatus(basic.CodeDbSqlErr) + return resp.SetStatus(basic.CodeDbSqlErr, err.Error()) } - err = FinishRegister(l.svcCtx, user, token) if err != nil { logx.Error(err) From 631a87abf1069929b3e17642b0a6703b983776f1 Mon Sep 17 00:00:00 2001 From: eson <9673575+githubcontent@user.noreply.gitee.com> Date: Tue, 29 Aug 2023 16:24:20 +0800 Subject: [PATCH 5/5] fix --- .../logic/useremailconfirmationlogic.go | 26 ++++++++++++++++--- 1 file changed, 23 insertions(+), 3 deletions(-) diff --git a/server/auth/internal/logic/useremailconfirmationlogic.go b/server/auth/internal/logic/useremailconfirmationlogic.go index fdd04c7c..7ab31e47 100644 --- a/server/auth/internal/logic/useremailconfirmationlogic.go +++ b/server/auth/internal/logic/useremailconfirmationlogic.go @@ -6,6 +6,7 @@ import ( "fusenapi/utils/auth" "fusenapi/utils/basic" "fusenapi/utils/wevent" + "net/http" "time" "context" @@ -15,6 +16,7 @@ import ( "github.com/474420502/requests" "github.com/zeromicro/go-zero/core/logx" + "github.com/zeromicro/go-zero/rest/httpx" "gorm.io/gorm" ) @@ -140,6 +142,24 @@ func (l *UserEmailConfirmationLogic) UserEmailConfirmation(req *types.RequestEma } // 处理逻辑后 w,r 如:重定向, resp 必须重新处理 -// func (l *UserEmailConfirmationLogic) AfterLogic(w http.ResponseWriter, r *http.Request, resp *basic.Response) { -// // httpx.OkJsonCtx(r.Context(), w, resp) -// } +func (l *UserEmailConfirmationLogic) AfterLogic(w http.ResponseWriter, r *http.Request, resp *basic.Response) { + successHtml := ` + +
+感谢您在我们网站进行注册。您的账号已经激活。
+ +您现在可以使用您的邮箱地址和密码登录我们的网站,享受完整的服务和功能。
+ +再次感谢您的信任和支持。如果您有任何问题,请随时联系我们。
+ +祝您使用愉快!
+ + ` + w.Write([]byte(successHtml)) + httpx.OkJsonCtx(r.Context(), w, nil) +}