diff --git a/agt-module-system/agt-module-system-api/src/main/java/org/agt/module/system/api/mail/dto/MailSendSingleToUserReqDTO.java b/agt-module-system/agt-module-system-api/src/main/java/org/agt/module/system/api/mail/dto/MailSendSingleToUserReqDTO.java index ceff2db..90c255a 100644 --- a/agt-module-system/agt-module-system-api/src/main/java/org/agt/module/system/api/mail/dto/MailSendSingleToUserReqDTO.java +++ b/agt-module-system/agt-module-system-api/src/main/java/org/agt/module/system/api/mail/dto/MailSendSingleToUserReqDTO.java @@ -27,4 +27,7 @@ public class MailSendSingleToUserReqDTO { @Schema(description = "邮件模板参数列表") private List> templateParamsList; + + @Schema(description = "邮件内容") + private String content; } diff --git a/agt-module-system/agt-module-system-server/src/main/java/org/agt/module/system/api/mail/MailSendApiImpl.java b/agt-module-system/agt-module-system-server/src/main/java/org/agt/module/system/api/mail/MailSendApiImpl.java index 0b89e62..ba5f399 100644 --- a/agt-module-system/agt-module-system-server/src/main/java/org/agt/module/system/api/mail/MailSendApiImpl.java +++ b/agt-module-system/agt-module-system-server/src/main/java/org/agt/module/system/api/mail/MailSendApiImpl.java @@ -26,7 +26,7 @@ public class MailSendApiImpl implements MailSendApi { @Override public CommonResult sendSingleMailToAdmins(MailSendSingleToUserReqDTO reqDTO) { return success(mailSendService.sendSingleMailToAdmins(reqDTO.getMail(), reqDTO.getUserId(), - reqDTO.getTemplateCode(), reqDTO.getTemplateParamsList())); + reqDTO.getTemplateCode(), reqDTO.getContent())); } @Override diff --git a/agt-module-system/agt-module-system-server/src/main/java/org/agt/module/system/service/mail/MailSendService.java b/agt-module-system/agt-module-system-server/src/main/java/org/agt/module/system/service/mail/MailSendService.java index b7643af..230abbb 100644 --- a/agt-module-system/agt-module-system-server/src/main/java/org/agt/module/system/service/mail/MailSendService.java +++ b/agt-module-system/agt-module-system-server/src/main/java/org/agt/module/system/service/mail/MailSendService.java @@ -2,7 +2,6 @@ package org.agt.module.system.service.mail; import org.agt.module.system.mq.message.mail.MailSendMessage; -import java.util.List; import java.util.Map; /** @@ -26,7 +25,7 @@ public interface MailSendService { String templateCode, Map templateParams); Long sendSingleMailToAdmins(String mail, Long userId, - String templateCode, List> templateParamsList); + String templateCode, String content); /** * 发送单条邮件给用户 APP 的用户 @@ -54,7 +53,7 @@ public interface MailSendService { String templateCode, Map templateParams); Long sendSingleMails(String mail, Long userId, Integer userType, - String templateCode, List> templateParamsList); + String templateCode, String content); /** * 执行真正的邮件发送 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 31cc876..0a9242e 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 @@ -20,7 +20,7 @@ import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Service; import org.springframework.validation.annotation.Validated; -import java.util.List; +import java.util.HashMap; import java.util.Map; import static org.agt.framework.common.exception.util.ServiceExceptionUtil.exception; @@ -78,7 +78,7 @@ public class MailSendServiceImpl implements MailSendService { @Override public Long sendSingleMailToAdmins(String mail, Long userId, - String templateCode, List> templateParamsList) { + String templateCode, String content) { // 如果 mail 为空,则加载用户编号对应的邮箱 if (StrUtil.isEmpty(mail)) { AdminUserDO user = adminUserService.getUser(userId); @@ -87,7 +87,7 @@ public class MailSendServiceImpl implements MailSendService { } } // 执行发送 - return sendSingleMails(mail, userId, UserTypeEnum.ADMIN.getValue(), templateCode, templateParamsList); + return sendSingleMails(mail, userId, UserTypeEnum.ADMIN.getValue(), templateCode, content); } @Override @@ -129,7 +129,7 @@ public class MailSendServiceImpl implements MailSendService { @Override public Long sendSingleMails(String mail, Long userId, Integer userType, - String templateCode, List> templateParamsList) { + String templateCode, String content) { // 校验邮箱模版是否合法 MailTemplateDO template = validateMailTemplate(templateCode); // 校验邮箱账号是否合法 @@ -137,17 +137,18 @@ public class MailSendServiceImpl implements MailSendService { // 校验邮箱是否存在 mail = validateMail(mail); - String content = ""; - for (Map templateParams : templateParamsList) { - validateTemplateParams(template, templateParams); - content += mailTemplateService.formatMailTemplateContent(template.getContent(), templateParams); - } +// String content = ""; +// for (Map templateParams : templateParamsList) { +// validateTemplateParams(template, templateParams); +// content += mailTemplateService.formatMailTemplateContent(template.getContent(), templateParams); +// } + Map templateParams = new HashMap<>(); // 创建发送日志。如果模板被禁用,则不发送短信,只记录日志 Boolean isSend = CommonStatusEnum.ENABLE.getStatus().equals(template.getStatus()); - String title = mailTemplateService.formatMailTemplateContent(template.getTitle(), templateParamsList.get(0)); + String title = mailTemplateService.formatMailTemplateContent(template.getTitle(), templateParams); Long sendLogId = mailLogService.createMailLog(userId, userType, mail, - account, template, content, templateParamsList.get(0), isSend); + account, template, content, templateParams, isSend); // 发送 MQ 消息,异步执行发送短信 if (isSend && mailEnable) { mailProducer.sendMailSendMessage(sendLogId, mail, account.getId(),