From 38706c0b29f2ad62f2a1270b0f62d0aa1c91a93c Mon Sep 17 00:00:00 2001 From: Chang lue Tsen Date: Thu, 21 Aug 2025 09:07:48 -0400 Subject: [PATCH] fix(email): set EmailTypeVerify in task payload and update content type conversion for verification email --- internal/logic/common/sendEmailCodeLogic.go | 1 + queue/logic/email/sendEmailLogic.go | 5 ++++- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/internal/logic/common/sendEmailCodeLogic.go b/internal/logic/common/sendEmailCodeLogic.go index 5014584..c538d72 100644 --- a/internal/logic/common/sendEmailCodeLogic.go +++ b/internal/logic/common/sendEmailCodeLogic.go @@ -86,6 +86,7 @@ func (l *SendEmailCodeLogic) SendEmailCode(req *types.SendCodeRequest) (resp *ty var taskPayload queue.SendEmailPayload // Generate verification code code := random.Key(6, 0) + taskPayload.Type = queue.EmailTypeVerify taskPayload.Email = req.Email taskPayload.Subject = "Verification code" taskPayload.Content = map[string]interface{}{ diff --git a/queue/logic/email/sendEmailLogic.go b/queue/logic/email/sendEmailLogic.go index 231ba55..7a56350 100644 --- a/queue/logic/email/sendEmailLogic.go +++ b/queue/logic/email/sendEmailLogic.go @@ -50,11 +50,13 @@ func (l *SendEmailLogic) ProcessTask(ctx context.Context, task *asynq.Task) erro case types.EmailTypeVerify: tpl, _ := template.New("verify").Parse(l.svcCtx.Config.Email.VerifyEmailTemplate) var result bytes.Buffer + + payload.Content["Type"] = uint8(payload.Content["Type"].(float64)) + err = tpl.Execute(&result, payload.Content) if err != nil { logger.WithContext(ctx).Error("[SendEmailLogic] Execute template failed", logger.Field("error", err.Error()), - logger.Field("template", l.svcCtx.Config.Email.VerifyEmailTemplate), logger.Field("data", payload.Content), ) return nil @@ -119,6 +121,7 @@ func (l *SendEmailLogic) ProcessTask(ctx context.Context, task *asynq.Task) erro logger.Field("type", payload.Type), logger.Field("payload", payload), ) + return nil } err = sender.Send([]string{payload.Email}, payload.Subject, content)