From 2af85006c69c45a1dfd5cf02e86da3066ecc6735 Mon Sep 17 00:00:00 2001 From: liyuchen <791867849@qq.com> Date: Fri, 14 Apr 2023 09:25:59 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E6=A8=A1=E6=9D=BF=E9=82=AE?= =?UTF-8?q?=E4=BB=B6-liyuchen?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/kening/vordm/entity/Email.java | 5 +++ .../kening/vordm/service/EmailService.java | 2 + .../impl/AdministratorServiceImpl.java | 13 ++++-- .../vordm/service/impl/EmailServiceImpl.java | 42 ++++++++++++++++++- kn-service/pom.xml | 5 +++ 5 files changed, 63 insertions(+), 4 deletions(-) diff --git a/kn-service-api/biz-vordm-api/src/main/java/com/kening/vordm/entity/Email.java b/kn-service-api/biz-vordm-api/src/main/java/com/kening/vordm/entity/Email.java index b7f87fa..7b66489 100644 --- a/kn-service-api/biz-vordm-api/src/main/java/com/kening/vordm/entity/Email.java +++ b/kn-service-api/biz-vordm-api/src/main/java/com/kening/vordm/entity/Email.java @@ -53,4 +53,9 @@ public class Email { */ private Map attachments; + /** + * 发送数据 + */ + private Map dataMap; + } diff --git a/kn-service/biz-vordm/src/main/java/com/kening/vordm/service/EmailService.java b/kn-service/biz-vordm/src/main/java/com/kening/vordm/service/EmailService.java index a9544ea..2c8f205 100644 --- a/kn-service/biz-vordm/src/main/java/com/kening/vordm/service/EmailService.java +++ b/kn-service/biz-vordm/src/main/java/com/kening/vordm/service/EmailService.java @@ -12,4 +12,6 @@ import javax.mail.MessagingException; public interface EmailService { void sendMimeMessage(Email email) throws MessagingException; + + void sendTemplate(Email email) throws MessagingException; } diff --git a/kn-service/biz-vordm/src/main/java/com/kening/vordm/service/impl/AdministratorServiceImpl.java b/kn-service/biz-vordm/src/main/java/com/kening/vordm/service/impl/AdministratorServiceImpl.java index 9e160b5..99fc256 100644 --- a/kn-service/biz-vordm/src/main/java/com/kening/vordm/service/impl/AdministratorServiceImpl.java +++ b/kn-service/biz-vordm/src/main/java/com/kening/vordm/service/impl/AdministratorServiceImpl.java @@ -3,13 +3,15 @@ package com.kening.vordm.service.impl; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.kening.vordm.entity.Administrator; +import com.kening.vordm.entity.Email; import com.kening.vordm.mapper.AdministratorMapper; import com.kening.vordm.service.AdministratorService; -import com.kening.vordm.util.SendMailUtil; +import com.kening.vordm.service.EmailService; import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springblade.core.mp.base.BaseServiceImpl; import org.springblade.core.tool.utils.DigestUtil; +import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Service; import java.time.LocalDate; @@ -26,7 +28,7 @@ import java.util.Map; @AllArgsConstructor public class AdministratorServiceImpl extends BaseServiceImpl implements AdministratorService { - private SendMailUtil sendMailUtil; + private EmailService emailService; /** * 根据角色名称获取角色id @@ -69,7 +71,12 @@ public class AdministratorServiceImpl extends BaseServiceImpl entry : email.getDataMap().entrySet()) { + context.setVariable(entry.getKey(), entry.getValue()); + } + //使用的模板 + String templateContent = templateEngine.process("email", context); + MimeMessage message = javaMailSender.createMimeMessage(); + MimeMessageHelper helper = new MimeMessageHelper(message, true); + //发送人 + helper.setFrom(from); + //收件人 + helper.setTo(email.getTos()); + //主题 + helper.setSubject(email.getSubject()); + //发送内容 + helper.setText(templateContent, true); + return message; + } + + /** * 构建邮件发送内容 * @param email 待发送的邮件 * @return 邮件消息 diff --git a/kn-service/pom.xml b/kn-service/pom.xml index d8bca05..c10d910 100644 --- a/kn-service/pom.xml +++ b/kn-service/pom.xml @@ -101,6 +101,11 @@ org.springframework.boot spring-boot-starter-mail + + + org.springframework.boot + spring-boot-starter-thymeleaf +