|
|
|
@@ -2,6 +2,8 @@ package com.iformall.service.impl; |
|
|
|
|
|
|
|
import com.iformall.domain.po.BaseMsg; |
|
|
|
import com.iformall.domain.po.MailMsg; |
|
|
|
import com.iformall.domain.po.WxMsgModel; |
|
|
|
import com.iformall.mapper.WxMsgModelMapper; |
|
|
|
import com.iformall.service.MsgSendService; |
|
|
|
import org.apache.commons.lang3.StringUtils; |
|
|
|
import org.slf4j.Logger; |
|
|
|
@@ -15,6 +17,7 @@ import org.springframework.mail.javamail.MimeMessageHelper; |
|
|
|
import org.springframework.stereotype.Service; |
|
|
|
import javax.mail.internet.MimeMessage; |
|
|
|
import java.io.File; |
|
|
|
import java.util.Map; |
|
|
|
|
|
|
|
/** |
|
|
|
* 发送邮件 |
|
|
|
@@ -31,9 +34,28 @@ public class SendEmailServiceImpl implements MsgSendService { |
|
|
|
@Value("${spring.mail.username}") |
|
|
|
private String from; |
|
|
|
|
|
|
|
@Autowired |
|
|
|
private WxMsgModelMapper wxMsgModelMapper; |
|
|
|
|
|
|
|
@Override |
|
|
|
public void send(BaseMsg baseMsg) throws Exception{ |
|
|
|
MailMsg mailMsg = (MailMsg)baseMsg; |
|
|
|
//根据模板替换动态内容 |
|
|
|
if(mailMsg.getModelId() != null){ |
|
|
|
WxMsgModel msgModel = new WxMsgModel(); |
|
|
|
msgModel.setTenantId(mailMsg.getTenantId()); |
|
|
|
msgModel.setModelId(mailMsg.getModelId()); |
|
|
|
WxMsgModel wxMsgModel = wxMsgModelMapper.findOneByModelId(msgModel); |
|
|
|
if(wxMsgModel == null){ |
|
|
|
throw new Exception("模板id:"+mailMsg.getModelId()+"不存在"); |
|
|
|
} |
|
|
|
|
|
|
|
String msg = wxMsgModel.getContent(); |
|
|
|
for (Map.Entry<String, String> entry : mailMsg.getDynamicContentMap().entrySet()) { |
|
|
|
msg = msg.replace("{"+entry.getKey()+"}", entry.getValue()); |
|
|
|
} |
|
|
|
mailMsg.setMsg(msg); |
|
|
|
} |
|
|
|
|
|
|
|
if(mailMsg.isHtml()){ //html邮件 |
|
|
|
MimeMessage message = sender.createMimeMessage(); |
|
|
|
|