From 6113331f380808b93d757cfeebfc3f2ffa34e34b Mon Sep 17 00:00:00 2001
From: liyanqi <15181887205@163.com>
Date: 星期一, 31 十月 2022 15:51:36 +0800
Subject: [PATCH] 驾驶舱接口校验补充
---
ycl-platform/src/main/java/com/ycl/service/message/factory/MailSender.java | 70 ++++++++++++++++++++++++++++++++++
1 files changed, 69 insertions(+), 1 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 f0e17e5..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
@@ -1,8 +1,17 @@
package com.ycl.service.message.factory;
+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;
+import org.springframework.mail.SimpleMailMessage;
+import org.springframework.mail.javamail.JavaMailSenderImpl;
+import org.springframework.stereotype.Component;
/**
* <p>
@@ -12,9 +21,68 @@
* @author mg
* @since 2022-10-09
*/
+@Component
public class MailSender implements Sender {
+ private final Logger logger = LoggerFactory.getLogger(getClass());
+
+ private static InnerSender innerSender;
+ @Autowired
+ public void setIMessageService(InnerSender innerSender) {
+ MailSender.innerSender = innerSender;
+ }
+
+ private static PropertyValueUtil propertyValueUtil;
+ @Autowired
+ 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) {
- return null;
+ //鍏ュ簱淇濆瓨
+ 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[] mails = message.getTargetTo().split(",");
+ SimpleMailMessage[] messageList = new SimpleMailMessage[mails.length];
+ for (int i=0;i<messageList.length;i++) {
+ SimpleMailMessage messageTo = new SimpleMailMessage();
+ 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