update 邮件发送异常时的报错
fix bug 40935 我的消息--工作组项目发布会议--系统通知收到了邮件的通知内容
This commit is contained in:
+30
-21
@@ -30,6 +30,7 @@ import org.apache.commons.collections.CollectionUtils;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.beans.BeanUtils;
|
||||
import org.springframework.core.env.Environment;
|
||||
import org.springframework.mail.MailAuthenticationException;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
@@ -73,25 +74,21 @@ public class SendMessageServiceImpl implements SendMessageService {
|
||||
//模板内容
|
||||
String content = sysSmsTemplate.getTemplateContent();
|
||||
HashMap<String,String> map = sendMessageDTO.getTemplateParam();
|
||||
if (Objects.equals(sendMessageDTO.getUseTemplate(),false)){
|
||||
content = map.get("value");
|
||||
}else {
|
||||
if(!Objects.isNull(map)) {
|
||||
// 替换企业端系统url与小程序名称
|
||||
// todo 替换系统地址,小程序名称
|
||||
if(Objects.equals(sendMessageDTO.getTemplateCode(),CompanyMessageEnums.MSG2.getCode())
|
||||
|| Objects.equals(sendMessageDTO.getTemplateCode(),CompanyMessageEnums.MSG3.getCode())
|
||||
|| Objects.equals(sendMessageDTO.getTemplateCode(),CompanyMessageEnums.MSG4.getCode())
|
||||
|| Objects.equals(sendMessageDTO.getTemplateCode(),CompanyMessageEnums.MSG6.getCode())
|
||||
|| Objects.equals(sendMessageDTO.getTemplateCode(),CompanyMessageEnums.MSG7.getCode())
|
||||
|| Objects.equals(sendMessageDTO.getTemplateCode(),CompanyMessageEnums.MSG12.getCode())){
|
||||
map.put("systemAddress",env.getProperty("message.systemUrl"));
|
||||
map.put("wxName",env.getProperty("message.wxName"));
|
||||
}
|
||||
for (Map.Entry<String, String> entry : map.entrySet()) {
|
||||
String str = "${" + entry.getKey() + "}";
|
||||
content = content.replace(str, entry.getValue());
|
||||
}
|
||||
if(!Objects.isNull(map)) {
|
||||
// 替换企业端系统url与小程序名称
|
||||
// todo 替换系统地址,小程序名称
|
||||
if(Objects.equals(sendMessageDTO.getTemplateCode(),CompanyMessageEnums.MSG2.getCode())
|
||||
|| Objects.equals(sendMessageDTO.getTemplateCode(),CompanyMessageEnums.MSG3.getCode())
|
||||
|| Objects.equals(sendMessageDTO.getTemplateCode(),CompanyMessageEnums.MSG4.getCode())
|
||||
|| Objects.equals(sendMessageDTO.getTemplateCode(),CompanyMessageEnums.MSG6.getCode())
|
||||
|| Objects.equals(sendMessageDTO.getTemplateCode(),CompanyMessageEnums.MSG7.getCode())
|
||||
|| Objects.equals(sendMessageDTO.getTemplateCode(),CompanyMessageEnums.MSG12.getCode())){
|
||||
map.put("systemAddress",env.getProperty("message.systemUrl"));
|
||||
map.put("wxName",env.getProperty("message.wxName"));
|
||||
}
|
||||
for (Map.Entry<String, String> entry : map.entrySet()) {
|
||||
String str = "${" + entry.getKey() + "}";
|
||||
content = content.replace(str, entry.getValue());
|
||||
}
|
||||
}
|
||||
// 1短信 2邮件 3系统
|
||||
@@ -118,11 +115,23 @@ public class SendMessageServiceImpl implements SendMessageService {
|
||||
if(!CollectionUtils.isEmpty(sendMessageDTO.getListFile())){
|
||||
emailHandle.SendMsgAndFile(sendMessageDTO.getEmail(), title, content,sendMessageDTO.getListFile());
|
||||
}else{
|
||||
emailHandle.SendMsg(sendMessageDTO.getEmail(), title, content);
|
||||
//如果有通知内容就替换
|
||||
if (Objects.equals(sendMessageDTO.getUseTemplate(),false)){
|
||||
emailHandle.SendMsg(sendMessageDTO.getEmail(), title, map.get("value"));
|
||||
}else {
|
||||
emailHandle.SendMsg(sendMessageDTO.getEmail(), title, content);
|
||||
}
|
||||
}
|
||||
}catch (Exception e){
|
||||
log.error("发送邮件异常",e);
|
||||
// throw new JeroBootException("邮件发送失败!");
|
||||
if (e.getMessage() !=null){
|
||||
if (e.getMessage().contains("javax.mail.AuthenticationFailedException")){
|
||||
throw new JeroBootException("邮件发送失败,发件人的邮箱或邮箱密码错误!");
|
||||
}
|
||||
if (e.getMessage().contains("java.net.ConnectException")){
|
||||
throw new JeroBootException("邮件发送失败,邮箱服务器连接超时!");
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
// 发送消息
|
||||
|
||||
Reference in New Issue
Block a user