From 70a41bdfbc328067d561510f580cda3b6f0ac221 Mon Sep 17 00:00:00 2001 From: xupei Date: Tue, 25 Nov 2025 14:24:30 +0800 Subject: [PATCH 1/2] =?UTF-8?q?TASK:=E7=94=A8=E6=88=B7=E8=B4=A6=E5=8F=B7?= =?UTF-8?q?=E5=88=B0=E6=9C=9F=E9=82=AE=E4=BB=B6=E9=80=9A=E7=9F=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ai/da/common/task/SubscriptionReminderTask.java | 8 +++++++- .../java/com/ai/da/common/utils/SendEmailUtil.java | 12 ++++++++++++ 2 files changed, 19 insertions(+), 1 deletion(-) diff --git a/src/main/java/com/ai/da/common/task/SubscriptionReminderTask.java b/src/main/java/com/ai/da/common/task/SubscriptionReminderTask.java index a29838d6..7266f30d 100644 --- a/src/main/java/com/ai/da/common/task/SubscriptionReminderTask.java +++ b/src/main/java/com/ai/da/common/task/SubscriptionReminderTask.java @@ -7,6 +7,7 @@ import com.ai.da.mapper.primary.entity.Account; import com.ai.da.mapper.primary.entity.SubscriptionInfo; import com.ai.da.service.StripeService; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import io.netty.util.internal.StringUtil; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; @@ -45,6 +46,11 @@ public class SubscriptionReminderTask { log.warn("未知的订阅类型: {}", subscriptionInfo.getType()); continue; } + String emailType = subscriptionInfo.getStatus().equals("active") ? "reminder_subscriber" : subscriptionInfo.getStatus().equals("canceled") ? "reminder_expire" : null; + if (StringUtil.isNullOrEmpty(emailType)) { + log.warn("未知订阅状态:{}", subscriptionInfo.getStatus()); + continue; + } boolean success = stripeService.sendEmail(subscriptionInfo.getSubscriptionId(), "reminder_subscriber", null); if (success) { @@ -78,7 +84,7 @@ public class SubscriptionReminderTask { QueryWrapper qw = new QueryWrapper<>(); qw.ge("current_period_end", startTimestamp); qw.lt("current_period_end", endTimestamp); - qw.eq("status", "active"); +// qw.eq("status", "active"); qw.eq("subscription_type", subscriptionType); return subscriptionInfoMapper.selectList(qw); diff --git a/src/main/java/com/ai/da/common/utils/SendEmailUtil.java b/src/main/java/com/ai/da/common/utils/SendEmailUtil.java index 96798683..98d70ad7 100644 --- a/src/main/java/com/ai/da/common/utils/SendEmailUtil.java +++ b/src/main/java/com/ai/da/common/utils/SendEmailUtil.java @@ -840,6 +840,18 @@ public class SendEmailUtil { templateUser.setTemplateID(156074L); } break; + case "reminder_expire": + if (language.equals("ENGLISH")) { + user.setSubject("[Code-Create] AiDA account is about to expire"); + templateUser.setTemplateID(156749L); + } else if (language.equals("CHINESE")){ + user.setSubject("[Code-Create] 您的AiDA账号即将到期"); + templateUser.setTemplateID(156750L); + } else { + user.setSubject("[Code-Create] 您的AiDA帳號即將到期"); + templateUser.setTemplateID(156751L); + } + break; case "reminder_trial": if (language.equals("ENGLISH")) { user.setSubject("[Code-Create] AiDA — Free Trial Ending"); From 14646896570bd9d5ff4301c53c9e83165e05f490 Mon Sep 17 00:00:00 2001 From: xupei Date: Wed, 26 Nov 2025 10:09:59 +0800 Subject: [PATCH 2/2] =?UTF-8?q?TASK:=E8=A7=86=E9=A2=91=E7=94=9F=E6=88=90?= =?UTF-8?q?=E5=AE=8C=E6=88=90=E7=AB=99=E5=86=85=E4=BF=A1=E8=AF=AD=E8=A8=80?= =?UTF-8?q?=E7=BB=99=E4=B8=AD=E8=8B=B1=E5=8F=8C=E8=AF=AD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/CollectionElementServiceImpl.java | 2 +- .../da/service/impl/MessageCenterServiceImpl.java | 14 ++++++++++---- 2 files changed, 11 insertions(+), 5 deletions(-) diff --git a/src/main/java/com/ai/da/service/impl/CollectionElementServiceImpl.java b/src/main/java/com/ai/da/service/impl/CollectionElementServiceImpl.java index aa43833b..d63f848f 100644 --- a/src/main/java/com/ai/da/service/impl/CollectionElementServiceImpl.java +++ b/src/main/java/com/ai/da/service/impl/CollectionElementServiceImpl.java @@ -60,7 +60,7 @@ import java.util.stream.Collectors; @RequiredArgsConstructor public class CollectionElementServiceImpl extends ServiceImpl implements CollectionElementService { private final CollectionElementMapper collectionElementMapper; - private final EmailService emailService; +// private final EmailService emailService; private final FileProperties fileProperties; private final GenerateMapper generateMapper; private final GenerateDetailMapper generateDetailMapper; diff --git a/src/main/java/com/ai/da/service/impl/MessageCenterServiceImpl.java b/src/main/java/com/ai/da/service/impl/MessageCenterServiceImpl.java index 7c8460ab..685b3264 100644 --- a/src/main/java/com/ai/da/service/impl/MessageCenterServiceImpl.java +++ b/src/main/java/com/ai/da/service/impl/MessageCenterServiceImpl.java @@ -402,21 +402,27 @@ public class MessageCenterServiceImpl extends ServiceImpl