From 1cfc93513077da7ecb5ebc9b88e0e66d59c7b2fe Mon Sep 17 00:00:00 2001 From: caiyuchao Date: Thu, 14 Aug 2025 18:17:26 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E5=88=B0=E6=9C=9F=E6=8F=90=E9=86=92?= =?UTF-8?q?=E6=8F=90=E5=89=8D=E5=A4=A9=E6=95=B0=EF=BC=9B=E5=BC=80=E5=8F=91?= =?UTF-8?q?=E7=8E=AF=E5=A2=83=E9=82=AE=E4=BB=B6=E5=8F=91=E9=80=81=E5=85=B3?= =?UTF-8?q?=E9=97=AD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dal/mysql/license/LicenseMapper.java | 2 +- .../license/service/license/LicenseTask.java | 2 +- .../service/mail/MailSendServiceImpl.java | 25 ++++++++++++++----- .../src/main/resources/application-local.yaml | 2 ++ 4 files changed, 23 insertions(+), 8 deletions(-) diff --git a/agt-module-license/agt-module-license-server/src/main/java/org/agt/module/license/dal/mysql/license/LicenseMapper.java b/agt-module-license/agt-module-license-server/src/main/java/org/agt/module/license/dal/mysql/license/LicenseMapper.java index e7f3e87..112431e 100644 --- a/agt-module-license/agt-module-license-server/src/main/java/org/agt/module/license/dal/mysql/license/LicenseMapper.java +++ b/agt-module-license/agt-module-license-server/src/main/java/org/agt/module/license/dal/mysql/license/LicenseMapper.java @@ -38,7 +38,7 @@ public interface LicenseMapper extends BaseMapperX { default List selectListByExpiryDate() { return selectList(new LambdaQueryWrapperX() .gt(LicenseDO::getExpiryDate, LocalDateTime.now()) - .le(LicenseDO::getExpiryDate, LocalDateTime.now().plusDays(8)) + .le(LicenseDO::getExpiryDate, LocalDateTime.now().plusDays(7)) .eq(LicenseDO::getStatus, LicenseStatusEnum.COMPLETED.getCode()) .orderByAsc(LicenseDO::getExpiryDate)); } diff --git a/agt-module-license/agt-module-license-server/src/main/java/org/agt/module/license/service/license/LicenseTask.java b/agt-module-license/agt-module-license-server/src/main/java/org/agt/module/license/service/license/LicenseTask.java index 5a2af5c..92d6dc3 100644 --- a/agt-module-license/agt-module-license-server/src/main/java/org/agt/module/license/service/license/LicenseTask.java +++ b/agt-module-license/agt-module-license-server/src/main/java/org/agt/module/license/service/license/LicenseTask.java @@ -47,7 +47,7 @@ public class LicenseTask { @Resource private NotifyMessageSendApi notifySendApi; - @Scheduled(cron = "*/6 * * * * ?") + @Scheduled(cron = "*/5 * * * * ?") public void task() { licenseService.genLicenseTask(); } diff --git a/agt-module-system/agt-module-system-server/src/main/java/org/agt/module/system/service/mail/MailSendServiceImpl.java b/agt-module-system/agt-module-system-server/src/main/java/org/agt/module/system/service/mail/MailSendServiceImpl.java index 748b28e..f445b0a 100644 --- a/agt-module-system/agt-module-system-server/src/main/java/org/agt/module/system/service/mail/MailSendServiceImpl.java +++ b/agt-module-system/agt-module-system-server/src/main/java/org/agt/module/system/service/mail/MailSendServiceImpl.java @@ -1,6 +1,10 @@ package org.agt.module.system.service.mail; import cn.hutool.core.util.StrUtil; +import com.google.common.annotations.VisibleForTesting; +import jakarta.annotation.Resource; +import lombok.Setter; +import lombok.extern.slf4j.Slf4j; import org.agt.framework.common.enums.CommonStatusEnum; import org.agt.framework.common.enums.UserTypeEnum; import org.agt.module.system.dal.dataobject.mail.MailAccountDO; @@ -10,17 +14,19 @@ import org.agt.module.system.mq.message.mail.MailSendMessage; import org.agt.module.system.mq.producer.mail.MailProducer; import org.agt.module.system.service.member.MemberService; import org.agt.module.system.service.user.AdminUserService; -import com.google.common.annotations.VisibleForTesting; -import jakarta.annotation.Resource; -import lombok.extern.slf4j.Slf4j; -import org.dromara.hutool.extra.mail.*; +import org.dromara.hutool.extra.mail.MailAccount; +import org.dromara.hutool.extra.mail.MailUtil; +import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Service; import org.springframework.validation.annotation.Validated; import java.util.Map; import static org.agt.framework.common.exception.util.ServiceExceptionUtil.exception; -import static org.agt.module.system.enums.ErrorCodeConstants.*; +import static org.agt.module.system.enums.ErrorCodeConstants.MAIL_ACCOUNT_NOT_EXISTS; +import static org.agt.module.system.enums.ErrorCodeConstants.MAIL_SEND_MAIL_NOT_EXISTS; +import static org.agt.module.system.enums.ErrorCodeConstants.MAIL_SEND_TEMPLATE_PARAM_MISS; +import static org.agt.module.system.enums.ErrorCodeConstants.MAIL_TEMPLATE_NOT_EXISTS; /** * 邮箱发送 Service 实现类 @@ -48,6 +54,13 @@ public class MailSendServiceImpl implements MailSendService { @Resource private MailProducer mailProducer; + /** + * 邮件的开关,默认为 true + */ + @Value("${agt.mail.enable:true}") + @Setter // 为了开发环境关闭邮件发送 + private Boolean mailEnable; + @Override public Long sendSingleMailToAdmin(String mail, Long userId, String templateCode, Map templateParams) { @@ -92,7 +105,7 @@ public class MailSendServiceImpl implements MailSendService { Long sendLogId = mailLogService.createMailLog(userId, userType, mail, account, template, content, templateParams, isSend); // 发送 MQ 消息,异步执行发送短信 - if (isSend) { + if (isSend && mailEnable) { mailProducer.sendMailSendMessage(sendLogId, mail, account.getId(), template.getNickname(), title, content); } diff --git a/agt-server/src/main/resources/application-local.yaml b/agt-server/src/main/resources/application-local.yaml index 5197306..ca78ac6 100644 --- a/agt-server/src/main/resources/application-local.yaml +++ b/agt-server/src/main/resources/application-local.yaml @@ -203,6 +203,8 @@ wx: agt: captcha: enable: false # 本地环境,暂时关闭图片验证码,方便登录等接口的测试; + mail: + enable: false # 本地环境,暂时关闭邮件发送; security: mock-enable: true pay: