|
@@ -49,7 +49,7 @@ public class SendEmailListener {
|
|
|
public void backgroundApiAddQueue(Message message, Channel channel, EmailSendBO emailSendBO) {
|
|
|
try {
|
|
|
log.info("邮件发送监听内容:{}", emailSendBO);
|
|
|
- TemplateHtmlBO template = emailTemplateService.getTemplate(emailSendBO.getTemplateId());
|
|
|
+ TemplateHtmlBO template = emailTemplateService.getTemplateByUseEvent(emailSendBO.getUseEvent());
|
|
|
|
|
|
JavaMailSenderImpl mailSender = mailSenderConfig.getDefaultSender();
|
|
|
Map<String, String> sendContent = emailSendBO.getSendContent();
|
|
@@ -57,10 +57,15 @@ public class SendEmailListener {
|
|
|
for (String key : sendContent.keySet()) {
|
|
|
templateHtml = templateHtml.replaceAll(key,sendContent.get(key));
|
|
|
}
|
|
|
+ String templateTitle = template.getTemplateTitle();
|
|
|
+ Map<String, String> sendTitleContent = emailSendBO.getSendTitleContent();
|
|
|
+ for (String key : sendTitleContent.keySet()) {
|
|
|
+ templateTitle = templateTitle.replaceAll(key,sendTitleContent.get(key));
|
|
|
+ }
|
|
|
|
|
|
MimeMessage mimeMessage = mailSender.createMimeMessage();
|
|
|
MimeMessageHelper helper = new MimeMessageHelper(mimeMessage, true);
|
|
|
- helper.setSubject(emailSendBO.getEmailTitle());
|
|
|
+ helper.setSubject(templateTitle);
|
|
|
helper.setText(templateHtml, true);
|
|
|
helper.setTo(emailSendBO.getToEmail());
|
|
|
helper.setFrom(ObjectUtils.isEmpty(emailSendBO.getFromEmail())
|
|
@@ -72,10 +77,9 @@ public class SendEmailListener {
|
|
|
emailLog.setSendTo(emailSendBO.getToEmail());
|
|
|
emailLog.setSendFrom(emailSendBO.getFromEmail());
|
|
|
emailLog.setSendTime(new Date());
|
|
|
- emailLog.setSendTemplate(emailSendBO.getTemplateId());
|
|
|
- emailLog.setSendContent(JsonUtils.getJsonString(emailSendBO.getSendContent()));
|
|
|
+ emailLog.setSendTemplate(template.getEmailTemplateId());
|
|
|
+ emailLog.setSendContent(JsonUtils.getJsonString(emailSendBO.getSendContent()) + ";" + JsonUtils.getJsonString(emailSendBO.getSendTitleContent()));
|
|
|
emailLogService.getBaseMapper().insert(emailLog);
|
|
|
-
|
|
|
channel.basicAck(message.getMessageProperties().getDeliveryTag(), false);
|
|
|
} catch (Exception e) {
|
|
|
// TODO 补救策略
|