From 39f08dd934cde1a02f1c243faa43174fa474c87f Mon Sep 17 00:00:00 2001
From: wl <173@qq.com>
Date: 星期二, 08 十一月 2022 11:11:35 +0800
Subject: [PATCH] 消息中心展示

---
 ycl-platform/src/main/java/com/ycl/service/message/factory/MailSender.java |   31 +++++++++++++++++++++++++------
 1 files changed, 25 insertions(+), 6 deletions(-)

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 0daacdf..62a6c88 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
@@ -3,7 +3,9 @@
 import com.ycl.common.util.PropertyValueUtil;
 import com.ycl.dto.message.MessageParam;
 import com.ycl.entity.message.Message;
+import com.ycl.exception.ApiException;
 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;
@@ -34,35 +36,52 @@
     public void setPropertyValueUtil(PropertyValueUtil propertyValueUtil) {
         MailSender.propertyValueUtil = propertyValueUtil;
     }
+    private static UmsAdminService adminService;
+    @Autowired
+    public void setUmsAdminService(UmsAdminService adminService) {
+        MailSender.adminService = adminService;
+    }
 
     @Override
     public Message sendMessage(MessageParam messageParam) {
-
         //鍏ュ簱淇濆瓨
         Message message = innerSender.sendMessage(messageParam);
+        if (messageParam.getStatus() == 1) {
+            //id鎹㈡垚閭鍙�
+            String targetToMail = adminService.getTargetTo(messageParam.getTargetTo(), messageParam.getChannelCode());
+            message.setTargetTo(targetToMail);
+            //鍙戦�侀偖浠�
+            sendMail(message);
+        }
+        return message;
+    }
+
+    public Message sendMail(Message message) {
         //缁勮閭欢鍙戦��
         JavaMailSenderImpl sender = new JavaMailSenderImpl();
         sender.setHost(propertyValueUtil.getHost());
         sender.setUsername(propertyValueUtil.getUsername());
         sender.setPassword(propertyValueUtil.getAuthorizationCode());
 
-        String[] mailUrls = messageParam.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(messageParam.getTargetFrom());
-            messageTo.setTo(mailUrls[i]);
-            messageTo.setSubject(messageParam.getHead());
+            messageTo.setFrom(propertyValueUtil.getUsername());
+            messageTo.setTo(mails[i]);
+            messageTo.setSubject(message.getHead());
             messageTo.setText(message.getBody());
             messageList[i] = messageTo;
         }
         try {
             sender.send(messageList);
             logger.info("绠�鍗曢偖浠跺凡鍙戦��");
+
         }catch (Exception e){
             e.printStackTrace();
             logger.error("鍙戦�佺畝鍗曢偖浠舵椂鍙戠敓寮傚父锛�", e);
             e.printStackTrace();
+            throw new ApiException("鍙戦�佺畝鍗曢偖浠舵椂鍙戠敓寮傚父");
         }
         return message;
     }

--
Gitblit v1.8.0