From a2ba906b00f9a239ebe3ddb8bdc35bb69b9cca19 Mon Sep 17 00:00:00 2001
From: mg <maokecheng@163.com>
Date: 星期三, 19 十月 2022 14:06:45 +0800
Subject: [PATCH]  发送邮件优化。

---
 ycl-platform/src/main/java/com/ycl/service/message/factory/InnerSender.java     |    6 ++++++
 ycl-platform/src/main/java/com/ycl/service/message/factory/MailSender.java      |   20 ++++++++++++++++----
 ycl-platform/src/main/java/com/ycl/scheduling/SchedulingConfiguration.java      |    6 ++----
 ycl-platform/src/main/java/com/ycl/service/message/impl/MessageServiceImpl.java |    5 -----
 4 files changed, 24 insertions(+), 13 deletions(-)

diff --git a/ycl-platform/src/main/java/com/ycl/scheduling/SchedulingConfiguration.java b/ycl-platform/src/main/java/com/ycl/scheduling/SchedulingConfiguration.java
index d6fb5bf..6788c08 100644
--- a/ycl-platform/src/main/java/com/ycl/scheduling/SchedulingConfiguration.java
+++ b/ycl-platform/src/main/java/com/ycl/scheduling/SchedulingConfiguration.java
@@ -4,12 +4,10 @@
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.context.annotation.Configuration;
-import org.springframework.scheduling.annotation.EnableScheduling;
 import org.springframework.scheduling.annotation.Scheduled;
 
-@Configuration
-@EnableScheduling
+//@Configuration
+//@EnableScheduling
 public class SchedulingConfiguration {
 
 	private Logger logger = LoggerFactory.getLogger(getClass());
diff --git a/ycl-platform/src/main/java/com/ycl/service/message/factory/InnerSender.java b/ycl-platform/src/main/java/com/ycl/service/message/factory/InnerSender.java
index 6f7a149..c504416 100644
--- a/ycl-platform/src/main/java/com/ycl/service/message/factory/InnerSender.java
+++ b/ycl-platform/src/main/java/com/ycl/service/message/factory/InnerSender.java
@@ -45,9 +45,15 @@
         String messageNumber = UtilNumber.getNumber("MC", 6);
         List<Message> messages = new ArrayList<>();
         BeanUtils.copyProperties(messageParam, message);
+        //鐖禝d涓�0
+        message.setParentId(0L);
         //鐢熸垚娑堟伅缂栫爜
         message.setMessageNumber(messageNumber);
         //鐢熸垚榛樿鍙傛暟
+        //鍙戦�佹椂闂�
+        if (message.getSendTime() == null) {
+            message.setSendTime(new Date());
+        }
         message.setIsView(0);
         message.setVersion(0);
         message.setIsScan(1);
diff --git a/ycl-platform/src/main/java/com/ycl/service/message/factory/MailSender.java b/ycl-platform/src/main/java/com/ycl/service/message/factory/MailSender.java
index c13045a..b272553 100644
--- a/ycl-platform/src/main/java/com/ycl/service/message/factory/MailSender.java
+++ b/ycl-platform/src/main/java/com/ycl/service/message/factory/MailSender.java
@@ -6,6 +6,7 @@
 import com.ycl.exception.ApiException;
 import com.ycl.service.message.ISmsAuditService;
 import com.ycl.service.message.Sender;
+import com.ycl.service.user.UmsAdminService;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -42,12 +43,23 @@
         MailSender.iSmsAuditService = iSmsAuditService;
     }
 
+    private static UmsAdminService adminService;
+    @Autowired
+    public void setUmsAdminService(UmsAdminService adminService) {
+        MailSender.adminService = adminService;
+    }
+
     @Override
     public Message sendMessage(MessageParam messageParam) {
         //鍏ュ簱淇濆瓨
         Message message = innerSender.sendMessage(messageParam);
         //鍙戣捣瀹℃牳
         iSmsAuditService.startAuditSms(message);
+        //id鎹㈡垚閭鍙�
+        String targetToMail = adminService.getTargetTo(messageParam.getTargetTo(), messageParam.getChannelCode());
+        message.setTargetTo(targetToMail);
+        //鍙戦�侀偖浠�
+        sendMail(message);
         return message;
     }
 
@@ -58,12 +70,12 @@
         sender.setUsername(propertyValueUtil.getUsername());
         sender.setPassword(propertyValueUtil.getAuthorizationCode());
 
-        String[] mailUrls = message.getTargetTo().split(",");
-        SimpleMailMessage[] messageList = new SimpleMailMessage[mailUrls.length];
+        String[] mails = message.getTargetTo().split(",");
+        SimpleMailMessage[] messageList = new SimpleMailMessage[mails.length];
         for (int i=0;i<messageList.length;i++) {
             SimpleMailMessage messageTo = new SimpleMailMessage();
-            messageTo.setFrom(message.getTargetFrom());
-            messageTo.setTo(mailUrls[i]);
+            messageTo.setFrom(propertyValueUtil.getUsername());
+            messageTo.setTo(mails[i]);
             messageTo.setSubject(message.getHead());
             messageTo.setText(message.getBody());
             messageList[i] = messageTo;
diff --git a/ycl-platform/src/main/java/com/ycl/service/message/impl/MessageServiceImpl.java b/ycl-platform/src/main/java/com/ycl/service/message/impl/MessageServiceImpl.java
index 50c7c1c..fa538f9 100644
--- a/ycl-platform/src/main/java/com/ycl/service/message/impl/MessageServiceImpl.java
+++ b/ycl-platform/src/main/java/com/ycl/service/message/impl/MessageServiceImpl.java
@@ -15,8 +15,6 @@
 import com.ycl.service.message.factory.InnerFactory;
 import com.ycl.service.message.factory.MailFactory;
 import com.ycl.service.message.factory.SmsFactory;
-import com.ycl.service.user.UmsAdminService;
-import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
 /**
@@ -29,9 +27,6 @@
  */
 @Service
 public class MessageServiceImpl extends ServiceImpl<MessageMapper, Message> implements IMessageService {
-
-    @Autowired
-    private UmsAdminService adminService;
 
     @Override
     public Message sendMessage(MessageParam messageParam) {

--
Gitblit v1.8.0