From be870c7d0e18a6ecdb0fb4eaa6a2da00e42aa24b Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E4=B8=8D=E5=81=9A=E7=A0=81=E5=86=9C?= <599854767@qq.com>
Date: Tue, 21 Dec 2021 21:29:55 +0800
Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E5=8F=91=E9=80=81=E9=82=AE?=
=?UTF-8?q?=E4=BB=B6?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
Infrastructure/Model/SendEmailDto.cs | 4 ++++
.../Controllers/CommonController.cs | 9 ++++++--
ZR.Common/MailHelper.cs | 23 ++++++++-----------
ZR.Vue/src/views/tool/email/sendEmail.vue | 23 +++++++++++++------
4 files changed, 36 insertions(+), 23 deletions(-)
diff --git a/Infrastructure/Model/SendEmailDto.cs b/Infrastructure/Model/SendEmailDto.cs
index 749bbb8..7408dcf 100644
--- a/Infrastructure/Model/SendEmailDto.cs
+++ b/Infrastructure/Model/SendEmailDto.cs
@@ -13,6 +13,10 @@ namespace Infrastructure.Model
public string ToUser { get; set; }
public string Content { get; set; } = "";
public string HtmlContent { get; set; }
+ ///
+ /// 是否发送给自己
+ ///
+ public bool SendMe { get; set; }
public DateTime AddTime { get; set; }
}
}
diff --git a/ZR.Admin.WebApi/Controllers/CommonController.cs b/ZR.Admin.WebApi/Controllers/CommonController.cs
index 49f68a9..e7514de 100644
--- a/ZR.Admin.WebApi/Controllers/CommonController.cs
+++ b/ZR.Admin.WebApi/Controllers/CommonController.cs
@@ -70,9 +70,14 @@ namespace ZR.Admin.WebApi.Controllers
{
return ToResponse(ApiResult.Error($"请配置邮箱信息"));
}
- MailHelper mailHelper = new MailHelper(OptionsSetting.MailOptions.From, OptionsSetting.MailOptions.Smtp, OptionsSetting.MailOptions.Port, OptionsSetting.MailOptions.Password);
+ MailHelper mailHelper = new(OptionsSetting.MailOptions.From, OptionsSetting.MailOptions.Smtp, OptionsSetting.MailOptions.Port, OptionsSetting.MailOptions.Password);
- mailHelper.SendMail(sendEmailVo.ToUser, sendEmailVo.Subject, sendEmailVo.Content, sendEmailVo.FileUrl, sendEmailVo.HtmlContent);
+ string[] toUsers = sendEmailVo.ToUser.Split(",", StringSplitOptions.RemoveEmptyEntries);
+ if (sendEmailVo.SendMe)
+ {
+ toUsers.Append(mailHelper.FromEmail);
+ }
+ mailHelper.SendMail(toUsers, sendEmailVo.Subject, sendEmailVo.Content, sendEmailVo.FileUrl, sendEmailVo.HtmlContent);
logger.Info($"发送邮件{JsonConvert.SerializeObject(sendEmailVo)}");
diff --git a/ZR.Common/MailHelper.cs b/ZR.Common/MailHelper.cs
index c5299a2..b2e12c8 100644
--- a/ZR.Common/MailHelper.cs
+++ b/ZR.Common/MailHelper.cs
@@ -55,7 +55,7 @@ namespace ZR.Common
public void SendMail(string toAddress, string subject, string text, string path = "", string html = "")
{
IEnumerable mailboxes = new List() {
- new MailboxAddress(toAddress)
+ new MailboxAddress(toAddress, toAddress)
};
SendMail(mailboxes, subject, text, path, html);
@@ -73,7 +73,7 @@ namespace ZR.Common
IList mailboxes = new List() { };
foreach (var item in toAddress)
{
- mailboxes.Add(new MailboxAddress(item));
+ mailboxes.Add(new MailboxAddress(item, item));
}
SendMail(mailboxes, subject, text, path, html);
@@ -92,19 +92,14 @@ namespace ZR.Common
MimeMessage message = new MimeMessage();
//发件人
message.From.Add(new MailboxAddress(FromEmail, FromEmail));
-
//收件人
- //message.To.Add(new MailboxAddress(toAddress));
- //IList internets = null;
- //internets.Add(new MailboxAddress(toAddress));
-
message.To.AddRange(toAddress);
message.Subject = subject;
- message.Date = DateTime.Now;
+ //message.Date = DateTime.Now;
//创建附件Multipart
Multipart multipart = new Multipart("mixed");
-
+ var alternative = new MultipartAlternative();
//html内容
if (!string.IsNullOrEmpty(html))
{
@@ -112,7 +107,7 @@ namespace ZR.Common
{
Text = html
};
- multipart.Add(Html);
+ alternative.Add(Html);
}
//文本内容
if (!string.IsNullOrEmpty(text))
@@ -121,7 +116,7 @@ namespace ZR.Common
{
Text = text + "\r\n\n\n" + mailSign
};
- multipart.Add(plain);
+ alternative.Add(plain);
}
//附件
@@ -136,12 +131,12 @@ namespace ZR.Common
//文件名字
FileName = Path.GetFileName(path)
};
- multipart.Add(attachment);
+ alternative.Add(attachment);
}
-
+ multipart.Add(alternative);
//赋值邮件内容
message.Body = multipart;
-
+
//开始发送
using (var client = new SmtpClient())
{
diff --git a/ZR.Vue/src/views/tool/email/sendEmail.vue b/ZR.Vue/src/views/tool/email/sendEmail.vue
index 199530e..f6a93a5 100644
--- a/ZR.Vue/src/views/tool/email/sendEmail.vue
+++ b/ZR.Vue/src/views/tool/email/sendEmail.vue
@@ -4,6 +4,12 @@
+
+
+
+
+ 收件邮箱
+
@@ -11,6 +17,9 @@
+
+
+