org.springframework
spring-web
diff --git a/zlt-commons/zlt-oss-spring-boot-starter/src/main/java/com/central/oss/properties/ALiOssProperties.java b/zlt-commons/zlt-oss-spring-boot-starter/src/main/java/com/central/oss/properties/ALiOssProperties.java
new file mode 100644
index 00000000..b2011bc1
--- /dev/null
+++ b/zlt-commons/zlt-oss-spring-boot-starter/src/main/java/com/central/oss/properties/ALiOssProperties.java
@@ -0,0 +1,36 @@
+package com.central.oss.properties;
+
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * ali oss协议配置
+ *
+ * @author 杨彬鑫
+ * @date 2021/12/13
+ *
+ */
+@Setter
+@Getter
+public class ALiOssProperties {
+ /**
+ * 密钥key
+ */
+ private String accessKey;
+ /**
+ * 密钥密码
+ */
+ private String accessKeySecret;
+ /**
+ * 端点
+ */
+ private String endpoint;
+ /**
+ * bucket名称
+ */
+ private String bucketName;
+ /**
+ * bucket域名
+ */
+ private String bucketHost;
+}
diff --git a/zlt-commons/zlt-oss-spring-boot-starter/src/main/java/com/central/oss/properties/FileServerProperties.java b/zlt-commons/zlt-oss-spring-boot-starter/src/main/java/com/central/oss/properties/FileServerProperties.java
index ac5a786d..e36b543c 100644
--- a/zlt-commons/zlt-oss-spring-boot-starter/src/main/java/com/central/oss/properties/FileServerProperties.java
+++ b/zlt-commons/zlt-oss-spring-boot-starter/src/main/java/com/central/oss/properties/FileServerProperties.java
@@ -18,6 +18,7 @@ public class FileServerProperties {
public static final String PREFIX = "zlt.file-server";
public static final String TYPE_FDFS = "fastdfs";
public static final String TYPE_S3 = "s3";
+ public static final String TYPE_ALI_OSS = "alioss";
/**
* 为以下2个值,指定不同的自动化配置
@@ -35,4 +36,9 @@ public class FileServerProperties {
* fastDFS配置
*/
FdfsProperties fdfs = new FdfsProperties();
+
+ /**
+ * alibaba oss配置
+ */
+ ALiOssProperties aliOss = new ALiOssProperties();
}
diff --git a/zlt-commons/zlt-oss-spring-boot-starter/src/main/java/com/central/oss/template/AliOssTemplate.java b/zlt-commons/zlt-oss-spring-boot-starter/src/main/java/com/central/oss/template/AliOssTemplate.java
new file mode 100644
index 00000000..bdf7547c
--- /dev/null
+++ b/zlt-commons/zlt-oss-spring-boot-starter/src/main/java/com/central/oss/template/AliOssTemplate.java
@@ -0,0 +1,80 @@
+package com.central.oss.template;
+
+import com.aliyun.oss.OSSClient;
+import com.aliyun.oss.common.auth.DefaultCredentialProvider;
+import com.central.oss.model.ObjectInfo;
+import com.central.oss.properties.ALiOssProperties;
+import com.central.oss.properties.FileServerProperties;
+import lombok.SneakyThrows;
+import org.springframework.beans.factory.InitializingBean;
+import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
+import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
+import org.springframework.util.StringUtils;
+import org.springframework.web.multipart.MultipartFile;
+
+import javax.annotation.Resource;
+import java.io.IOException;
+import java.util.UUID;
+
+/**
+ * 阿里oss,文件上传
+ *
+ * @author 杨彬鑫
+ */
+@ConditionalOnClass(OSSClient.class)
+@ConditionalOnProperty(prefix = FileServerProperties.PREFIX, name = "type", havingValue = FileServerProperties.TYPE_ALI_OSS)
+public class AliOssTemplate implements InitializingBean {
+ private static final String FILE_SPLIT = ".";
+ private static final String PATH_SPLIT = "/";
+
+ @Resource
+ private ALiOssProperties fileProperties;
+
+ private OSSClient ossClient;
+
+ @Override
+ public void afterPropertiesSet(){
+ ossClient = new OSSClient(fileProperties.getEndpoint()
+ , new DefaultCredentialProvider(fileProperties.getAccessKey(), fileProperties.getAccessKeySecret())
+ , null);
+ }
+
+ /**
+ * 上传文件
+ * @param file 文件
+ * @param folder 子目录
+ * @return
+ * @throws IOException
+ */
+ @SneakyThrows
+ public ObjectInfo upload(MultipartFile file, String folder) {
+ // 文件名
+ String fileName = file.getOriginalFilename();
+ if (fileName.contains(FILE_SPLIT)) {
+ throw new IllegalArgumentException("缺少后缀名");
+ }
+
+ //获取文件的后缀名 .jpg
+ String newFileName = UUID.randomUUID().toString();
+ String suffix = fileName.substring(fileName.lastIndexOf("."));
+ String filePath = folder + "/" + newFileName + suffix;
+
+ // 桶名称,地址
+ ossClient.putObject(fileProperties.getBucketName(), filePath, file.getInputStream());
+
+ ObjectInfo info = new ObjectInfo();
+ info.setObjectPath(fileProperties.getBucketName() + PATH_SPLIT + filePath);
+ info.setObjectUrl(fileProperties.getBucketHost() + PATH_SPLIT + info.getObjectPath());
+ return info;
+ }
+
+ /**
+ * 删除对象
+ * @param objectPath 对象路径
+ */
+ public void delete(String objectPath) {
+ if (!StringUtils.isEmpty(objectPath)) {
+ ossClient.deleteObject(fileProperties.getBucketName(), objectPath);
+ }
+ }
+}
diff --git a/zlt-config/src/main/resources/application-dev.properties b/zlt-config/src/main/resources/application-dev.properties
index d6d323b0..c11026f7 100644
--- a/zlt-config/src/main/resources/application-dev.properties
+++ b/zlt-config/src/main/resources/application-dev.properties
@@ -15,7 +15,7 @@ zlt.elasticsearch.username=elasticsearch
zlt.elasticsearch.password=elasticsearch
##### sentinel配置
-zlt.sentinel.dashboard=192.168.28.130:6999
+zlt.sentinel.dashboard=localhost:6999
##### fastDFS配置
zlt.fdfs.web-url=192.168.28.130
@@ -27,6 +27,13 @@ zlt.s3.accessKeySecret=minioadmin
zlt.s3.endpoint=http://192.168.28.130:9000
zlt.s3.bucketName=test
+##### 阿里OSS配置
+zlt.alioss.accessKey=LTAI5tH7YyqGEBMebYtHuvJE
+zlt.alioss.accessKeySecret=WWcVwDpDcyrUVzcWhO7NCJupX1fC84
+zlt.alioss.endpoint=https://oss-cn-shenzhen.aliyuncs.com
+zlt.alioss.bucketName=ioath
+zlt.alioss.bucketHost=https://ioath.oss-cn-shenzhen.aliyuncs.com
+
##### 日志链路追踪
zlt.trace.enable=true
diff --git a/zlt-config/src/main/resources/application-prod.properties b/zlt-config/src/main/resources/application-prod.properties
index 5fe2ca3d..b48cf1c5 100644
--- a/zlt-config/src/main/resources/application-prod.properties
+++ b/zlt-config/src/main/resources/application-prod.properties
@@ -27,5 +27,12 @@ zlt.s3.accessKeySecret=minioadmin
zlt.s3.endpoint=http://192.168.28.130:9000
zlt.s3.bucketName=test
+##### 阿里OSS配置
+zlt.alioss.accessKey=LTAI5tH7YyqGEBMebYtHuvJE
+zlt.alioss.accessKeySecret=WWcVwDpDcyrUVzcWhO7NCJupX1fC84
+zlt.alioss.endpoint=https://oss-cn-shenzhen.aliyuncs.com
+zlt.alioss.bucketName=ioath
+zlt.alioss.bucketHost=https://ioath.oss-cn-shenzhen.aliyuncs.com
+
##### 日志链路追踪
zlt.trace.enable=true
\ No newline at end of file
diff --git a/zlt-config/src/main/resources/application-test.properties b/zlt-config/src/main/resources/application-test.properties
index ddf04395..8ae2dd92 100644
--- a/zlt-config/src/main/resources/application-test.properties
+++ b/zlt-config/src/main/resources/application-test.properties
@@ -27,5 +27,12 @@ zlt.s3.accessKeySecret=minioadmin
zlt.s3.endpoint=http://192.168.28.130:9000
zlt.s3.bucketName=test
+##### 阿里OSS配置
+zlt.alioss.accessKey=LTAI5tH7YyqGEBMebYtHuvJE
+zlt.alioss.accessKeySecret=WWcVwDpDcyrUVzcWhO7NCJupX1fC84
+zlt.alioss.endpoint=https://oss-cn-shenzhen.aliyuncs.com
+zlt.alioss.bucketName=ioath
+zlt.alioss.bucketHost=https://ioath.oss-cn-shenzhen.aliyuncs.com
+
##### 日志链路追踪
zlt.trace.enable=true
\ No newline at end of file
--
Gitee
From 27457d4c3cd3d8f7f0a472d8ceb0adef6b33c706 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E6=9D=A8=E5=BD=AC=E9=91=AB?= <18235529318@163.com>
Date: Tue, 14 Dec 2021 00:50:48 +0800
Subject: [PATCH 3/5] =?UTF-8?q?=E8=A7=A3=E5=86=B3oss=E4=B8=8D=E8=83=BD?=
=?UTF-8?q?=E4=BD=BF=E7=94=A8=E7=9A=84=E9=97=AE=E9=A2=98?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../file/service/impl/AliOssService.java | 6 +--
.../zlt-oss-spring-boot-starter/pom.xml | 1 -
.../central/oss/config/OssAutoConfigure.java | 3 +-
.../central/oss/template/AliOssTemplate.java | 46 +++++++++----------
4 files changed, 24 insertions(+), 32 deletions(-)
diff --git a/zlt-business/file-center/src/main/java/com/central/file/service/impl/AliOssService.java b/zlt-business/file-center/src/main/java/com/central/file/service/impl/AliOssService.java
index 8fd39026..bc134799 100644
--- a/zlt-business/file-center/src/main/java/com/central/file/service/impl/AliOssService.java
+++ b/zlt-business/file-center/src/main/java/com/central/file/service/impl/AliOssService.java
@@ -3,15 +3,11 @@ package com.central.file.service.impl;
import com.central.oss.model.ObjectInfo;
import com.central.oss.properties.FileServerProperties;
import com.central.oss.template.AliOssTemplate;
-import com.central.oss.template.FdfsTemplate;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
import org.springframework.stereotype.Service;
import org.springframework.web.multipart.MultipartFile;
import javax.annotation.Resource;
-import java.io.IOException;
import java.io.OutputStream;
/**
@@ -22,7 +18,7 @@ import java.io.OutputStream;
@Service
@ConditionalOnProperty(prefix = FileServerProperties.PREFIX, name = "type", havingValue = FileServerProperties.TYPE_ALI_OSS)
public class AliOssService extends AbstractIFileService {
- @Autowired
+ @Resource
private AliOssTemplate aliOssTemplate;
@Override
diff --git a/zlt-commons/zlt-oss-spring-boot-starter/pom.xml b/zlt-commons/zlt-oss-spring-boot-starter/pom.xml
index 9d38f616..f166ae9b 100644
--- a/zlt-commons/zlt-oss-spring-boot-starter/pom.xml
+++ b/zlt-commons/zlt-oss-spring-boot-starter/pom.xml
@@ -28,7 +28,6 @@
com.aliyun.oss
aliyun-sdk-oss
- true
org.springframework
diff --git a/zlt-commons/zlt-oss-spring-boot-starter/src/main/java/com/central/oss/config/OssAutoConfigure.java b/zlt-commons/zlt-oss-spring-boot-starter/src/main/java/com/central/oss/config/OssAutoConfigure.java
index 725bc196..fdfdcaca 100644
--- a/zlt-commons/zlt-oss-spring-boot-starter/src/main/java/com/central/oss/config/OssAutoConfigure.java
+++ b/zlt-commons/zlt-oss-spring-boot-starter/src/main/java/com/central/oss/config/OssAutoConfigure.java
@@ -1,6 +1,7 @@
package com.central.oss.config;
import com.central.oss.properties.FileServerProperties;
+import com.central.oss.template.AliOssTemplate;
import com.central.oss.template.FdfsTemplate;
import com.central.oss.template.S3Template;
import org.springframework.boot.context.properties.EnableConfigurationProperties;
@@ -14,7 +15,7 @@ import org.springframework.context.annotation.Import;
* Github: https://github.com/zlt2000
*/
@EnableConfigurationProperties(FileServerProperties.class)
-@Import({FdfsTemplate.class, S3Template.class})
+@Import({FdfsTemplate.class, S3Template.class, AliOssTemplate.class})
public class OssAutoConfigure {
}
diff --git a/zlt-commons/zlt-oss-spring-boot-starter/src/main/java/com/central/oss/template/AliOssTemplate.java b/zlt-commons/zlt-oss-spring-boot-starter/src/main/java/com/central/oss/template/AliOssTemplate.java
index bdf7547c..e4a0774b 100644
--- a/zlt-commons/zlt-oss-spring-boot-starter/src/main/java/com/central/oss/template/AliOssTemplate.java
+++ b/zlt-commons/zlt-oss-spring-boot-starter/src/main/java/com/central/oss/template/AliOssTemplate.java
@@ -1,12 +1,12 @@
package com.central.oss.template;
-import com.aliyun.oss.OSSClient;
-import com.aliyun.oss.common.auth.DefaultCredentialProvider;
+import com.aliyun.oss.OSS;
+import com.aliyun.oss.OSSClientBuilder;
+import com.aliyun.oss.common.comm.ResponseMessage;
+import com.aliyun.oss.model.PutObjectResult;
import com.central.oss.model.ObjectInfo;
-import com.central.oss.properties.ALiOssProperties;
import com.central.oss.properties.FileServerProperties;
import lombok.SneakyThrows;
-import org.springframework.beans.factory.InitializingBean;
import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
import org.springframework.util.StringUtils;
@@ -21,27 +21,18 @@ import java.util.UUID;
*
* @author 杨彬鑫
*/
-@ConditionalOnClass(OSSClient.class)
+@ConditionalOnClass(OSS.class)
@ConditionalOnProperty(prefix = FileServerProperties.PREFIX, name = "type", havingValue = FileServerProperties.TYPE_ALI_OSS)
-public class AliOssTemplate implements InitializingBean {
- private static final String FILE_SPLIT = ".";
+public class AliOssTemplate {
private static final String PATH_SPLIT = "/";
@Resource
- private ALiOssProperties fileProperties;
-
- private OSSClient ossClient;
-
- @Override
- public void afterPropertiesSet(){
- ossClient = new OSSClient(fileProperties.getEndpoint()
- , new DefaultCredentialProvider(fileProperties.getAccessKey(), fileProperties.getAccessKeySecret())
- , null);
- }
+ private FileServerProperties fileProperties;
/**
* 上传文件
- * @param file 文件
+ *
+ * @param file 文件
* @param folder 子目录
* @return
* @throws IOException
@@ -50,31 +41,36 @@ public class AliOssTemplate implements InitializingBean {
public ObjectInfo upload(MultipartFile file, String folder) {
// 文件名
String fileName = file.getOriginalFilename();
- if (fileName.contains(FILE_SPLIT)) {
- throw new IllegalArgumentException("缺少后缀名");
- }
//获取文件的后缀名 .jpg
String newFileName = UUID.randomUUID().toString();
String suffix = fileName.substring(fileName.lastIndexOf("."));
String filePath = folder + "/" + newFileName + suffix;
+ OSS ossClient = new OSSClientBuilder().build(fileProperties.getAliOss().getEndpoint(), fileProperties.getAliOss().getAccessKey(), fileProperties.getAliOss().getAccessKeySecret());
+
// 桶名称,地址
- ossClient.putObject(fileProperties.getBucketName(), filePath, file.getInputStream());
+ PutObjectResult putObjectResult = ossClient.putObject(fileProperties.getAliOss().getBucketName(), filePath, file.getInputStream());
+ ResponseMessage response = putObjectResult.getResponse();
+
+ ossClient.shutdown();
ObjectInfo info = new ObjectInfo();
- info.setObjectPath(fileProperties.getBucketName() + PATH_SPLIT + filePath);
- info.setObjectUrl(fileProperties.getBucketHost() + PATH_SPLIT + info.getObjectPath());
+ info.setObjectPath(filePath);
+ info.setObjectUrl(fileProperties.getAliOss().getBucketHost() + PATH_SPLIT + info.getObjectPath());
return info;
}
/**
* 删除对象
+ *
* @param objectPath 对象路径
*/
public void delete(String objectPath) {
if (!StringUtils.isEmpty(objectPath)) {
- ossClient.deleteObject(fileProperties.getBucketName(), objectPath);
+ OSS ossClient = new OSSClientBuilder().build(fileProperties.getAliOss().getEndpoint(), fileProperties.getAliOss().getAccessKey(), fileProperties.getAliOss().getAccessKeySecret());
+
+ ossClient.deleteObject(fileProperties.getAliOss().getBucketName(), objectPath);
}
}
}
--
Gitee
From bceaa492107c0e8e02a4560885a82be6947f47ac Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E6=9D=A8=E5=BD=AC=E9=91=AB?= <18235529318@163.com>
Date: Wed, 15 Dec 2021 15:14:38 +0800
Subject: [PATCH 4/5] =?UTF-8?q?=E6=96=B0=E5=A2=9Esms-starter?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
pom.xml | 21 ++++
zlt-business/pom.xml | 1 +
zlt-business/third-center/pom.xml | 59 ++++++++++
.../main/java/com/central/ThirdCenterApp.java | 13 +++
.../third/controller/SmsController.java | 54 +++++++++
.../central/third/service/ISmsService.java | 38 +++++++
.../third/service/impl/AliSmsServiceImpl.java | 107 ++++++++++++++++++
.../src/main/resources/application.yml | 31 +++++
.../src/main/resources/bootstrap.yml | 6 +
zlt-commons/pom.xml | 1 +
.../zlt-sms-spring-boot-starter/pom.xml | 42 +++++++
.../central/sms/config/SmsAutoConfigure.java | 14 +++
.../sms/model/alisms/QuerySendInfoCo.java | 36 ++++++
.../sms/model/alisms/QuerySendInfoDto.java | 40 +++++++
.../sms/model/alisms/SendBatchSmsCo.java | 34 ++++++
.../central/sms/model/alisms/SendSmsCo.java | 35 ++++++
.../central/sms/model/alisms/SendSmsDto.java | 29 +++++
.../sms/properties/AliSmsProperties.java | 20 ++++
.../sms/properties/SmsServerProperties.java | 31 +++++
.../central/sms/template/AliSmsTemplate.java | 95 ++++++++++++++++
.../main/resources/META-INF/spring.factories | 2 +
.../main/resources/application-dev.properties | 5 +
.../main/resources/application-dev.properties | 4 +-
...JobInfoMapper.xml => IQuerySendInfoCo.xml} | 0
24 files changed, 716 insertions(+), 2 deletions(-)
create mode 100644 zlt-business/third-center/pom.xml
create mode 100644 zlt-business/third-center/src/main/java/com/central/ThirdCenterApp.java
create mode 100644 zlt-business/third-center/src/main/java/com/central/third/controller/SmsController.java
create mode 100644 zlt-business/third-center/src/main/java/com/central/third/service/ISmsService.java
create mode 100644 zlt-business/third-center/src/main/java/com/central/third/service/impl/AliSmsServiceImpl.java
create mode 100644 zlt-business/third-center/src/main/resources/application.yml
create mode 100644 zlt-business/third-center/src/main/resources/bootstrap.yml
create mode 100644 zlt-commons/zlt-sms-spring-boot-starter/pom.xml
create mode 100644 zlt-commons/zlt-sms-spring-boot-starter/src/main/java/com/central/sms/config/SmsAutoConfigure.java
create mode 100644 zlt-commons/zlt-sms-spring-boot-starter/src/main/java/com/central/sms/model/alisms/QuerySendInfoCo.java
create mode 100644 zlt-commons/zlt-sms-spring-boot-starter/src/main/java/com/central/sms/model/alisms/QuerySendInfoDto.java
create mode 100644 zlt-commons/zlt-sms-spring-boot-starter/src/main/java/com/central/sms/model/alisms/SendBatchSmsCo.java
create mode 100644 zlt-commons/zlt-sms-spring-boot-starter/src/main/java/com/central/sms/model/alisms/SendSmsCo.java
create mode 100644 zlt-commons/zlt-sms-spring-boot-starter/src/main/java/com/central/sms/model/alisms/SendSmsDto.java
create mode 100644 zlt-commons/zlt-sms-spring-boot-starter/src/main/java/com/central/sms/properties/AliSmsProperties.java
create mode 100644 zlt-commons/zlt-sms-spring-boot-starter/src/main/java/com/central/sms/properties/SmsServerProperties.java
create mode 100644 zlt-commons/zlt-sms-spring-boot-starter/src/main/java/com/central/sms/template/AliSmsTemplate.java
create mode 100644 zlt-commons/zlt-sms-spring-boot-starter/src/main/resources/META-INF/spring.factories
rename zlt-job/job-admin/src/main/resources/mybatis-mapper/{XxlJobInfoMapper.xml => IQuerySendInfoCo.xml} (100%)
diff --git a/pom.xml b/pom.xml
index 3fc7a277..c62972f1 100644
--- a/pom.xml
+++ b/pom.xml
@@ -66,6 +66,9 @@
hub.zlt.com:8080/microservices-platform
-Djava.security.egd=file:/dev/./urandom
-Xms128m -Xmx128m
+
+ 0.2.0
+ 2.0.8
@@ -440,6 +443,24 @@
pom
import
+
+
+
+ com.aliyun
+ tea-openapi
+ ${tea-openapi.version}
+
+
+ com.aliyun
+ dysmsapi20170525
+ ${dysmsapi20170525.version}
+
+
+ com.zlt
+ zlt-sms-spring-boot-starter
+ ${project.version}
+
+
diff --git a/zlt-business/pom.xml b/zlt-business/pom.xml
index b495fe22..019a654e 100644
--- a/zlt-business/pom.xml
+++ b/zlt-business/pom.xml
@@ -18,5 +18,6 @@
code-generator
search-center
+ third-center
\ No newline at end of file
diff --git a/zlt-business/third-center/pom.xml b/zlt-business/third-center/pom.xml
new file mode 100644
index 00000000..5db57065
--- /dev/null
+++ b/zlt-business/third-center/pom.xml
@@ -0,0 +1,59 @@
+
+
+
+ zlt-business
+ com.zlt
+ 5.1.0
+
+ 4.0.0
+ jar
+ third-center
+ 第三方组件集成
+
+
+
+
+ com.zlt
+ zlt-config
+
+
+ com.zlt
+ zlt-common-spring-boot-starter
+
+
+ com.zlt
+ zlt-db-spring-boot-starter
+
+
+ com.zlt
+ zlt-redis-spring-boot-starter
+
+
+
+
+ com.zlt
+ zlt-swagger2-spring-boot-starter
+
+
+
+ com.zlt
+ zlt-sms-spring-boot-starter
+
+
+
+ org.springframework.boot
+ spring-boot-starter-web
+
+
+ com.alibaba.cloud
+ spring-cloud-starter-alibaba-nacos-discovery
+
+
+
+ mysql
+ mysql-connector-java
+
+
+
\ No newline at end of file
diff --git a/zlt-business/third-center/src/main/java/com/central/ThirdCenterApp.java b/zlt-business/third-center/src/main/java/com/central/ThirdCenterApp.java
new file mode 100644
index 00000000..4df143e1
--- /dev/null
+++ b/zlt-business/third-center/src/main/java/com/central/ThirdCenterApp.java
@@ -0,0 +1,13 @@
+package com.central;
+
+import org.springframework.boot.SpringApplication;
+import org.springframework.boot.autoconfigure.SpringBootApplication;
+import org.springframework.cloud.client.discovery.EnableDiscoveryClient;
+
+@EnableDiscoveryClient
+@SpringBootApplication
+public class ThirdCenterApp {
+ public static void main(String[] args) {
+ SpringApplication.run(ThirdCenterApp.class, args);
+ }
+}
diff --git a/zlt-business/third-center/src/main/java/com/central/third/controller/SmsController.java b/zlt-business/third-center/src/main/java/com/central/third/controller/SmsController.java
new file mode 100644
index 00000000..e2969035
--- /dev/null
+++ b/zlt-business/third-center/src/main/java/com/central/third/controller/SmsController.java
@@ -0,0 +1,54 @@
+package com.central.third.controller;
+
+import cn.hutool.core.util.RandomUtil;
+import com.central.common.model.Result;
+import com.central.common.utils.JsonUtil;
+import com.central.third.service.ISmsService;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RestController;
+
+import javax.annotation.Resource;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * @author 杨彬鑫
+ */
+@RestController
+public class SmsController {
+ @Resource
+ private ISmsService iSmsService;
+
+ @PostMapping("/send-sms")
+ public Result sendSms(@RequestBody Map map) {
+ // 生成验证码
+ String number = RandomUtil.randomNumbers(4);
+ HashMap params = new HashMap<>();
+ params.put("code", number);
+ map.put("TemplateParam", JsonUtil.toJSONString(params));
+ return iSmsService.sendSms(map);
+ }
+
+ @PostMapping("/send-batch-sms")
+ public Result sendBatchSms(@RequestBody Map map) {
+ List
+