From f6c3ee10f20c2360a07c03443a9f610b5d1f7e59 Mon Sep 17 00:00:00 2001
From: bunny <1319900154@qq.com>
Date: Tue, 7 May 2024 14:43:09 +0800
Subject: [PATCH] =?UTF-8?q?feat(=E9=82=AE=E4=BB=B6):=20=E7=BB=BC=E5=90=88?=
=?UTF-8?q?=E9=82=AE=E4=BB=B6=E5=8F=91=E9=80=81?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
common/common-utils/pom.xml | 4 +++
.../bunny/common/utils/MailSenderHelper.java} | 35 +++++++++++++++++--
common/pom.xml | 1 -
common/service-mail/pom.xml | 33 -----------------
.../common/email/config/EmailConfig.java | 4 ---
.../java/cn/bunny/entity/email/EmailSend.java | 12 +++++--
service/pom.xml | 5 ---
.../service/impl/EmailServiceImpl.java | 18 +++++-----
8 files changed, 54 insertions(+), 58 deletions(-)
rename common/{service-mail/src/main/java/cn/bunny/common/email/utils/MailSender.java => common-utils/src/main/java/cn/bunny/common/utils/MailSenderHelper.java} (79%)
delete mode 100644 common/service-mail/pom.xml
delete mode 100644 common/service-mail/src/main/java/cn/bunny/common/email/config/EmailConfig.java
diff --git a/common/common-utils/pom.xml b/common/common-utils/pom.xml
index 44d76da..5f69e9a 100644
--- a/common/common-utils/pom.xml
+++ b/common/common-utils/pom.xml
@@ -28,6 +28,10 @@
jaxb-api
2.1
+
+ org.springframework.boot
+ spring-boot-starter-mail
+
com.baomidou
diff --git a/common/service-mail/src/main/java/cn/bunny/common/email/utils/MailSender.java b/common/common-utils/src/main/java/cn/bunny/common/utils/MailSenderHelper.java
similarity index 79%
rename from common/service-mail/src/main/java/cn/bunny/common/email/utils/MailSender.java
rename to common/common-utils/src/main/java/cn/bunny/common/utils/MailSenderHelper.java
index 67f78c0..f112d89 100644
--- a/common/service-mail/src/main/java/cn/bunny/common/email/utils/MailSender.java
+++ b/common/common-utils/src/main/java/cn/bunny/common/utils/MailSenderHelper.java
@@ -1,4 +1,4 @@
-package cn.bunny.common.email.utils;
+package cn.bunny.common.utils;
import cn.bunny.entity.email.EmailSend;
import cn.bunny.entity.email.EmailSendInit;
@@ -11,14 +11,14 @@ import org.springframework.web.multipart.MultipartFile;
import java.util.Objects;
-public class MailSender {
+public class MailSenderHelper {
private final String username;
private final JavaMailSenderImpl javaMailSender;
/**
* 初始化构造函数进行当前类赋值
*/
- public MailSender(EmailSendInit emailSendInit) {
+ public MailSenderHelper(EmailSendInit emailSendInit) {
JavaMailSenderImpl javaMailSender = new JavaMailSenderImpl();
javaMailSender.setHost(emailSendInit.getHost());
javaMailSender.setPort(emailSendInit.getPort());
@@ -127,4 +127,33 @@ public class MailSender {
// 发送邮件
javaMailSender.send(message);
}
+
+ /**
+ * 综合邮箱发送
+ *
+ * @param emailSend 邮件消息
+ */
+ public void sendEmail(EmailSend emailSend) throws MessagingException {
+ // 创建 MimeMessage 对象用于发送邮件富文本或者附件
+ MimeMessage message = javaMailSender.createMimeMessage();
+ // 创建 MimeMessageHelper
+ MimeMessageHelper helper = new MimeMessageHelper(message, true);
+
+ // 设置发送人
+ helper.setFrom(username);
+ // 设置邮件接受者
+ helper.setTo(emailSend.getSendTo());
+ // 设置邮件主题
+ helper.setSubject(emailSend.getSubject());
+ // 设置发送消息 为富文本
+ helper.setText(emailSend.getMessage(), emailSend.getIsRichText());
+ // 设置抄送人
+ helper.setCc(emailSend.getCcParam().split(","));
+ // 邮件添加附件
+ MultipartFile file = emailSend.getFile();
+ helper.addAttachment(Objects.requireNonNull(file.getOriginalFilename()), file);
+
+ // 发送邮件
+ javaMailSender.send(message);
+ }
}
diff --git a/common/pom.xml b/common/pom.xml
index 6776ed0..f201208 100644
--- a/common/pom.xml
+++ b/common/pom.xml
@@ -15,7 +15,6 @@
service-utils
common-utils
spring-security
- service-mail
diff --git a/common/service-mail/pom.xml b/common/service-mail/pom.xml
deleted file mode 100644
index b2770f3..0000000
--- a/common/service-mail/pom.xml
+++ /dev/null
@@ -1,33 +0,0 @@
-
- 4.0.0
-
- cn.bunny
- common
- 0.0.1-SNAPSHOT
-
-
- service-mail
- jar
-
- service-mail
- https://maven.apache.org
-
-
- UTF-8
-
-
-
-
-
- org.springframework.boot
- spring-boot-starter-mail
-
-
- cn.bunny
- service-utils
- 0.0.1-SNAPSHOT
- compile
-
-
-
diff --git a/common/service-mail/src/main/java/cn/bunny/common/email/config/EmailConfig.java b/common/service-mail/src/main/java/cn/bunny/common/email/config/EmailConfig.java
deleted file mode 100644
index 73b306d..0000000
--- a/common/service-mail/src/main/java/cn/bunny/common/email/config/EmailConfig.java
+++ /dev/null
@@ -1,4 +0,0 @@
-package cn.bunny.common.email.config;
-
-public class EmailConfig {
-}
diff --git a/model/src/main/java/cn/bunny/entity/email/EmailSend.java b/model/src/main/java/cn/bunny/entity/email/EmailSend.java
index 0070c68..a06de45 100644
--- a/model/src/main/java/cn/bunny/entity/email/EmailSend.java
+++ b/model/src/main/java/cn/bunny/entity/email/EmailSend.java
@@ -4,17 +4,23 @@ import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
-
-import java.io.File;
+import org.springframework.web.multipart.MultipartFile;
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
public class EmailSend {
+ // 给谁发送
private String sendTo;
+ // 发送主题
private String subject;
+ // 是否为富文本
+ private Boolean isRichText;
+ // 发送内容
private String message;
+ // 抄送人
private String ccParam;
- private File file;
+ // 发送的文件
+ private MultipartFile file;
}
diff --git a/service/pom.xml b/service/pom.xml
index decbca4..c13c891 100644
--- a/service/pom.xml
+++ b/service/pom.xml
@@ -25,11 +25,6 @@
spring-security
0.0.1-SNAPSHOT
-
- cn.bunny
- service-mail
- 0.0.1-SNAPSHOT
-
cn.bunny
diff --git a/service/src/main/java/cn/bunny/service/service/impl/EmailServiceImpl.java b/service/src/main/java/cn/bunny/service/service/impl/EmailServiceImpl.java
index 6931de2..7316e51 100644
--- a/service/src/main/java/cn/bunny/service/service/impl/EmailServiceImpl.java
+++ b/service/src/main/java/cn/bunny/service/service/impl/EmailServiceImpl.java
@@ -1,6 +1,6 @@
package cn.bunny.service.service.impl;
-import cn.bunny.common.email.utils.MailSender;
+import cn.bunny.common.utils.MailSenderHelper;
import cn.bunny.entity.email.EmailSend;
import cn.bunny.entity.email.EmailSendInit;
import cn.bunny.service.service.EmailService;
@@ -25,8 +25,8 @@ public class EmailServiceImpl implements EmailService {
emailSendInit.setPort(465);
emailSendInit.setUsername("3324855376@qq.com");
emailSendInit.setPassword("axyqbvfuxkdqdaai");
- MailSender mailSender = new MailSender(emailSendInit);
- mailSender.sendSimpleEmail(emailSend);
+ MailSenderHelper mailSenderHelper = new MailSenderHelper(emailSendInit);
+ mailSenderHelper.sendSimpleEmail(emailSend);
}
/**
@@ -44,8 +44,8 @@ public class EmailServiceImpl implements EmailService {
emailSendInit.setUsername("3324855376@qq.com");
emailSendInit.setPassword("axyqbvfuxkdqdaai");
- MailSender mailSender = new MailSender(emailSendInit);
- mailSender.sendAttachmentEmail(emailSend, file, true);
+ MailSenderHelper mailSenderHelper = new MailSenderHelper(emailSendInit);
+ mailSenderHelper.sendAttachmentEmail(emailSend, file, true);
return true;
} catch (MessagingException e) {
return false;
@@ -67,8 +67,8 @@ public class EmailServiceImpl implements EmailService {
emailSendInit.setUsername("3324855376@qq.com");
emailSendInit.setPassword("axyqbvfuxkdqdaai");
- MailSender mailSender = new MailSender(emailSendInit);
- mailSender.sendRichText(emailSend, true);
+ MailSenderHelper mailSenderHelper = new MailSenderHelper(emailSendInit);
+ mailSenderHelper.sendRichText(emailSend, true);
return true;
} catch (MessagingException e) {
return false;
@@ -89,8 +89,8 @@ public class EmailServiceImpl implements EmailService {
emailSendInit.setUsername("3324855376@qq.com");
emailSendInit.setPassword("axyqbvfuxkdqdaai");
- MailSender mailSender = new MailSender(emailSendInit);
- mailSender.sendCC(emailSend, true);
+ MailSenderHelper mailSenderHelper = new MailSenderHelper(emailSendInit);
+ mailSenderHelper.sendCC(emailSend, true);
return true;
} catch (MessagingException e) {
return false;