pom.xml | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
ycl-common/src/main/java/com/ycl/dto/UmsAdminParam.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
ycl-platform/pom.xml | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
ycl-platform/src/main/java/com/ycl/common/util/PropertyValueUtil.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
ycl-platform/src/main/java/com/ycl/service/message/factory/MailSender.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
ycl-platform/src/main/resources/application-dev.yml | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
pom.xml
@@ -186,6 +186,16 @@ <artifactId>spring-cloud-starter-openfeign</artifactId> <version>3.1.3</version> </dependency> <!-- send_mail --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-mail</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-configuration-processor</artifactId> <optional>true</optional> </dependency> </dependencies> </project> ycl-common/src/main/java/com/ycl/dto/UmsAdminParam.java
@@ -51,7 +51,7 @@ private Long departmentId; @ApiModelProperty(value = "用户类型") private byte userType; private Integer userType; @ApiModelProperty(value = "座机/分机") private String zj; ycl-platform/pom.xml
@@ -26,11 +26,6 @@ <version>1.0.0</version> </dependency> <dependency> <groupId>commons-httpclient</groupId> <artifactId>commons-httpclient</artifactId> <version>3.0.1</version> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> ycl-platform/src/main/java/com/ycl/common/util/PropertyValueUtil.java
New file @@ -0,0 +1,26 @@ package com.ycl.common.util; import lombok.Data; import org.springframework.beans.factory.annotation.Value; import org.springframework.boot.context.properties.ConfigurationProperties; import org.springframework.stereotype.Component; /** * <p> * 类说明 * </p> * * @author mg * @since 2022-10-09 */ @Component @ConfigurationProperties(prefix = "file") @Data public class PropertyValueUtil { @Value("${mail.host}") private String host; @Value("${mail.username}") private String username; @Value("${mail.authorizationCode}") private String authorizationCode; } ycl-platform/src/main/java/com/ycl/service/message/factory/MailSender.java
@@ -1,8 +1,15 @@ 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.service.message.Sender; 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 +19,51 @@ * @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; } @Override public Message sendMessage(MessageParam messageParam) { return null; //入库保存 Message message = innerSender.sendMessage(messageParam); //组装邮件发送 JavaMailSenderImpl sender = new JavaMailSenderImpl(); sender.setHost(propertyValueUtil.getHost()); sender.setUsername(propertyValueUtil.getUsername()); sender.setPassword(propertyValueUtil.getAuthorizationCode()); String[] mailUrls = messageParam.getTargetTo().split(","); SimpleMailMessage[] messageList = new SimpleMailMessage[mailUrls.length]; for (int i=0;i<messageList.length;i++) { SimpleMailMessage messageTo = new SimpleMailMessage(); messageTo.setFrom(messageParam.getTargetFrom()); messageTo.setTo(mailUrls[i]); messageTo.setSubject(messageParam.getHead()); messageTo.setText(message.getBody()); messageList[i] = messageTo; } try { sender.send(messageList); logger.info("简单邮件已发送"); }catch (Exception e){ e.printStackTrace(); logger.error("发送简单邮件时发生异常!", e); e.printStackTrace(); } return message; } } ycl-platform/src/main/resources/application-dev.yml
@@ -20,6 +20,10 @@ snow-flake: datacenterId: 1 machineId: 1 mail: host: smtp.163.com username: maokecheng2015@163.com authorizationCode: JOMMIXUTGAJYOSNA spring: redis: