From e46f74096736c408328cf588e55ea2152f436de4 Mon Sep 17 00:00:00 2001
From: lin <sbla5888@163.com>
Date: Mon, 04 Mar 2024 16:00:00 +0800
Subject: [PATCH] 邮箱管理

---
 src/main/java/org/springblade/modules/messageRecord/service/impl/MessageRecordServiceImpl.java |   27 +++++++++++++++++----------
 1 files changed, 17 insertions(+), 10 deletions(-)

diff --git a/src/main/java/org/springblade/modules/messageRecord/service/impl/MessageRecordServiceImpl.java b/src/main/java/org/springblade/modules/messageRecord/service/impl/MessageRecordServiceImpl.java
index 5badb91..9d1d35a 100644
--- a/src/main/java/org/springblade/modules/messageRecord/service/impl/MessageRecordServiceImpl.java
+++ b/src/main/java/org/springblade/modules/messageRecord/service/impl/MessageRecordServiceImpl.java
@@ -19,7 +19,9 @@
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import lombok.AllArgsConstructor;
+import org.apache.commons.lang3.StringUtils;
 import org.springblade.core.tool.utils.DateUtil;
+import org.springblade.core.tool.utils.StringUtil;
 import org.springblade.modules.email.service.IEmailAccountService;
 import org.springblade.modules.email.service.IEmailService;
 import org.springblade.modules.messageRecord.entity.MessageRecord;
@@ -37,6 +39,7 @@
 
 import java.util.ArrayList;
 import java.util.List;
+import java.util.stream.Collectors;
 
 /**
  * 消息记录表 服务实现类
@@ -83,12 +86,13 @@
 			messageUser.setType(messageRecord.getType());
 			messageUser.setCreateTime(DateUtil.now());
 			messageUser.setUpdateTime(DateUtil.now());
-
-			if (messageRecord.getType().indexOf("2") > -1) {
+			messageUser.setSendStatus("1");
+			if (messageRecord.getType().indexOf("1") > -1) {
+				messageUser.setSendStatus("2");
+			} else if (messageRecord.getType().indexOf("2") > -1) {
 				messageUser.setEmail(user.getEmail());
-			}
-
-			if (messageRecord.getType().indexOf("3") > -1) {
+			} else if (messageRecord.getType().indexOf("3") > -1) {
+				messageUser.setSendStatus("2");
 				messageUser.setPhone(user.getPhone());
 			}
 
@@ -97,10 +101,14 @@
 		//在message_user表里存数据
 		boolean saveBatch = messageUserService.saveBatch(messageUserList);
 
-		if (saveBatch&&saveRecord){
+		if (saveBatch && saveRecord) {
 			if (messageRecord.getType().indexOf("2") > -1) {
-				emailAccountService.sendMessageUserEmail(messageRecord.getTitle(), messageRecord.getContent(), messageUserList);
-				return true;
+				Boolean aBoolean = emailAccountService.sendMessageUserEmail(messageRecord.getTitle(), messageRecord.getContent(), messageUserList);
+				// 邮件发送成功,更新邮件状态
+				if (aBoolean) {
+					List<MessageUser> collect = messageUserList.stream().filter(e -> StringUtil.isNotBlank(e.getEmail())).collect(Collectors.toList());
+					messageUserService.updateBatchById(collect);
+				}
 			}
 
 			if (messageRecord.getType().indexOf("3") > -1) {
@@ -120,8 +128,7 @@
 		List<MessageUser> messageUserList = messageUserService.list(new QueryWrapper<MessageUser>().eq("message_record_id", id));
 
 		if (messageRecord.getType().indexOf("2") > -1) {
-			emailAccountService.sendMessageUserEmail(messageRecord.getTitle(), messageRecord.getContent(), messageUserList);
-			return true;
+			return emailAccountService.sendMessageUserEmail(messageRecord.getTitle(), messageRecord.getContent(), messageUserList);
 		}
 
 		if (messageRecord.getType().indexOf("3") > -1) {

--
Gitblit v1.9.3