From 37646dc2736febd007fb8b2afba32851a0aa4667 Mon Sep 17 00:00:00 2001
From: mg <maokecheng@163.com>
Date: 星期五, 21 十月 2022 18:04:17 +0800
Subject: [PATCH] 添加结案结果
---
ycl-platform/src/main/java/com/ycl/service/message/factory/MailSender.java | 77 ++++++++++++++++++++++++++++++++++++++
1 files changed, 76 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..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
@@ -1,8 +1,18 @@
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.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;
+import org.springframework.mail.SimpleMailMessage;
+import org.springframework.mail.javamail.JavaMailSenderImpl;
+import org.springframework.stereotype.Component;
/**
* <p>
@@ -12,9 +22,74 @@
* @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 ISmsAuditService iSmsAuditService;
+ @Autowired
+ public void setISmsAuditService(ISmsAuditService iSmsAuditService) {
+ MailSender.iSmsAuditService = iSmsAuditService;
+ }
+
+ 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);
+ //鍙戣捣瀹℃牳
+ iSmsAuditService.startAuditSms(message);
+ //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