Commit bdf35574b869309fac8c4b9d4ab3dbd7cc57db76
1 parent
3efd19ba
Revert "feat:防止没有给生产科配置邮箱产生空指针异常"
This reverts commit 3efd19ba.
Showing
8 changed files
with
46 additions
and
106 deletions
pom.xml
@@ -55,12 +55,6 @@ | @@ -55,12 +55,6 @@ | ||
55 | <groupId>com.alibaba</groupId> | 55 | <groupId>com.alibaba</groupId> |
56 | <artifactId>easyexcel</artifactId> | 56 | <artifactId>easyexcel</artifactId> |
57 | <version>${easyexcel.version}</version> | 57 | <version>${easyexcel.version}</version> |
58 | - <exclusions> | ||
59 | - <exclusion> | ||
60 | - <artifactId>asm</artifactId> | ||
61 | - <groupId>org.ow2.asm</groupId> | ||
62 | - </exclusion> | ||
63 | - </exclusions> | ||
64 | </dependency> | 58 | </dependency> |
65 | 59 | ||
66 | <dependency> | 60 | <dependency> |
@@ -92,12 +86,6 @@ | @@ -92,12 +86,6 @@ | ||
92 | <artifactId>spring-boot-starter-test</artifactId> | 86 | <artifactId>spring-boot-starter-test</artifactId> |
93 | <version>${springboot.version}</version> | 87 | <version>${springboot.version}</version> |
94 | <scope>test</scope> | 88 | <scope>test</scope> |
95 | - <exclusions> | ||
96 | - <exclusion> | ||
97 | - <artifactId>asm</artifactId> | ||
98 | - <groupId>org.ow2.asm</groupId> | ||
99 | - </exclusion> | ||
100 | - </exclusions> | ||
101 | </dependency> | 89 | </dependency> |
102 | 90 | ||
103 | <dependency> | 91 | <dependency> |
@@ -277,12 +265,6 @@ | @@ -277,12 +265,6 @@ | ||
277 | <groupId>com.aliyun.oss</groupId> | 265 | <groupId>com.aliyun.oss</groupId> |
278 | <artifactId>aliyun-sdk-oss</artifactId> | 266 | <artifactId>aliyun-sdk-oss</artifactId> |
279 | <version>${aliyun-sdk-oss.version}</version> | 267 | <version>${aliyun-sdk-oss.version}</version> |
280 | - <exclusions> | ||
281 | - <exclusion> | ||
282 | - <artifactId>aliyun-java-sdk-core</artifactId> | ||
283 | - <groupId>com.aliyun</groupId> | ||
284 | - </exclusion> | ||
285 | - </exclusions> | ||
286 | </dependency> | 268 | </dependency> |
287 | 269 | ||
288 | <!--thumbnailator 图片压缩工具--> | 270 | <!--thumbnailator 图片压缩工具--> |
@@ -298,12 +280,6 @@ | @@ -298,12 +280,6 @@ | ||
298 | <groupId>wiki.xsx</groupId> | 280 | <groupId>wiki.xsx</groupId> |
299 | <artifactId>x-easypdf-pdfbox</artifactId> | 281 | <artifactId>x-easypdf-pdfbox</artifactId> |
300 | <version>${x-easypdf-pdfbox.version}</version> | 282 | <version>${x-easypdf-pdfbox.version}</version> |
301 | - <exclusions> | ||
302 | - <exclusion> | ||
303 | - <artifactId>commons-logging</artifactId> | ||
304 | - <groupId>commons-logging</groupId> | ||
305 | - </exclusion> | ||
306 | - </exclusions> | ||
307 | </dependency> | 283 | </dependency> |
308 | 284 | ||
309 | <!--email邮件配置--> | 285 | <!--email邮件配置--> |
src/main/java/com/order/erp/job/OrderOverTimeEventJob.java
@@ -301,7 +301,7 @@ public class OrderOverTimeEventJob { | @@ -301,7 +301,7 @@ public class OrderOverTimeEventJob { | ||
301 | private Boolean filterBigSampleEvent(OrderEventJobVO eventJobVO) { | 301 | private Boolean filterBigSampleEvent(OrderEventJobVO eventJobVO) { |
302 | String orderHodTime = eventJobVO.getBaseInfo().getOrderHodTime(); | 302 | String orderHodTime = eventJobVO.getBaseInfo().getOrderHodTime(); |
303 | String shippmentSampleConfirmResult = eventJobVO.getTrackStageInfo().getShippmentSampleConfirmResult(); | 303 | String shippmentSampleConfirmResult = eventJobVO.getTrackStageInfo().getShippmentSampleConfirmResult(); |
304 | - String shippmentSampleConfirmTime = eventJobVO.getTrackStageInfo().getShippmentSampleConfirmTime(); | 304 | + String shippmentSampleConfirmTime = eventJobVO.getTrackStageInfo().getShippmentSampleSendTime(); |
305 | if (StringUtils.isNotBlank(orderHodTime) && StringUtils.isNotBlank(shippmentSampleConfirmResult) && StringUtils.isNotBlank(shippmentSampleConfirmTime)) { | 305 | if (StringUtils.isNotBlank(orderHodTime) && StringUtils.isNotBlank(shippmentSampleConfirmResult) && StringUtils.isNotBlank(shippmentSampleConfirmTime)) { |
306 | int daysBetween = getDaysBetween(shippmentSampleConfirmResult, shippmentSampleConfirmTime, orderHodTime); | 306 | int daysBetween = getDaysBetween(shippmentSampleConfirmResult, shippmentSampleConfirmTime, orderHodTime); |
307 | if (daysBetween == Constant.SEVEN || daysBetween == Constant.NEGATIVE_ONE) { | 307 | if (daysBetween == Constant.SEVEN || daysBetween == Constant.NEGATIVE_ONE) { |
src/main/java/com/order/erp/mapper/order/OrderBaseInfoMapper.java
@@ -31,8 +31,7 @@ public interface OrderBaseInfoMapper extends BaseMapper<OrderBaseInfoDO> { | @@ -31,8 +31,7 @@ public interface OrderBaseInfoMapper extends BaseMapper<OrderBaseInfoDO> { | ||
31 | 31 | ||
32 | List<QueryProjectNoAndInnerNoDto> queryProjectNoAndInnerNoDto(@Param("flag") Boolean flag, | 32 | List<QueryProjectNoAndInnerNoDto> queryProjectNoAndInnerNoDto(@Param("flag") Boolean flag, |
33 | @Param("dto") QueryProjectNoAndInnerNoDto dto); | 33 | @Param("dto") QueryProjectNoAndInnerNoDto dto); |
34 | -// @Select("SELECT * FROM order_base_info WHERE order_status!=50 and enable_flag=10 and DATE_SUB(CURDATE(), INTERVAL 3 MONTH) <= date(create_time);") | ||
35 | -@Select("SELECT * FROM order_base_info WHERE enable_flag=10 and DATE_SUB(CURDATE(), INTERVAL 3 MONTH) <= date(create_time);") | 34 | + @Select("SELECT * FROM order_base_info WHERE order_status!=50 and enable_flag=10 and DATE_SUB(CURDATE(), INTERVAL 3 MONTH) <= date(create_time);") |
36 | List<OrderBaseInfoDO> getEventList(); | 35 | List<OrderBaseInfoDO> getEventList(); |
37 | } | 36 | } |
38 | 37 |
src/main/java/com/order/erp/service/order/impl/OrderBaseInfoServiceImpl.java
@@ -1801,23 +1801,40 @@ public class OrderBaseInfoServiceImpl extends ServiceImpl<OrderBaseInfoMapper, O | @@ -1801,23 +1801,40 @@ public class OrderBaseInfoServiceImpl extends ServiceImpl<OrderBaseInfoMapper, O | ||
1801 | AdminUserDO ProductionDepartmentUserDO = userService.getOne(new LambdaQueryWrapper<AdminUserDO>() | 1801 | AdminUserDO ProductionDepartmentUserDO = userService.getOne(new LambdaQueryWrapper<AdminUserDO>() |
1802 | .eq(BaseDO::getEnableFlag, Constant.ENABLE_TEN) | 1802 | .eq(BaseDO::getEnableFlag, Constant.ENABLE_TEN) |
1803 | .eq(AdminUserDO::getUserName, orderBaseInfoDO.getProductionDepartment())); | 1803 | .eq(AdminUserDO::getUserName, orderBaseInfoDO.getProductionDepartment())); |
1804 | - if( Objects.nonNull(ProductionDepartmentUserDO) && StringUtils.isNotBlank(ProductionDepartmentUserDO.getEmail())){ | ||
1805 | - sendOrderInspectionStage(updateVO,inspectionStageInfo); | 1804 | + OrderEventJobVO orderEventJobVO = new OrderEventJobVO(); |
1805 | + orderEventJobVO.setInspectionStageInfo(inspectionStageInfo); | ||
1806 | + OrderBaseInfoVO orderBaseInfoVo = BeanUtil.copyProperties(orderBaseInfoDo, OrderBaseInfoVO.class); | ||
1807 | + orderEventJobVO.setBaseInfo(orderBaseInfoVo); | ||
1808 | + List<String> emails = Arrays.asList(ProductionDepartmentUserDO.getEmail().split( "[,,]+")) | ||
1809 | + .stream().map(String::trim) | ||
1810 | + .collect(Collectors.toList()); | ||
1811 | + //一旦修改完质检信息就自动发送邮件对应的生产科。多次编辑保存多次发送。 | ||
1812 | + if (StringUtils.isNotBlank(inspectionStageInfo.getEndCheckApplyTime())) { | ||
1813 | + String EndCheckApplyTime= inspectionStageInfo.getEndCheckApplyTime().substring(0, 10); | ||
1814 | + String ProductionDepartmentConsignTime =orderBaseInfoDo.getProductionDepartmentConsignTime().substring(0, 10); | ||
1815 | + String EndCheckApply = DateUtils.format(DateUtils.parseDate(EndCheckApplyTime, DATE), DATE); | ||
1816 | + String ProductionDepartmentConsign = DateUtils.format(DateUtils.parseDate(ProductionDepartmentConsignTime,DATE), DATE); | ||
1817 | + orderEventJobVO.getInspectionStageInfo().setEndCheckApplyTime(EndCheckApply); | ||
1818 | + orderEventJobVO.getBaseInfo().setProductionDepartmentConsignTime(ProductionDepartmentConsign); | ||
1819 | + //尾期验货报告。 | ||
1820 | + emailSendUtils.sendEmail(EmailTemplateEnum.END_CHECK_REPORT_TEMPLATE, emails, orderEventJobVO); | ||
1821 | + }else if(StringUtils.isNotBlank(inspectionStageInfo.getMidCheckApplyTime())){ | ||
1822 | + String MidCheckApplyTime= inspectionStageInfo.getMidCheckApplyTime().substring(0, 10); | ||
1823 | + String ProductionDepartmentConsignTime =orderBaseInfoDo.getProductionDepartmentConsignTime().substring(0, 10); | ||
1824 | + String MidCheckApply = DateUtils.format(DateUtils.parseDate(MidCheckApplyTime, DATE), DATE); | ||
1825 | + String ProductionDepartmentConsign = DateUtils.format(DateUtils.parseDate(ProductionDepartmentConsignTime,DATE), DATE); | ||
1826 | + orderEventJobVO.getInspectionStageInfo().setMidCheckApplyTime(MidCheckApply); | ||
1827 | + orderEventJobVO.getBaseInfo().setProductionDepartmentConsignTime(ProductionDepartmentConsign); | ||
1828 | + //中期验货报告。 | ||
1829 | + emailSendUtils.sendEmail(EmailTemplateEnum.MID_CHECK_REPORT_TEMPLATE, emails, orderEventJobVO); | ||
1806 | } | 1830 | } |
1831 | + | ||
1807 | } else { | 1832 | } else { |
1808 | inspectionStageDO = new OrderInspectionStageDO(); | 1833 | inspectionStageDO = new OrderInspectionStageDO(); |
1809 | BeanUtils.copyProperties(updateVO.getInspectionStageInfo(), inspectionStageDO); | 1834 | BeanUtils.copyProperties(updateVO.getInspectionStageInfo(), inspectionStageDO); |
1810 | inspectionStageDO.setOrderId(updateVO.getOrderId()); | 1835 | inspectionStageDO.setOrderId(updateVO.getOrderId()); |
1811 | inspectionStageDO.setOrderStatus(OrderStatusEnum.INSPECT_ING.getStatus()); | 1836 | inspectionStageDO.setOrderStatus(OrderStatusEnum.INSPECT_ING.getStatus()); |
1812 | inspectionStageService.save(inspectionStageDO); | 1837 | inspectionStageService.save(inspectionStageDO); |
1813 | - OrderBaseInfoDO orderBaseInfoDO = baseInfoService.getById(updateVO.getOrderId()); | ||
1814 | - AdminUserDO ProductionDepartmentUserDO = userService.getOne(new LambdaQueryWrapper<AdminUserDO>() | ||
1815 | - .eq(BaseDO::getEnableFlag, Constant.ENABLE_TEN) | ||
1816 | - .eq(AdminUserDO::getUserName, orderBaseInfoDO.getProductionDepartment())); | ||
1817 | - if( Objects.nonNull(ProductionDepartmentUserDO) && StringUtils.isNotBlank(ProductionDepartmentUserDO.getEmail())){ | ||
1818 | - sendOrderInspectionStage(updateVO,inspectionStageInfo); | ||
1819 | - } | ||
1820 | - | ||
1821 | } | 1838 | } |
1822 | orderBaseInfoDo.setOrderStatus(OrderStatusEnum.INSPECT_ING.getStatus()); | 1839 | orderBaseInfoDo.setOrderStatus(OrderStatusEnum.INSPECT_ING.getStatus()); |
1823 | optLogDO = buildOrderOptLogDo(updateVO.getOrderId(), userId, OrderOptTypeEnum.ORDER_INSPECT_EDIT_APPLY.getDesc(), JSONObject.toJSONString(updateVO)); | 1840 | optLogDO = buildOrderOptLogDo(updateVO.getOrderId(), userId, OrderOptTypeEnum.ORDER_INSPECT_EDIT_APPLY.getDesc(), JSONObject.toJSONString(updateVO)); |
@@ -2138,36 +2155,4 @@ public class OrderBaseInfoServiceImpl extends ServiceImpl<OrderBaseInfoMapper, O | @@ -2138,36 +2155,4 @@ public class OrderBaseInfoServiceImpl extends ServiceImpl<OrderBaseInfoMapper, O | ||
2138 | List<OrderBaseInfoDO> orderBaseInfoDOList = baseMapper.getEventList(); | 2155 | List<OrderBaseInfoDO> orderBaseInfoDOList = baseMapper.getEventList(); |
2139 | return orderBaseInfoDOList; | 2156 | return orderBaseInfoDOList; |
2140 | } | 2157 | } |
2141 | - | ||
2142 | - private void sendOrderInspectionStage(OrderUpdateVO updateVO, OrderInspectionStageVO inspectionStageInfo){ | ||
2143 | - OrderBaseInfoDO orderBaseInfoDO = baseInfoService.getById(updateVO.getOrderId()); | ||
2144 | - AdminUserDO ProductionDepartmentUserDO = userService.getOne(new LambdaQueryWrapper<AdminUserDO>() | ||
2145 | - .eq(BaseDO::getEnableFlag, Constant.ENABLE_TEN) | ||
2146 | - .eq(AdminUserDO::getUserName, orderBaseInfoDO.getProductionDepartment())); | ||
2147 | - OrderEventJobVO orderEventJobVO = new OrderEventJobVO(); | ||
2148 | - orderEventJobVO.setInspectionStageInfo(inspectionStageInfo); | ||
2149 | - OrderBaseInfoVO orderBaseInfoVo = BeanUtil.copyProperties(orderBaseInfoDO, OrderBaseInfoVO.class); | ||
2150 | - orderEventJobVO.setBaseInfo(orderBaseInfoVo); | ||
2151 | - List<String> emails = Arrays.asList(ProductionDepartmentUserDO.getEmail().split( "[,,]+")) | ||
2152 | - .stream().map(String::trim) | ||
2153 | - .collect(Collectors.toList()); | ||
2154 | - //一旦修改完质检信息就自动发送邮件对应的生产科。多次编辑保存多次发送。 | ||
2155 | - if (StringUtils.isNotBlank(inspectionStageInfo.getEndCheckApplyTime())) { | ||
2156 | - String EndCheckApplyTime= inspectionStageInfo.getEndCheckApplyTime().substring(0, 10); | ||
2157 | - String ProductionDepartmentConsignTime =orderBaseInfoDO.getProductionDepartmentConsignTime().substring(0, 10); | ||
2158 | - orderEventJobVO.getInspectionStageInfo().setEndCheckApplyTime(EndCheckApplyTime); | ||
2159 | - orderEventJobVO.getBaseInfo().setProductionDepartmentConsignTime(ProductionDepartmentConsignTime); | ||
2160 | - //尾期验货报告。 | ||
2161 | - emailSendUtils.sendEmail(EmailTemplateEnum.END_CHECK_REPORT_TEMPLATE, emails, orderEventJobVO); | ||
2162 | - }else if(StringUtils.isNotBlank(inspectionStageInfo.getMidCheckApplyTime())){ | ||
2163 | - String MidCheckApplyTime= inspectionStageInfo.getMidCheckApplyTime().substring(0, 10); | ||
2164 | - String ProductionDepartmentConsignTime =orderBaseInfoDO.getProductionDepartmentConsignTime().substring(0, 10); | ||
2165 | - String MidCheckApply = DateUtils.format(DateUtils.parseDate(MidCheckApplyTime, DATE), DATE); | ||
2166 | - String ProductionDepartmentConsign = DateUtils.format(DateUtils.parseDate(ProductionDepartmentConsignTime,DATE), DATE); | ||
2167 | - orderEventJobVO.getInspectionStageInfo().setMidCheckApplyTime(MidCheckApply); | ||
2168 | - orderEventJobVO.getBaseInfo().setProductionDepartmentConsignTime(ProductionDepartmentConsign); | ||
2169 | - //中期验货报告。 | ||
2170 | - emailSendUtils.sendEmail(EmailTemplateEnum.MID_CHECK_REPORT_TEMPLATE, emails, orderEventJobVO); | ||
2171 | - } | ||
2172 | - } | ||
2173 | } | 2158 | } |
src/main/resources/application-local.yml
@@ -57,13 +57,13 @@ spring: | @@ -57,13 +57,13 @@ spring: | ||
57 | testWhileIdle: true | 57 | testWhileIdle: true |
58 | testOnBorrow: true | 58 | testOnBorrow: true |
59 | testOnReturn: true | 59 | testOnReturn: true |
60 | - password: root | 60 | + password: canrd@2024 |
61 | time-between-eviction-runs-millis: 1000 | 61 | time-between-eviction-runs-millis: 1000 |
62 | - url: jdbc:mysql://localhost:3306/order-erp1?useUnicode=true&characterEncoding=UTF-8&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=Asia/Shanghai&useSSL=false&autoReconnect=true&failOverReadOnly=false&maxReconnects=10&allowMultiQueries=true&useAffectedRows=true&autoReconnectForPools=true | 62 | + url: jdbc:mysql://39.108.227.113:3307/order-erp1?useUnicode=true&characterEncoding=UTF-8&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=Asia/Shanghai&useSSL=false&autoReconnect=true&failOverReadOnly=false&maxReconnects=10&allowMultiQueries=true&useAffectedRows=true&autoReconnectForPools=true |
63 | username: root | 63 | username: root |
64 | redis: | 64 | redis: |
65 | database: 0 | 65 | database: 0 |
66 | - host: localhost | 66 | + host: 39.108.227.113 |
67 | lettuce: | 67 | lettuce: |
68 | pool: | 68 | pool: |
69 | max-active: 2000 | 69 | max-active: 2000 |
@@ -76,33 +76,21 @@ spring: | @@ -76,33 +76,21 @@ spring: | ||
76 | timeout: 2000 | 76 | timeout: 2000 |
77 | mail: | 77 | mail: |
78 | # 配置 SMTP 服务器地址 | 78 | # 配置 SMTP 服务器地址 |
79 | -# host: smtp.163.com | ||
80 | host: smtp.mxhichina.com | 79 | host: smtp.mxhichina.com |
81 | - # 发送者邮箱,已开通POP3/SMTP服务的邮箱,也就是你自己的 | ||
82 | - username: system@canrd.com | ||
83 | - # 配置密码,注意不是真正的密码,而是刚刚申请到的授权码 | ||
84 | - password: Kelude2015 | ||
85 | - # 邮件接收者 | ||
86 | - mailRecipient: #邮件接收者邮箱 | ||
87 | - # 端口号465或587(QQ邮箱发送邮件仅支持587端口协议) | ||
88 | - port: 465 | ||
89 | - | ||
90 | # 发送者邮箱,已开通POP3/SMTP服务的邮箱,也就是你自己的 | 80 | # 发送者邮箱,已开通POP3/SMTP服务的邮箱,也就是你自己的 |
91 | -# username: chenhang4442024@163.com | 81 | + username: system@canrd.com |
92 | # 配置密码,注意不是真正的密码,而是刚刚申请到的授权码 | 82 | # 配置密码,注意不是真正的密码,而是刚刚申请到的授权码 |
93 | -# password: ACHWYJSXRITHTMGA | 83 | + password: Kelude2015 |
94 | # 邮件接收者 | 84 | # 邮件接收者 |
95 | -# mailRecipient: #邮件接收者邮箱 | 85 | + mailRecipient: #邮件接收者邮箱 |
96 | # 端口号465或587(QQ邮箱发送邮件仅支持587端口协议) | 86 | # 端口号465或587(QQ邮箱发送邮件仅支持587端口协议) |
97 | -# port: 25 | 87 | + port: 587 |
98 | # 默认的邮件编码为UTF-8 | 88 | # 默认的邮件编码为UTF-8 |
99 | default-encoding: UTF-8 | 89 | default-encoding: UTF-8 |
100 | # 配置SSL 加密工厂 | 90 | # 配置SSL 加密工厂 |
101 | properties: | 91 | properties: |
102 | mail: | 92 | mail: |
103 | smtp: | 93 | smtp: |
104 | - ssl: | ||
105 | - enabled: true | ||
106 | socketFactoryClass: javax.net.ssl.SSLSocketFactory | 94 | socketFactoryClass: javax.net.ssl.SSLSocketFactory |
107 | #表示开启 DEBUG 模式,这样,邮件发送过程的日志会在控制台打印出来,方便排查错误 | 95 | #表示开启 DEBUG 模式,这样,邮件发送过程的日志会在控制台打印出来,方便排查错误 |
108 | debug: true | 96 | debug: true |
src/main/resources/application-pre-prod.yml
@@ -76,19 +76,15 @@ spring: | @@ -76,19 +76,15 @@ spring: | ||
76 | timeout: 2000 | 76 | timeout: 2000 |
77 | mail: | 77 | mail: |
78 | # 配置 SMTP 服务器地址 | 78 | # 配置 SMTP 服务器地址 |
79 | -# host: xxx | ||
80 | - host: smtp.163.com | 79 | + host: xxx |
81 | # 发送者邮箱,已开通POP3/SMTP服务的邮箱,也就是你自己的 | 80 | # 发送者邮箱,已开通POP3/SMTP服务的邮箱,也就是你自己的 |
82 | -# username: xxxx | ||
83 | - username: chenhang4442024@163.com | 81 | + username: xxxx |
84 | # 配置密码,注意不是真正的密码,而是刚刚申请到的授权码 | 82 | # 配置密码,注意不是真正的密码,而是刚刚申请到的授权码 |
85 | -# password: xxx | ||
86 | - password: ACHWYJSXRITHTMGA | 83 | + password: xxx |
87 | # 邮件接收者 | 84 | # 邮件接收者 |
88 | mailRecipient: #邮件接收者邮箱 | 85 | mailRecipient: #邮件接收者邮箱 |
89 | # 端口号465或587(QQ邮箱发送邮件仅支持587端口协议) | 86 | # 端口号465或587(QQ邮箱发送邮件仅支持587端口协议) |
90 | -# port: 587 | ||
91 | - port: 25 | 87 | + port: 587 |
92 | # 默认的邮件编码为UTF-8 | 88 | # 默认的邮件编码为UTF-8 |
93 | default-encoding: UTF-8 | 89 | default-encoding: UTF-8 |
94 | # 配置SSL 加密工厂 | 90 | # 配置SSL 加密工厂 |
src/main/resources/application-test.yml
@@ -76,29 +76,25 @@ spring: | @@ -76,29 +76,25 @@ spring: | ||
76 | timeout: 2000 | 76 | timeout: 2000 |
77 | mail: | 77 | mail: |
78 | # 配置 SMTP 服务器地址 | 78 | # 配置 SMTP 服务器地址 |
79 | -# host: smtp.mxhichina.com | ||
80 | - host: smtp.163.com | 79 | + host: smtp.mxhichina.com |
81 | # 发送者邮箱,已开通POP3/SMTP服务的邮箱,也就是你自己的 | 80 | # 发送者邮箱,已开通POP3/SMTP服务的邮箱,也就是你自己的 |
82 | - username: chenhang4442024@163.com | 81 | + username: system@canrd.com |
83 | # 配置密码,注意不是真正的密码,而是刚刚申请到的授权码 | 82 | # 配置密码,注意不是真正的密码,而是刚刚申请到的授权码 |
84 | - password: ACHWYJSXRITHTMGA | 83 | + password: Kelude2015 |
85 | # 邮件接收者 | 84 | # 邮件接收者 |
86 | mailRecipient: #邮件接收者邮箱 | 85 | mailRecipient: #邮件接收者邮箱 |
87 | # 端口号465或587(QQ邮箱发送邮件仅支持587端口协议) | 86 | # 端口号465或587(QQ邮箱发送邮件仅支持587端口协议) |
88 | - port: 465 | 87 | + port: 587 |
89 | # 默认的邮件编码为UTF-8 | 88 | # 默认的邮件编码为UTF-8 |
90 | default-encoding: UTF-8 | 89 | default-encoding: UTF-8 |
91 | # 配置SSL 加密工厂 | 90 | # 配置SSL 加密工厂 |
92 | properties: | 91 | properties: |
93 | mail: | 92 | mail: |
94 | smtp: | 93 | smtp: |
95 | - ssl: | ||
96 | - enable: true | ||
97 | socketFactoryClass: javax.net.ssl.SSLSocketFactory | 94 | socketFactoryClass: javax.net.ssl.SSLSocketFactory |
98 | #表示开启 DEBUG 模式,这样,邮件发送过程的日志会在控制台打印出来,方便排查错误 | 95 | #表示开启 DEBUG 模式,这样,邮件发送过程的日志会在控制台打印出来,方便排查错误 |
99 | debug: true | 96 | debug: true |
100 | 97 | ||
101 | - | ||
102 | freemarker: | 98 | freemarker: |
103 | template-loader-path: classpath:/template/ | 99 | template-loader-path: classpath:/template/ |
104 | suffix: .flt | 100 | suffix: .flt |
src/main/resources/application.yml