初始化提交

This commit is contained in:
2021-01-20 18:27:28 +08:00
commit e2c592fd4f
29 changed files with 1504 additions and 0 deletions

View File

@ -0,0 +1,33 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>business.chaoran</groupId>
<artifactId>cooperop-demo-base</artifactId>
<version>1.0-SNAPSHOT</version>
</parent>
<groupId>business.chaoran</groupId>
<artifactId>cooperop-base-message</artifactId>
<version>1.0-SNAPSHOT</version>
<dependencies>
<!--lombok-->
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
</dependency>
<!--邮件依赖-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-mail</artifactId>
</dependency>
</dependencies>
</project>

View File

@ -0,0 +1,28 @@
package business.cooperop.base.message;
/**
* 外部消息接口
* @author inaisen
*/
public interface ExternalMessage {
/**
* 发送手机消息
*/
void sendMobileMessage();
/**
* 发送邮件
*/
void sendEmailMessage();
/**
* 发送微信消息
*/
void sendWeChartMessage();
/**
* 发送钉钉消息
*/
void sendDingTalkMessage();
}

View File

@ -0,0 +1,41 @@
package business.cooperop.base.message;
/**
* 外部消息接口实现类
* @author inaisen
*/
public class ExternalMessageImpl implements ExternalMessage {
/**
* 发送手机消息实现
*/
@Override
public void sendMobileMessage() {
}
/**
* 发送邮件消息实现
*/
@Override
public void sendEmailMessage() {
}
/**
* 发送微信消息实现
*/
@Override
public void sendWeChartMessage() {
}
/**
* 发送手机钉钉实现
*/
@Override
public void sendDingTalkMessage() {
}
}

View File

@ -0,0 +1,19 @@
package business.cooperop.base.message;
/**
* 内部消息接口
* @author inaisen
*/
public interface InternalMessage {
/**
* 设置内部消息接口
*/
void settingInternalMessage();
/**
* 查询内部消息接口
*/
void queryInternalMessage();
}

View File

@ -0,0 +1,24 @@
package business.cooperop.base.message;
/**
* 内部消息接口实现
* @author inaisen
*/
public class InternalMessageImpl implements InternalMessage {
/**
* 设置内部消息
*/
@Override
public void settingInternalMessage() {
}
/**
* 查询内部消息
*/
@Override
public void queryInternalMessage() {
}
}

View File

@ -0,0 +1,36 @@
package business.cooperop.base.message.email.service;
/**
* 天下风云出我辈, 一入代码岁月催
*
* @Author: deadline
* @Date: 2020-12-22 9:38
*/
public interface EmailService {
/**
* 发送文本邮件
* @param to 收件人
* @param subject 主题
* @param content 内容
*/
void sendSimpleMail(String[] to, String subject, String content);
/**
* 发送HTML邮件
* @param to 收件人
* @param subject 主题
* @param content 内容
*/
void sendHtmlMail(String[] to, String subject, String content);
/**
* 发送带附件的邮件
* @param to 收件人
* @param subject 主题
* @param content 内容
* @param filePath 附件
*/
public void sendAttachmentsMail(String[] to, String subject, String content, String...filePath);
}

View File

@ -0,0 +1,89 @@
package business.cooperop.base.message.email.service.impl;
import business.cooperop.base.message.email.service.EmailService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.core.io.FileSystemResource;
import org.springframework.mail.SimpleMailMessage;
import org.springframework.mail.javamail.JavaMailSender;
import org.springframework.mail.javamail.MimeMessageHelper;
import org.springframework.stereotype.Service;
import javax.mail.MessagingException;
import javax.mail.internet.MimeMessage;
import java.io.File;
/**
* 天下风云出我辈, 一入代码岁月催
*
* @Author: deadline
* @Date: 2020-12-22 9:38
*/
@Slf4j
public class EmailServiceImpl implements EmailService {
@Autowired
private JavaMailSender javaMailSender;
//注入配置文件中配置的信息——>from
@Value("${spring.mail.from}")
private String from;
@Override
public void sendSimpleMail(String[] to, String subject, String content) {
SimpleMailMessage message = new SimpleMailMessage();
//发件人
message.setFrom(from);
//收件人
message.setTo(to);
//邮件主题
message.setSubject(subject);
//邮件内容
message.setText(content);
//发送邮件
javaMailSender.send(message);
}
@Override
public void sendHtmlMail(String[] to, String subject, String content) {
MimeMessage message = javaMailSender.createMimeMessage();
MimeMessageHelper messageHelper;
try {
messageHelper = new MimeMessageHelper(message,true);
messageHelper.setFrom(from);
messageHelper.setTo(to);
message.setSubject(subject);
messageHelper.setText(content,true);
javaMailSender.send(message);
log.info("邮件已经发送!");
} catch (MessagingException e) {
log.error("发送邮件时发生异常:" + e);
}
}
@Override
public void sendAttachmentsMail(String[] to, String subject, String content, String...filePath) {
MimeMessage message = javaMailSender.createMimeMessage();
MimeMessageHelper messageHelper;
try {
messageHelper = new MimeMessageHelper(message,true);
messageHelper.setFrom(from);
messageHelper.setTo(to);
messageHelper.setSubject(subject);
messageHelper.setText(content,true);
for (String path : filePath) {
//携带附件
FileSystemResource file = new FileSystemResource(path);
String fileName = path.substring(path.lastIndexOf(File.separator));
messageHelper.addAttachment(fileName, file);
}
javaMailSender.send(message);
log.info("邮件加附件发送成功!");
} catch (MessagingException e) {
log.error("发送失败:"+e);
}
}
}