diff --git a/README.md b/README.md
index 2c14eb9b..5acdd89a 100644
--- a/README.md
+++ b/README.md
@@ -32,14 +32,14 @@ SOP封装了开放平台大部分功能包括:签名验证、统一异常处
public interface OpenPayment {
@ApiOperation(
- value = "alipay.trade.wap.pay(手机网站支付接口2.0)",
- notes = "该接口是页面跳转接口,用于生成用户访问支付宝的跳转链接。" +
- "请在服务端执行支付宝SDK中pageExecute方法,读取响应中的body()结果。" +
- "该结果用于跳转到支付宝页面,返回到用户浏览器渲染或重定向跳转到支付宝页面。" +
+ value = "手机网站支付接口",
+ notes = "该接口是页面跳转接口,用于生成用户访问跳转链接。" +
+ "请在服务端执行SDK中pageExecute方法,读取响应中的body()结果。" +
+ "该结果用于跳转到页面,返回到用户浏览器渲染或重定向跳转到页面。" +
"具体使用方法请参考 接入指南"
)
- @Open(value = "alipay.trade.wap.pay", version = "2.0")
- AlipayTradeWapPayResponse tradeWapPay(AlipayTradeWapPayRequest request);
+ @Open(value = "pay.trade.wap.pay", version = "1.0")
+ PayTradeWapPayResponse tradeWapPay(PayTradeWapPayRequest request);
}
```
@@ -58,10 +58,10 @@ public interface OpenPayment {
public class OpenPaymentImpl implements OpenPayment {
@Override
- public AlipayTradeWapPayResponse tradeWapPay(AlipayTradeWapPayRequest request) {
- AlipayTradeWapPayResponse alipayTradeWapPayResponse = new AlipayTradeWapPayResponse();
- alipayTradeWapPayResponse.setPageRedirectionData(UUID.randomUUID().toString());
- return alipayTradeWapPayResponse;
+ public PayTradeWapPayResponse tradeWapPay(PayTradeWapPayRequest request) {
+ PayTradeWapPayResponse payTradeWapPayResponse = new PayTradeWapPayResponse();
+ payTradeWapPayResponse.setPageRedirectionData(UUID.randomUUID().toString());
+ return payTradeWapPayResponse;
}
}
@@ -76,7 +76,7 @@ public class OpenPaymentImpl implements OpenPayment {
// 公共请求参数
Map params = new HashMap();
params.put("app_id", appId);
- params.put("method", "alipay.trade.wap.pay");
+ params.put("method", "pay.trade.wap.pay");
params.put("format", "json");
params.put("charset", "utf-8");
params.put("sign_type", "RSA2");
diff --git a/pom.xml b/pom.xml
index 6ed4cec6..1a63b4c6 100644
--- a/pom.xml
+++ b/pom.xml
@@ -123,6 +123,11 @@
transmittable-thread-local
2.14.5
+
+ com.google.guava
+ guava
+ 32.1.3-jre
+
diff --git a/sop-admin/sop-admin-backend/.gitignore b/sop-admin/sop-admin-backend/.gitignore
deleted file mode 100644
index 549e00a2..00000000
--- a/sop-admin/sop-admin-backend/.gitignore
+++ /dev/null
@@ -1,33 +0,0 @@
-HELP.md
-target/
-!.mvn/wrapper/maven-wrapper.jar
-!**/src/main/**/target/
-!**/src/test/**/target/
-
-### STS ###
-.apt_generated
-.classpath
-.factorypath
-.project
-.settings
-.springBeans
-.sts4-cache
-
-### IntelliJ IDEA ###
-.idea
-*.iws
-*.iml
-*.ipr
-
-### NetBeans ###
-/nbproject/private/
-/nbbuild/
-/dist/
-/nbdist/
-/.nb-gradle/
-build/
-!**/src/main/**/build/
-!**/src/test/**/build/
-
-### VS Code ###
-.vscode/
diff --git a/sop-admin/sop-admin-backend/backend-boot/pom.xml b/sop-admin/sop-admin-backend/backend-boot/pom.xml
new file mode 100644
index 00000000..0935fe3f
--- /dev/null
+++ b/sop-admin/sop-admin-backend/backend-boot/pom.xml
@@ -0,0 +1,139 @@
+
+
+ 4.0.0
+
+ com.gitee.sop
+ sop-admin-backend
+ 5.0.0-SNAPSHOT
+
+
+ backend-boot
+
+
+ 8
+ 8
+ UTF-8
+
+
+
+
+ com.gitee.sop
+ backend-web
+ 5.0.0-SNAPSHOT
+
+
+ com.gitee.sop
+ website-web
+ 5.0.0-SNAPSHOT
+
+
+ org.springframework.boot
+ spring-boot-starter
+
+
+
+ org.apache.dubbo
+ dubbo-spring-boot-starter
+
+
+
+
+ org.apache.dubbo
+ dubbo-nacos-spring-boot-starter
+
+
+
+ org.springframework.boot
+ spring-boot-starter-data-redis
+
+
+
+ org.springframework.boot
+ spring-boot-starter-jdbc
+
+
+
+ mysql
+ mysql-connector-java
+
+
+
+
+
+
+ org.apache.dubbo
+ dubbo-dependencies-zookeeper-curator5
+ ${dubbo.version}
+ pom
+ provided
+
+
+
+ org.projectlombok
+ lombok
+ true
+
+
+
+
+
+
+
+ aliyun
+ aliyun
+ https://maven.aliyun.com/repository/public
+
+
+
+
+
+
+ org.springframework.boot
+ spring-boot-maven-plugin
+
+
+
+ org.apache.maven.plugins
+ maven-surefire-plugin
+ 2.12.4
+
+ true
+
+
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+ 3.1
+
+ ${java.version}
+ ${java.version}
+ UTF-8
+
+
+
+ org.apache.maven.plugins
+ maven-checkstyle-plugin
+ 3.3.1
+
+ checkstyle.xml
+ true
+ true
+ false
+
+
+
+ validate
+ validate
+
+ check
+
+
+
+
+
+
+
+
+
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/SopAdminBackendApplication.java b/sop-admin/sop-admin-backend/backend-boot/src/main/java/com/gitee/sop/adminbackend/SopAdminBackendApplication.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/SopAdminBackendApplication.java
rename to sop-admin/sop-admin-backend/backend-boot/src/main/java/com/gitee/sop/adminbackend/SopAdminBackendApplication.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/config/AdminConfig.java b/sop-admin/sop-admin-backend/backend-boot/src/main/java/com/gitee/sop/adminbackend/config/AdminConfig.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/config/AdminConfig.java
rename to sop-admin/sop-admin-backend/backend-boot/src/main/java/com/gitee/sop/adminbackend/config/AdminConfig.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/config/SopAdminConfiguration.java b/sop-admin/sop-admin-backend/backend-boot/src/main/java/com/gitee/sop/adminbackend/config/SopAdminConfiguration.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/config/SopAdminConfiguration.java
rename to sop-admin/sop-admin-backend/backend-boot/src/main/java/com/gitee/sop/adminbackend/config/SopAdminConfiguration.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/interceptor/LoginInterceptor.java b/sop-admin/sop-admin-backend/backend-boot/src/main/java/com/gitee/sop/adminbackend/interceptor/LoginInterceptor.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/interceptor/LoginInterceptor.java
rename to sop-admin/sop-admin-backend/backend-boot/src/main/java/com/gitee/sop/adminbackend/interceptor/LoginInterceptor.java
diff --git a/sop-admin/sop-admin-backend/src/test/java/com/gitee/sop/adminbackend/BaseTest.java b/sop-admin/sop-admin-backend/backend-boot/src/test/java/com/gitee/sop/adminbackend/BaseTest.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/test/java/com/gitee/sop/adminbackend/BaseTest.java
rename to sop-admin/sop-admin-backend/backend-boot/src/test/java/com/gitee/sop/adminbackend/BaseTest.java
diff --git a/sop-admin/sop-admin-backend/src/test/java/com/gitee/sop/adminbackend/service/LoginServiceTest.java b/sop-admin/sop-admin-backend/backend-boot/src/test/java/com/gitee/sop/adminbackend/service/LoginServiceTest.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/test/java/com/gitee/sop/adminbackend/service/LoginServiceTest.java
rename to sop-admin/sop-admin-backend/backend-boot/src/test/java/com/gitee/sop/adminbackend/service/LoginServiceTest.java
diff --git a/sop-admin/sop-admin-backend/src/test/java/com/gitee/sop/adminbackend/service/PasswordTest.java b/sop-admin/sop-admin-backend/backend-boot/src/test/java/com/gitee/sop/adminbackend/service/PasswordTest.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/test/java/com/gitee/sop/adminbackend/service/PasswordTest.java
rename to sop-admin/sop-admin-backend/backend-boot/src/test/java/com/gitee/sop/adminbackend/service/PasswordTest.java
diff --git a/sop-admin/sop-admin-backend/backend-common/pom.xml b/sop-admin/sop-admin-backend/backend-common/pom.xml
new file mode 100644
index 00000000..785f35ca
--- /dev/null
+++ b/sop-admin/sop-admin-backend/backend-common/pom.xml
@@ -0,0 +1,93 @@
+
+
+ 4.0.0
+
+ com.gitee.sop
+ sop-admin-backend
+ 5.0.0-SNAPSHOT
+
+
+ backend-common
+
+
+ 8
+ 8
+ UTF-8
+
+
+
+
+ com.gitee.sop
+ sop-service-support
+ 5.0.0-SNAPSHOT
+
+
+
+ io.gitee.durcframework
+ fastmybatis-spring-boot-starter
+
+
+
+ com.google.guava
+ guava
+
+
+
+
+ com.alibaba.fastjson2
+ fastjson2
+ 2.0.52
+
+
+
+ commons-codec
+ commons-codec
+
+
+ org.apache.commons
+ commons-lang3
+
+
+ commons-fileupload
+ commons-fileupload
+
+
+
+ org.hibernate
+ hibernate-validator
+
+
+
+ com.fasterxml.jackson.dataformat
+ jackson-dataformat-xml
+
+
+ com.auth0
+ java-jwt
+
+
+
+ org.springframework.security
+ spring-security-crypto
+
+
+
+ net.oschina.durcframework
+ http-helper
+
+
+
+ org.springframework.boot
+ spring-boot-starter-web
+
+
+
+ org.projectlombok
+ lombok
+ true
+
+
+
+
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/annotation/NoToken.java b/sop-admin/sop-admin-backend/backend-common/src/main/java/com/gitee/sop/adminbackend/common/annotation/NoToken.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/annotation/NoToken.java
rename to sop-admin/sop-admin-backend/backend-common/src/main/java/com/gitee/sop/adminbackend/common/annotation/NoToken.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/config/Configs.java b/sop-admin/sop-admin-backend/backend-common/src/main/java/com/gitee/sop/adminbackend/common/config/Configs.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/config/Configs.java
rename to sop-admin/sop-admin-backend/backend-common/src/main/java/com/gitee/sop/adminbackend/common/config/Configs.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/config/IConfig.java b/sop-admin/sop-admin-backend/backend-common/src/main/java/com/gitee/sop/adminbackend/common/config/IConfig.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/config/IConfig.java
rename to sop-admin/sop-admin-backend/backend-common/src/main/java/com/gitee/sop/adminbackend/common/config/IConfig.java
diff --git a/sop-admin/sop-admin-backend/backend-common/src/main/java/com/gitee/sop/adminbackend/common/constants/YesOrNo.java b/sop-admin/sop-admin-backend/backend-common/src/main/java/com/gitee/sop/adminbackend/common/constants/YesOrNo.java
new file mode 100644
index 00000000..674273cd
--- /dev/null
+++ b/sop-admin/sop-admin-backend/backend-common/src/main/java/com/gitee/sop/adminbackend/common/constants/YesOrNo.java
@@ -0,0 +1,20 @@
+package com.gitee.sop.adminbackend.common.constants;
+
+import java.util.Objects;
+
+/**
+ * @author 六如
+ */
+public class YesOrNo {
+ public static final int YES = 1;
+ public static final int NO = 0;
+
+ public static boolean yes(Number value) {
+ return value != null && value.intValue() == YES;
+ }
+
+ public static int of(Boolean b) {
+ return Objects.equals(b, true) ? YES : NO;
+ }
+
+}
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/context/SpringContext.java b/sop-admin/sop-admin-backend/backend-common/src/main/java/com/gitee/sop/adminbackend/common/context/SpringContext.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/context/SpringContext.java
rename to sop-admin/sop-admin-backend/backend-common/src/main/java/com/gitee/sop/adminbackend/common/context/SpringContext.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/context/UserContext.java b/sop-admin/sop-admin-backend/backend-common/src/main/java/com/gitee/sop/adminbackend/common/context/UserContext.java
similarity index 98%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/context/UserContext.java
rename to sop-admin/sop-admin-backend/backend-common/src/main/java/com/gitee/sop/adminbackend/common/context/UserContext.java
index e39725a7..b578e0b6 100644
--- a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/context/UserContext.java
+++ b/sop-admin/sop-admin-backend/backend-common/src/main/java/com/gitee/sop/adminbackend/common/context/UserContext.java
@@ -1,6 +1,7 @@
package com.gitee.sop.adminbackend.common.context;
import com.auth0.jwt.interfaces.Claim;
+import com.gitee.sop.adminbackend.common.manager.UserCacheManager;
import com.gitee.sop.adminbackend.common.user.User;
import com.gitee.sop.adminbackend.common.config.Configs;
import com.gitee.sop.adminbackend.common.enums.ConfigKeyEnum;
@@ -8,7 +9,6 @@ import com.gitee.sop.adminbackend.common.exception.ErrorTokenException;
import com.gitee.sop.adminbackend.common.exception.JwtErrorException;
import com.gitee.sop.adminbackend.common.exception.JwtExpiredException;
import com.gitee.sop.adminbackend.common.exception.LoginFailureException;
-import com.gitee.sop.adminbackend.service.sys.login.UserCacheManager;
import com.gitee.sop.adminbackend.common.util.JwtUtil;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.math.NumberUtils;
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/dto/IdDTO.java b/sop-admin/sop-admin-backend/backend-common/src/main/java/com/gitee/sop/adminbackend/common/dto/IdDTO.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/dto/IdDTO.java
rename to sop-admin/sop-admin-backend/backend-common/src/main/java/com/gitee/sop/adminbackend/common/dto/IdDTO.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/dto/StatusUpdateDTO.java b/sop-admin/sop-admin-backend/backend-common/src/main/java/com/gitee/sop/adminbackend/common/dto/StatusUpdateDTO.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/dto/StatusUpdateDTO.java
rename to sop-admin/sop-admin-backend/backend-common/src/main/java/com/gitee/sop/adminbackend/common/dto/StatusUpdateDTO.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/enums/ConfigKeyEnum.java b/sop-admin/sop-admin-backend/backend-common/src/main/java/com/gitee/sop/adminbackend/common/enums/ConfigKeyEnum.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/enums/ConfigKeyEnum.java
rename to sop-admin/sop-admin-backend/backend-common/src/main/java/com/gitee/sop/adminbackend/common/enums/ConfigKeyEnum.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/enums/DocSourceTypeEnum.java b/sop-admin/sop-admin-backend/backend-common/src/main/java/com/gitee/sop/adminbackend/common/enums/DocSourceTypeEnum.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/enums/DocSourceTypeEnum.java
rename to sop-admin/sop-admin-backend/backend-common/src/main/java/com/gitee/sop/adminbackend/common/enums/DocSourceTypeEnum.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/enums/DocTypeEnum.java b/sop-admin/sop-admin-backend/backend-common/src/main/java/com/gitee/sop/adminbackend/common/enums/DocTypeEnum.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/enums/DocTypeEnum.java
rename to sop-admin/sop-admin-backend/backend-common/src/main/java/com/gitee/sop/adminbackend/common/enums/DocTypeEnum.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/enums/IEnum.java b/sop-admin/sop-admin-backend/backend-common/src/main/java/com/gitee/sop/adminbackend/common/enums/IEnum.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/enums/IEnum.java
rename to sop-admin/sop-admin-backend/backend-common/src/main/java/com/gitee/sop/adminbackend/common/enums/IEnum.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/enums/IntEnum.java b/sop-admin/sop-admin-backend/backend-common/src/main/java/com/gitee/sop/adminbackend/common/enums/IntEnum.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/enums/IntEnum.java
rename to sop-admin/sop-admin-backend/backend-common/src/main/java/com/gitee/sop/adminbackend/common/enums/IntEnum.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/enums/StatusEnum.java b/sop-admin/sop-admin-backend/backend-common/src/main/java/com/gitee/sop/adminbackend/common/enums/StatusEnum.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/enums/StatusEnum.java
rename to sop-admin/sop-admin-backend/backend-common/src/main/java/com/gitee/sop/adminbackend/common/enums/StatusEnum.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/enums/StringEnum.java b/sop-admin/sop-admin-backend/backend-common/src/main/java/com/gitee/sop/adminbackend/common/enums/StringEnum.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/enums/StringEnum.java
rename to sop-admin/sop-admin-backend/backend-common/src/main/java/com/gitee/sop/adminbackend/common/enums/StringEnum.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/exception/BizException.java b/sop-admin/sop-admin-backend/backend-common/src/main/java/com/gitee/sop/adminbackend/common/exception/BizException.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/exception/BizException.java
rename to sop-admin/sop-admin-backend/backend-common/src/main/java/com/gitee/sop/adminbackend/common/exception/BizException.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/exception/ErrorCode.java b/sop-admin/sop-admin-backend/backend-common/src/main/java/com/gitee/sop/adminbackend/common/exception/ErrorCode.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/exception/ErrorCode.java
rename to sop-admin/sop-admin-backend/backend-common/src/main/java/com/gitee/sop/adminbackend/common/exception/ErrorCode.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/exception/ErrorTokenException.java b/sop-admin/sop-admin-backend/backend-common/src/main/java/com/gitee/sop/adminbackend/common/exception/ErrorTokenException.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/exception/ErrorTokenException.java
rename to sop-admin/sop-admin-backend/backend-common/src/main/java/com/gitee/sop/adminbackend/common/exception/ErrorTokenException.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/exception/ExceptionCode.java b/sop-admin/sop-admin-backend/backend-common/src/main/java/com/gitee/sop/adminbackend/common/exception/ExceptionCode.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/exception/ExceptionCode.java
rename to sop-admin/sop-admin-backend/backend-common/src/main/java/com/gitee/sop/adminbackend/common/exception/ExceptionCode.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/exception/JwtCreateException.java b/sop-admin/sop-admin-backend/backend-common/src/main/java/com/gitee/sop/adminbackend/common/exception/JwtCreateException.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/exception/JwtCreateException.java
rename to sop-admin/sop-admin-backend/backend-common/src/main/java/com/gitee/sop/adminbackend/common/exception/JwtCreateException.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/exception/JwtErrorException.java b/sop-admin/sop-admin-backend/backend-common/src/main/java/com/gitee/sop/adminbackend/common/exception/JwtErrorException.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/exception/JwtErrorException.java
rename to sop-admin/sop-admin-backend/backend-common/src/main/java/com/gitee/sop/adminbackend/common/exception/JwtErrorException.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/exception/JwtExpiredException.java b/sop-admin/sop-admin-backend/backend-common/src/main/java/com/gitee/sop/adminbackend/common/exception/JwtExpiredException.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/exception/JwtExpiredException.java
rename to sop-admin/sop-admin-backend/backend-common/src/main/java/com/gitee/sop/adminbackend/common/exception/JwtExpiredException.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/exception/LoginFailureException.java b/sop-admin/sop-admin-backend/backend-common/src/main/java/com/gitee/sop/adminbackend/common/exception/LoginFailureException.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/exception/LoginFailureException.java
rename to sop-admin/sop-admin-backend/backend-common/src/main/java/com/gitee/sop/adminbackend/common/exception/LoginFailureException.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/exception/SetPasswordException.java b/sop-admin/sop-admin-backend/backend-common/src/main/java/com/gitee/sop/adminbackend/common/exception/SetPasswordException.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/exception/SetPasswordException.java
rename to sop-admin/sop-admin-backend/backend-common/src/main/java/com/gitee/sop/adminbackend/common/exception/SetPasswordException.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/fill/AddByFill.java b/sop-admin/sop-admin-backend/backend-common/src/main/java/com/gitee/sop/adminbackend/common/fill/AddByFill.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/fill/AddByFill.java
rename to sop-admin/sop-admin-backend/backend-common/src/main/java/com/gitee/sop/adminbackend/common/fill/AddByFill.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/fill/UpdateByFill.java b/sop-admin/sop-admin-backend/backend-common/src/main/java/com/gitee/sop/adminbackend/common/fill/UpdateByFill.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/fill/UpdateByFill.java
rename to sop-admin/sop-admin-backend/backend-common/src/main/java/com/gitee/sop/adminbackend/common/fill/UpdateByFill.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/jackson/DateConverterProperties.java b/sop-admin/sop-admin-backend/backend-common/src/main/java/com/gitee/sop/adminbackend/common/jackson/DateConverterProperties.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/jackson/DateConverterProperties.java
rename to sop-admin/sop-admin-backend/backend-common/src/main/java/com/gitee/sop/adminbackend/common/jackson/DateConverterProperties.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/jackson/JacksonDateConverterConfig.java b/sop-admin/sop-admin-backend/backend-common/src/main/java/com/gitee/sop/adminbackend/common/jackson/JacksonDateConverterConfig.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/jackson/JacksonDateConverterConfig.java
rename to sop-admin/sop-admin-backend/backend-common/src/main/java/com/gitee/sop/adminbackend/common/jackson/JacksonDateConverterConfig.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/sys/login/UserCacheManager.java b/sop-admin/sop-admin-backend/backend-common/src/main/java/com/gitee/sop/adminbackend/common/manager/UserCacheManager.java
similarity index 86%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/sys/login/UserCacheManager.java
rename to sop-admin/sop-admin-backend/backend-common/src/main/java/com/gitee/sop/adminbackend/common/manager/UserCacheManager.java
index 53bbd22a..ccaf4db3 100644
--- a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/sys/login/UserCacheManager.java
+++ b/sop-admin/sop-admin-backend/backend-common/src/main/java/com/gitee/sop/adminbackend/common/manager/UserCacheManager.java
@@ -1,4 +1,4 @@
-package com.gitee.sop.adminbackend.service.sys.login;
+package com.gitee.sop.adminbackend.common.manager;
import com.gitee.sop.adminbackend.common.user.User;
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/req/IdParam.java b/sop-admin/sop-admin-backend/backend-common/src/main/java/com/gitee/sop/adminbackend/common/req/IdParam.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/req/IdParam.java
rename to sop-admin/sop-admin-backend/backend-common/src/main/java/com/gitee/sop/adminbackend/common/req/IdParam.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/req/StatusUpdateParam.java b/sop-admin/sop-admin-backend/backend-common/src/main/java/com/gitee/sop/adminbackend/common/req/StatusUpdateParam.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/req/StatusUpdateParam.java
rename to sop-admin/sop-admin-backend/backend-common/src/main/java/com/gitee/sop/adminbackend/common/req/StatusUpdateParam.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/resp/Result.java b/sop-admin/sop-admin-backend/backend-common/src/main/java/com/gitee/sop/adminbackend/common/resp/Result.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/resp/Result.java
rename to sop-admin/sop-admin-backend/backend-common/src/main/java/com/gitee/sop/adminbackend/common/resp/Result.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/user/User.java b/sop-admin/sop-admin-backend/backend-common/src/main/java/com/gitee/sop/adminbackend/common/user/User.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/user/User.java
rename to sop-admin/sop-admin-backend/backend-common/src/main/java/com/gitee/sop/adminbackend/common/user/User.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/util/CopyUtil.java b/sop-admin/sop-admin-backend/backend-common/src/main/java/com/gitee/sop/adminbackend/common/util/CopyUtil.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/util/CopyUtil.java
rename to sop-admin/sop-admin-backend/backend-common/src/main/java/com/gitee/sop/adminbackend/common/util/CopyUtil.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/util/GenerateUtil.java b/sop-admin/sop-admin-backend/backend-common/src/main/java/com/gitee/sop/adminbackend/common/util/GenerateUtil.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/util/GenerateUtil.java
rename to sop-admin/sop-admin-backend/backend-common/src/main/java/com/gitee/sop/adminbackend/common/util/GenerateUtil.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/util/IdGen.java b/sop-admin/sop-admin-backend/backend-common/src/main/java/com/gitee/sop/adminbackend/common/util/IdGen.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/util/IdGen.java
rename to sop-admin/sop-admin-backend/backend-common/src/main/java/com/gitee/sop/adminbackend/common/util/IdGen.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/util/JwtUtil.java b/sop-admin/sop-admin-backend/backend-common/src/main/java/com/gitee/sop/adminbackend/common/util/JwtUtil.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/util/JwtUtil.java
rename to sop-admin/sop-admin-backend/backend-common/src/main/java/com/gitee/sop/adminbackend/common/util/JwtUtil.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/util/PasswordUtil.java b/sop-admin/sop-admin-backend/backend-common/src/main/java/com/gitee/sop/adminbackend/common/util/PasswordUtil.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/util/PasswordUtil.java
rename to sop-admin/sop-admin-backend/backend-common/src/main/java/com/gitee/sop/adminbackend/common/util/PasswordUtil.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/util/RSATool.java b/sop-admin/sop-admin-backend/backend-common/src/main/java/com/gitee/sop/adminbackend/common/util/RSATool.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/util/RSATool.java
rename to sop-admin/sop-admin-backend/backend-common/src/main/java/com/gitee/sop/adminbackend/common/util/RSATool.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/util/RequestUtil.java b/sop-admin/sop-admin-backend/backend-common/src/main/java/com/gitee/sop/adminbackend/common/util/RequestUtil.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/util/RequestUtil.java
rename to sop-admin/sop-admin-backend/backend-common/src/main/java/com/gitee/sop/adminbackend/common/util/RequestUtil.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/util/SystemUtil.java b/sop-admin/sop-admin-backend/backend-common/src/main/java/com/gitee/sop/adminbackend/common/util/SystemUtil.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/util/SystemUtil.java
rename to sop-admin/sop-admin-backend/backend-common/src/main/java/com/gitee/sop/adminbackend/common/util/SystemUtil.java
diff --git a/sop-admin/sop-admin-backend/backend-dao/pom.xml b/sop-admin/sop-admin-backend/backend-dao/pom.xml
new file mode 100644
index 00000000..20cb2832
--- /dev/null
+++ b/sop-admin/sop-admin-backend/backend-dao/pom.xml
@@ -0,0 +1,33 @@
+
+
+ 4.0.0
+
+ com.gitee.sop
+ sop-admin-backend
+ 5.0.0-SNAPSHOT
+
+
+ backend-dao
+
+
+ 8
+ 8
+ UTF-8
+
+
+
+
+ io.gitee.durcframework
+ fastmybatis-spring-boot-starter
+
+
+
+ org.projectlombok
+ lombok
+ true
+
+
+
+
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/dao/entity/ApiInfo.java b/sop-admin/sop-admin-backend/backend-dao/src/main/java/com/gitee/sop/adminbackend/dao/entity/ApiInfo.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/dao/entity/ApiInfo.java
rename to sop-admin/sop-admin-backend/backend-dao/src/main/java/com/gitee/sop/adminbackend/dao/entity/ApiInfo.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/dao/entity/DocApp.java b/sop-admin/sop-admin-backend/backend-dao/src/main/java/com/gitee/sop/adminbackend/dao/entity/DocApp.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/dao/entity/DocApp.java
rename to sop-admin/sop-admin-backend/backend-dao/src/main/java/com/gitee/sop/adminbackend/dao/entity/DocApp.java
diff --git a/sop-admin/sop-admin-backend/backend-dao/src/main/java/com/gitee/sop/adminbackend/dao/entity/DocContent.java b/sop-admin/sop-admin-backend/backend-dao/src/main/java/com/gitee/sop/adminbackend/dao/entity/DocContent.java
new file mode 100644
index 00000000..15c190f0
--- /dev/null
+++ b/sop-admin/sop-admin-backend/backend-dao/src/main/java/com/gitee/sop/adminbackend/dao/entity/DocContent.java
@@ -0,0 +1,58 @@
+package com.gitee.sop.adminbackend.dao.entity;
+
+import java.time.LocalDateTime;
+
+import com.gitee.fastmybatis.annotation.Pk;
+import com.gitee.fastmybatis.annotation.PkStrategy;
+import com.gitee.fastmybatis.annotation.Table;
+
+import lombok.Data;
+
+
+/**
+ * 表名:doc_content
+ * 备注:文档内容
+ *
+ * @author 六如
+ */
+@Table(name = "doc_content", pk = @Pk(name = "id", strategy = PkStrategy.INCREMENT))
+@Data
+public class DocContent {
+
+ /**
+ * id
+ */
+ private Long id;
+
+ /**
+ * doc_info.id
+ */
+ private Long docInfoId;
+
+ /**
+ * 文档内容
+ */
+ private String content;
+
+ /**
+ * 添加时间
+ */
+ private LocalDateTime addTime;
+
+ /**
+ * 修改时间
+ */
+ private LocalDateTime updateTime;
+
+ /**
+ * 创建人id
+ */
+ private Long addBy;
+
+ /**
+ * 修改人id
+ */
+ private Long updateBy;
+
+
+}
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/dao/entity/DocInfo.java b/sop-admin/sop-admin-backend/backend-dao/src/main/java/com/gitee/sop/adminbackend/dao/entity/DocInfo.java
similarity index 96%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/dao/entity/DocInfo.java
rename to sop-admin/sop-admin-backend/backend-dao/src/main/java/com/gitee/sop/adminbackend/dao/entity/DocInfo.java
index 9e4a68d3..bd95a5a0 100644
--- a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/dao/entity/DocInfo.java
+++ b/sop-admin/sop-admin-backend/backend-dao/src/main/java/com/gitee/sop/adminbackend/dao/entity/DocInfo.java
@@ -30,7 +30,7 @@ public class DocInfo {
private Long docAppId;
/**
- * 文档id
+ * 远程文档id
*/
private Long docId;
@@ -80,7 +80,7 @@ public class DocInfo {
private Integer isPublish;
/**
- * 父节点id
+ * 父节点id, 对应docId
*/
private Long parentId;
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/dao/entity/IsvInfo.java b/sop-admin/sop-admin-backend/backend-dao/src/main/java/com/gitee/sop/adminbackend/dao/entity/IsvInfo.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/dao/entity/IsvInfo.java
rename to sop-admin/sop-admin-backend/backend-dao/src/main/java/com/gitee/sop/adminbackend/dao/entity/IsvInfo.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/dao/entity/IsvKeys.java b/sop-admin/sop-admin-backend/backend-dao/src/main/java/com/gitee/sop/adminbackend/dao/entity/IsvKeys.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/dao/entity/IsvKeys.java
rename to sop-admin/sop-admin-backend/backend-dao/src/main/java/com/gitee/sop/adminbackend/dao/entity/IsvKeys.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/dao/entity/PermGroup.java b/sop-admin/sop-admin-backend/backend-dao/src/main/java/com/gitee/sop/adminbackend/dao/entity/PermGroup.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/dao/entity/PermGroup.java
rename to sop-admin/sop-admin-backend/backend-dao/src/main/java/com/gitee/sop/adminbackend/dao/entity/PermGroup.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/dao/entity/PermGroupPermission.java b/sop-admin/sop-admin-backend/backend-dao/src/main/java/com/gitee/sop/adminbackend/dao/entity/PermGroupPermission.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/dao/entity/PermGroupPermission.java
rename to sop-admin/sop-admin-backend/backend-dao/src/main/java/com/gitee/sop/adminbackend/dao/entity/PermGroupPermission.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/dao/entity/PermIsvGroup.java b/sop-admin/sop-admin-backend/backend-dao/src/main/java/com/gitee/sop/adminbackend/dao/entity/PermIsvGroup.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/dao/entity/PermIsvGroup.java
rename to sop-admin/sop-admin-backend/backend-dao/src/main/java/com/gitee/sop/adminbackend/dao/entity/PermIsvGroup.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/dao/entity/SysAdminUser.java b/sop-admin/sop-admin-backend/backend-dao/src/main/java/com/gitee/sop/adminbackend/dao/entity/SysAdminUser.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/dao/entity/SysAdminUser.java
rename to sop-admin/sop-admin-backend/backend-dao/src/main/java/com/gitee/sop/adminbackend/dao/entity/SysAdminUser.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/dao/entity/SysConfig.java b/sop-admin/sop-admin-backend/backend-dao/src/main/java/com/gitee/sop/adminbackend/dao/entity/SysConfig.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/dao/entity/SysConfig.java
rename to sop-admin/sop-admin-backend/backend-dao/src/main/java/com/gitee/sop/adminbackend/dao/entity/SysConfig.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/dao/mapper/ApiInfoMapper.java b/sop-admin/sop-admin-backend/backend-dao/src/main/java/com/gitee/sop/adminbackend/dao/mapper/ApiInfoMapper.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/dao/mapper/ApiInfoMapper.java
rename to sop-admin/sop-admin-backend/backend-dao/src/main/java/com/gitee/sop/adminbackend/dao/mapper/ApiInfoMapper.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/dao/mapper/DocAppMapper.java b/sop-admin/sop-admin-backend/backend-dao/src/main/java/com/gitee/sop/adminbackend/dao/mapper/DocAppMapper.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/dao/mapper/DocAppMapper.java
rename to sop-admin/sop-admin-backend/backend-dao/src/main/java/com/gitee/sop/adminbackend/dao/mapper/DocAppMapper.java
diff --git a/sop-admin/sop-admin-backend/backend-dao/src/main/java/com/gitee/sop/adminbackend/dao/mapper/DocContentMapper.java b/sop-admin/sop-admin-backend/backend-dao/src/main/java/com/gitee/sop/adminbackend/dao/mapper/DocContentMapper.java
new file mode 100644
index 00000000..57b14b4c
--- /dev/null
+++ b/sop-admin/sop-admin-backend/backend-dao/src/main/java/com/gitee/sop/adminbackend/dao/mapper/DocContentMapper.java
@@ -0,0 +1,13 @@
+package com.gitee.sop.adminbackend.dao.mapper;
+
+import com.gitee.fastmybatis.core.mapper.BaseMapper;
+import com.gitee.sop.adminbackend.dao.entity.DocContent;
+import org.apache.ibatis.annotations.Mapper;
+
+/**
+ * @author 六如
+ */
+@Mapper
+public interface DocContentMapper extends BaseMapper {
+
+}
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/dao/mapper/DocInfoMapper.java b/sop-admin/sop-admin-backend/backend-dao/src/main/java/com/gitee/sop/adminbackend/dao/mapper/DocInfoMapper.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/dao/mapper/DocInfoMapper.java
rename to sop-admin/sop-admin-backend/backend-dao/src/main/java/com/gitee/sop/adminbackend/dao/mapper/DocInfoMapper.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/dao/mapper/IsvInfoMapper.java b/sop-admin/sop-admin-backend/backend-dao/src/main/java/com/gitee/sop/adminbackend/dao/mapper/IsvInfoMapper.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/dao/mapper/IsvInfoMapper.java
rename to sop-admin/sop-admin-backend/backend-dao/src/main/java/com/gitee/sop/adminbackend/dao/mapper/IsvInfoMapper.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/dao/mapper/IsvKeysMapper.java b/sop-admin/sop-admin-backend/backend-dao/src/main/java/com/gitee/sop/adminbackend/dao/mapper/IsvKeysMapper.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/dao/mapper/IsvKeysMapper.java
rename to sop-admin/sop-admin-backend/backend-dao/src/main/java/com/gitee/sop/adminbackend/dao/mapper/IsvKeysMapper.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/dao/mapper/PermGroupMapper.java b/sop-admin/sop-admin-backend/backend-dao/src/main/java/com/gitee/sop/adminbackend/dao/mapper/PermGroupMapper.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/dao/mapper/PermGroupMapper.java
rename to sop-admin/sop-admin-backend/backend-dao/src/main/java/com/gitee/sop/adminbackend/dao/mapper/PermGroupMapper.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/dao/mapper/PermGroupPermissionMapper.java b/sop-admin/sop-admin-backend/backend-dao/src/main/java/com/gitee/sop/adminbackend/dao/mapper/PermGroupPermissionMapper.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/dao/mapper/PermGroupPermissionMapper.java
rename to sop-admin/sop-admin-backend/backend-dao/src/main/java/com/gitee/sop/adminbackend/dao/mapper/PermGroupPermissionMapper.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/dao/mapper/PermIsvGroupMapper.java b/sop-admin/sop-admin-backend/backend-dao/src/main/java/com/gitee/sop/adminbackend/dao/mapper/PermIsvGroupMapper.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/dao/mapper/PermIsvGroupMapper.java
rename to sop-admin/sop-admin-backend/backend-dao/src/main/java/com/gitee/sop/adminbackend/dao/mapper/PermIsvGroupMapper.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/dao/mapper/SysAdminUserMapper.java b/sop-admin/sop-admin-backend/backend-dao/src/main/java/com/gitee/sop/adminbackend/dao/mapper/SysAdminUserMapper.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/dao/mapper/SysAdminUserMapper.java
rename to sop-admin/sop-admin-backend/backend-dao/src/main/java/com/gitee/sop/adminbackend/dao/mapper/SysAdminUserMapper.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/dao/mapper/SysConfigMapper.java b/sop-admin/sop-admin-backend/backend-dao/src/main/java/com/gitee/sop/adminbackend/dao/mapper/SysConfigMapper.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/dao/mapper/SysConfigMapper.java
rename to sop-admin/sop-admin-backend/backend-dao/src/main/java/com/gitee/sop/adminbackend/dao/mapper/SysConfigMapper.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/dao/mapper/UpgradeMapper.java b/sop-admin/sop-admin-backend/backend-dao/src/main/java/com/gitee/sop/adminbackend/dao/mapper/UpgradeMapper.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/dao/mapper/UpgradeMapper.java
rename to sop-admin/sop-admin-backend/backend-dao/src/main/java/com/gitee/sop/adminbackend/dao/mapper/UpgradeMapper.java
diff --git a/sop-admin/sop-admin-backend/src/main/resources/application-dev.properties b/sop-admin/sop-admin-backend/backend-dao/src/main/resources/application-dev.properties
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/resources/application-dev.properties
rename to sop-admin/sop-admin-backend/backend-dao/src/main/resources/application-dev.properties
diff --git a/sop-admin/sop-admin-backend/src/main/resources/application-test.properties b/sop-admin/sop-admin-backend/backend-dao/src/main/resources/application-test.properties
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/resources/application-test.properties
rename to sop-admin/sop-admin-backend/backend-dao/src/main/resources/application-test.properties
diff --git a/sop-admin/sop-admin-backend/src/main/resources/application.properties b/sop-admin/sop-admin-backend/backend-dao/src/main/resources/application.properties
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/resources/application.properties
rename to sop-admin/sop-admin-backend/backend-dao/src/main/resources/application.properties
diff --git a/sop-admin/sop-admin-backend/src/main/resources/mybatis/mapper/UpgradeMapper.xml b/sop-admin/sop-admin-backend/backend-dao/src/main/resources/mybatis/mapper/UpgradeMapper.xml
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/resources/mybatis/mapper/UpgradeMapper.xml
rename to sop-admin/sop-admin-backend/backend-dao/src/main/resources/mybatis/mapper/UpgradeMapper.xml
diff --git a/sop-admin/sop-admin-backend/src/main/resources/mybatis/mybatisConfig.xml b/sop-admin/sop-admin-backend/backend-dao/src/main/resources/mybatis/mybatisConfig.xml
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/resources/mybatis/mybatisConfig.xml
rename to sop-admin/sop-admin-backend/backend-dao/src/main/resources/mybatis/mybatisConfig.xml
diff --git a/sop-admin/sop-admin-backend/backend-service/pom.xml b/sop-admin/sop-admin-backend/backend-service/pom.xml
new file mode 100644
index 00000000..8240fc4f
--- /dev/null
+++ b/sop-admin/sop-admin-backend/backend-service/pom.xml
@@ -0,0 +1,44 @@
+
+
+ 4.0.0
+
+ com.gitee.sop
+ sop-admin-backend
+ 5.0.0-SNAPSHOT
+
+
+ backend-service
+
+
+ 8
+ 8
+ UTF-8
+
+
+
+
+ com.gitee.sop
+ backend-common
+ 5.0.0-SNAPSHOT
+
+
+ com.gitee.sop
+ backend-dao
+ 5.0.0-SNAPSHOT
+
+
+ org.apache.dubbo
+ dubbo
+
+
+
+ org.projectlombok
+ lombok
+ true
+
+
+
+
+
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/doc/DocAppService.java b/sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/doc/DocAppService.java
similarity index 92%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/doc/DocAppService.java
rename to sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/doc/DocAppService.java
index b0b5f468..c5ea8146 100644
--- a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/doc/DocAppService.java
+++ b/sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/doc/DocAppService.java
@@ -23,6 +23,8 @@ public class DocAppService implements LambdaService {
@Autowired
private DocInfoService docInfoService;
+ @Autowired
+ private DocInfoSyncService docInfoSyncService;
public Long addDocApp(String token) {
TornaModuleDTO tornaModuleDTO = tornaClient.execute("module.get", null, token, TornaModuleDTO.class);
@@ -37,7 +39,7 @@ public class DocAppService implements LambdaService {
this.update(docApp);
}
// 同步文档
- docInfoService.syncDocInfo(docApp);
+ docInfoSyncService.syncDocInfo(docApp, null);
return docApp.getId();
}
diff --git a/sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/doc/DocContentService.java b/sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/doc/DocContentService.java
new file mode 100644
index 00000000..705b8881
--- /dev/null
+++ b/sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/doc/DocContentService.java
@@ -0,0 +1,39 @@
+package com.gitee.sop.adminbackend.service.doc;
+
+import com.gitee.fastmybatis.core.support.LambdaService;
+import com.gitee.sop.adminbackend.dao.entity.DocContent;
+import com.gitee.sop.adminbackend.dao.mapper.DocContentMapper;
+import org.springframework.stereotype.Service;
+
+
+/**
+ * @author 六如
+ */
+@Service
+public class DocContentService implements LambdaService {
+
+ public void saveContent(Long docInfoId, String content) {
+ DocContent docContent = this.get(DocContent::getDocInfoId, docInfoId);
+ boolean save = false;
+ if (docContent == null) {
+ save = true;
+ docContent = new DocContent();
+ }
+ docContent.setDocInfoId(docInfoId);
+ docContent.setContent(content);
+ if (save) {
+ this.save(docContent);
+ } else {
+ this.update(docContent);
+ }
+ }
+
+ public String getContent(Long docInfoId) {
+ return this.query()
+ .eq(DocContent::getDocInfoId, docInfoId)
+ .getValueOptional(DocContent::getContent)
+ .orElse("");
+ }
+
+
+}
diff --git a/sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/doc/DocInfoService.java b/sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/doc/DocInfoService.java
new file mode 100644
index 00000000..382767f2
--- /dev/null
+++ b/sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/doc/DocInfoService.java
@@ -0,0 +1,107 @@
+package com.gitee.sop.adminbackend.service.doc;
+
+import com.alibaba.fastjson2.JSON;
+import com.gitee.fastmybatis.core.support.LambdaService;
+import com.gitee.fastmybatis.core.util.TreeUtil;
+import com.gitee.sop.adminbackend.common.constants.YesOrNo;
+import com.gitee.sop.adminbackend.common.exception.BizException;
+import com.gitee.sop.adminbackend.common.util.CopyUtil;
+import com.gitee.sop.adminbackend.dao.entity.DocApp;
+import com.gitee.sop.adminbackend.dao.entity.DocInfo;
+import com.gitee.sop.adminbackend.dao.mapper.DocAppMapper;
+import com.gitee.sop.adminbackend.dao.mapper.DocInfoMapper;
+import com.gitee.sop.adminbackend.service.doc.dto.DocInfoPublishUpdateDTO;
+import com.gitee.sop.adminbackend.service.doc.dto.DocInfoTreeDTO;
+import com.gitee.sop.adminbackend.service.doc.dto.torna.TornaDocInfoViewDTO;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import org.springframework.util.CollectionUtils;
+
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Set;
+import java.util.stream.Collectors;
+
+
+/**
+ * @author 六如
+ */
+@Service
+public class DocInfoService implements LambdaService {
+
+ @Autowired
+ private DocAppMapper docAppMapper;
+ @Autowired
+ private DocContentService docContentService;
+
+ public List listChildDoc(Long parentId) {
+ return this.list(DocInfo::getParentId, parentId);
+ }
+
+ public List listDocTree(Long docAppId) {
+ List list = this.list(DocInfo::getDocAppId, docAppId);
+ if (CollectionUtils.isEmpty(list)) {
+ return new ArrayList<>(0);
+ }
+ List docInfoTreeDTOS = CopyUtil.copyList(list, DocInfoTreeDTO::new);
+ return TreeUtil.convertTree(docInfoTreeDTOS, 0L);
+ }
+
+ public int publish(DocInfoPublishUpdateDTO docInfoUpdateDTO) {
+ DocInfo docInfo = this.getById(docInfoUpdateDTO.getId());
+ Integer isPublish = docInfoUpdateDTO.getIsPublish();
+
+ // 如果是文件夹,发布下面所有的文档
+ int i;
+ if (YesOrNo.yes(docInfo.getIsFolder())) {
+ List children = this.listChildDoc(docInfo.getDocId());
+ Set ids = children.stream().map(DocInfo::getId).collect(Collectors.toSet());
+ i = this.query()
+ .in(DocInfo::getId, ids)
+ .set(DocInfo::getIsPublish, isPublish)
+ .update();
+ } else {
+ // 发布单个文档
+ i = this.query()
+ .eq(DocInfo::getId, docInfoUpdateDTO.getId())
+ .set(DocInfo::getIsPublish, isPublish)
+ .update();
+ }
+
+ // 发布一个接口自动发布所属应用
+ Long docAppId = docInfo.getDocAppId();
+ if (YesOrNo.yes(isPublish)) {
+ docAppMapper.query()
+ .eq(DocApp::getId, docAppId)
+ .set(DocApp::getIsPublish, isPublish)
+ .update();
+ } else {
+ // 如果应用下的接口都未发布,应用也改成未发布
+ long count = this.query()
+ .eq(DocInfo::getDocAppId, docAppId)
+ .eq(DocInfo::getIsFolder, YesOrNo.NO)
+ .eq(DocInfo::getIsPublish, YesOrNo.YES)
+ .getCount();
+ if (count == 0) {
+ docAppMapper.query()
+ .eq(DocApp::getId, docAppId)
+ .set(DocApp::getIsPublish, YesOrNo.NO)
+ .update();
+ }
+ }
+
+ return i;
+ }
+
+
+ public TornaDocInfoViewDTO getDocDetail(Long id) {
+ DocInfo docInfo = this.getById(id);
+ if (docInfo == null || !YesOrNo.yes(docInfo.getIsPublish())) {
+ throw new BizException("文档不存在");
+ }
+ String content = docContentService.getContent(docInfo.getId());
+ return JSON.parseObject(content, TornaDocInfoViewDTO.class);
+ }
+
+
+}
diff --git a/sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/doc/DocInfoSyncService.java b/sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/doc/DocInfoSyncService.java
new file mode 100644
index 00000000..73a4a36d
--- /dev/null
+++ b/sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/doc/DocInfoSyncService.java
@@ -0,0 +1,218 @@
+package com.gitee.sop.adminbackend.service.doc;
+
+import com.alibaba.fastjson2.JSON;
+import com.gitee.fastmybatis.core.util.TreeUtil;
+import com.gitee.sop.adminbackend.common.constants.YesOrNo;
+import com.gitee.sop.adminbackend.common.enums.DocSourceTypeEnum;
+import com.gitee.sop.adminbackend.dao.entity.DocApp;
+import com.gitee.sop.adminbackend.dao.entity.DocInfo;
+import com.gitee.sop.adminbackend.dao.mapper.DocAppMapper;
+import com.gitee.sop.adminbackend.service.doc.dto.torna.DocIdParam;
+import com.gitee.sop.adminbackend.service.doc.dto.torna.DocIdsParam;
+import com.gitee.sop.adminbackend.service.doc.dto.torna.TornaDocDTO;
+import com.gitee.sop.adminbackend.service.doc.dto.torna.TornaDocInfoDTO;
+import com.gitee.sop.adminbackend.service.doc.dto.torna.TornaDocInfoViewDTO;
+import com.gitee.sop.adminbackend.service.doc.dto.torna.TornaDocParamDTO;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import org.springframework.util.CollectionUtils;
+
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+import java.util.function.Function;
+import java.util.stream.Collectors;
+
+/**
+ * 接口信息同步
+ *
+ * @author 六如
+ */
+@Service
+public class DocInfoSyncService {
+
+ @Autowired
+ private TornaClient tornaClient;
+ @Autowired
+ private DocAppMapper docAppMapper;
+ @Autowired
+ private DocInfoService docInfoService;
+ @Autowired
+ private DocContentService docContentService;
+
+ public void syncAppDoc(Long docAppId) {
+ DocApp docApp = docAppMapper.getById(docAppId);
+ this.syncDocInfo(docApp, null);
+ }
+
+ public void syncDoc(Long docInfoId) {
+ DocInfo docInfo = docInfoService.getById(docInfoId);
+ DocApp docApp = docAppMapper.getById(docInfo.getDocAppId());
+ this.syncDocInfo(docApp, docInfoId);
+ }
+
+ public void syncDocInfo(DocApp docApp, Long docInfoId) {
+ Long docAppId = docApp.getId();
+ Map nameVersionMap = docInfoService.list(DocInfo::getDocAppId, docAppId)
+ .stream()
+ .collect(Collectors.toMap(docInfo -> docInfo.getDocName() + ":" + docInfo.getDocVersion(), Function.identity(), (v1, v2) -> v2));
+
+ String token = docApp.getToken();
+ // add doc
+ DocIdsParam docIdsParam = buildSearchParam(docInfoId);
+ TornaDocDTO tornaDocDTO = tornaClient.execute("doc.list", docIdsParam, token, TornaDocDTO.class);
+ List docList = tornaDocDTO.getDocList();
+ if (CollectionUtils.isEmpty(docList)) {
+ return;
+ }
+
+ List updateList = new ArrayList<>();
+ for (TornaDocInfoDTO tornaDocInfoDTO : docList) {
+ String key = buildKey(tornaDocInfoDTO);
+ DocInfo docInfo = nameVersionMap.get(key);
+ // 需要修改的文档
+ if (docInfo != null) {
+ docInfo.setDocId(tornaDocInfoDTO.getId());
+ docInfo.setDocTitle(tornaDocInfoDTO.getName());
+ docInfo.setDocCode("");
+ if (YesOrNo.yes(tornaDocInfoDTO.getIsFolder())) {
+ docInfo.setDocName(tornaDocInfoDTO.getName());
+ }
+ docInfo.setDocId(tornaDocInfoDTO.getId());
+ docInfo.setDocType(tornaDocInfoDTO.getType().intValue());
+ docInfo.setDescription(tornaDocInfoDTO.getDescription());
+ docInfo.setIsFolder(tornaDocInfoDTO.getIsFolder().intValue());
+ docInfo.setParentId(tornaDocInfoDTO.getParentId());
+ updateList.add(docInfo);
+ }
+ }
+ for (DocInfo docInfo : updateList) {
+ docInfoService.update(docInfo);
+ }
+
+ // 新增的文档
+ List saveList = docList.stream()
+ .filter(tornaDocInfoDTO -> {
+ String key = buildKey(tornaDocInfoDTO);
+ return !nameVersionMap.containsKey(key);
+ })
+ .map(tornaDocInfoDTO -> {
+ DocInfo docInfo = new DocInfo();
+ docInfo.setDocAppId(docAppId);
+ docInfo.setDocId(tornaDocInfoDTO.getId());
+ docInfo.setDocTitle(tornaDocInfoDTO.getName());
+ docInfo.setDocCode("");
+ docInfo.setDocType(tornaDocInfoDTO.getType().intValue());
+ docInfo.setSourceType(DocSourceTypeEnum.TORNA.getValue());
+ if (YesOrNo.yes(tornaDocInfoDTO.getIsFolder())) {
+ docInfo.setIsPublish(YesOrNo.YES);
+ docInfo.setDocName(tornaDocInfoDTO.getName());
+ } else {
+ docInfo.setIsPublish(YesOrNo.NO);
+ docInfo.setDocName(tornaDocInfoDTO.getUrl());
+ }
+ docInfo.setDocVersion(tornaDocInfoDTO.getVersion());
+ docInfo.setDescription(tornaDocInfoDTO.getDescription());
+ docInfo.setIsFolder(tornaDocInfoDTO.getIsFolder().intValue());
+ docInfo.setParentId(tornaDocInfoDTO.getParentId());
+ return docInfo;
+ })
+ .collect(Collectors.toList());
+ docInfoService.saveBatch(saveList);
+
+ Set docIds = docList.stream().map(TornaDocInfoDTO::getId).collect(Collectors.toSet());
+ this.syncContent(docApp, docIds);
+ }
+
+ private void syncContent(DocApp docApp, Set docIds) {
+ List list = docInfoService.query()
+ .eq(DocInfo::getDocAppId, docApp.getId())
+ .in(DocInfo::getDocId, docIds)
+ .list();
+
+ Map docIdMap = this.getContentMap(docApp.getToken(), docIds);
+ for (DocInfo docInfo : list) {
+ String content = docIdMap.getOrDefault(docInfo.getDocId(), "");
+ docContentService.saveContent(
+ docInfo.getId(),
+ content
+ );
+ }
+ }
+
+ /**
+ * 批量获取Torna文档内容
+ *
+ * @param token token
+ * @param docIds Torna文档id
+ * @return key:文档id, value:文档内容
+ */
+ private Map getContentMap(String token, Collection docIds) {
+ // 获取torna文档信息
+ List tornaDocInfoViewList = tornaClient.executeList(
+ "doc.details",
+ new DocIdsParam(docIds),
+ token,
+ TornaDocInfoViewDTO.class
+ );
+ for (TornaDocInfoViewDTO docInfoViewDTO : tornaDocInfoViewList) {
+ convertTree(docInfoViewDTO);
+ }
+ return tornaDocInfoViewList.stream()
+ .collect(Collectors.toMap(TornaDocInfoViewDTO::getId, JSON::toJSONString, (v1, v2) -> v1));
+ }
+
+ private String getContent(String token, Long docId) {
+ // 获取torna文档信息
+ TornaDocInfoViewDTO tornaDocInfoViewDTO = tornaClient.execute(
+ "doc.detail",
+ new DocIdParam(docId),
+ token,
+ TornaDocInfoViewDTO.class
+ );
+ convertTree(tornaDocInfoViewDTO);
+ return JSON.toJSONString(tornaDocInfoViewDTO);
+ }
+
+ private void convertTree(TornaDocInfoViewDTO tornaDocInfoViewDTO) {
+ List requestParams = tornaDocInfoViewDTO.getRequestParams();
+ List responseParams = tornaDocInfoViewDTO.getResponseParams();
+ List requestTree = TreeUtil.convertTree(requestParams, 0L);
+ List responseTree = TreeUtil.convertTree(responseParams, 0L);
+
+ tornaDocInfoViewDTO.setRequestParams(requestTree);
+ tornaDocInfoViewDTO.setResponseParams(responseTree);
+ }
+
+ private DocIdsParam buildSearchParam(Long docInfoId) {
+ if (docInfoId == null) {
+ return null;
+ }
+ DocIdsParam docIdsParam = new DocIdsParam();
+ DocInfo docInfo = docInfoService.getById(docInfoId);
+ List docIdList = new ArrayList<>();
+ docIdList.add(docInfo.getDocId());
+ // 如果是文件夹,找下面的子文档
+ if (YesOrNo.yes(docInfo.getIsFolder())) {
+ List docIds = this.listChildrenDocId(docInfo.getDocId());
+ docIdList.addAll(docIds);
+ }
+ docIdsParam.setDocIds(docIdList);
+ return docIdsParam;
+ }
+
+ private List listChildrenDocId(Long parentId) {
+ return docInfoService.query()
+ .eq(DocInfo::getParentId, parentId)
+ .listValue(DocInfo::getDocId);
+ }
+
+ private String buildKey(TornaDocInfoDTO tornaDocInfoDTO) {
+ return YesOrNo.yes(tornaDocInfoDTO.getIsFolder()) ?
+ tornaDocInfoDTO.getName() + ":" + tornaDocInfoDTO.getVersion()
+ : tornaDocInfoDTO.getUrl() + ":" + tornaDocInfoDTO.getVersion();
+ }
+
+}
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/doc/DocSettingService.java b/sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/doc/DocSettingService.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/doc/DocSettingService.java
rename to sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/doc/DocSettingService.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/doc/TornaClient.java b/sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/doc/TornaClient.java
similarity index 77%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/doc/TornaClient.java
rename to sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/doc/TornaClient.java
index 8eb22eb4..71b875d4 100644
--- a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/doc/TornaClient.java
+++ b/sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/doc/TornaClient.java
@@ -9,9 +9,13 @@ import com.gitee.sop.adminbackend.common.exception.BizException;
import org.springframework.stereotype.Component;
import org.springframework.util.ObjectUtils;
import org.springframework.util.StringUtils;
+import org.springframework.web.util.UriUtils;
import java.io.IOException;
+import java.nio.charset.StandardCharsets;
+import java.util.HashMap;
import java.util.List;
+import java.util.Map;
import java.util.Objects;
/**
@@ -31,14 +35,15 @@ public class TornaClient {
}
private JSONObject request(String name, Object param, String token) {
+ Map params = new HashMap<>();
+ params.put("name", name);
+ params.put("access_token", token);
+ if (param != null) {
+ String json = JSON.toJSONString(param);
+ params.put("data", UriUtils.encode(json, StandardCharsets.UTF_8));
+ }
try {
- HttpHelper httpHelper = HttpHelper.get(getTornaApiUrl())
- .parameter("name", name)
- .parameter("access_token", token);
- if (param != null) {
- httpHelper.parameter("data", JSON.toJSONString(param));
- }
- String body = httpHelper
+ String body = HttpHelper.postJson(getTornaApiUrl(), JSON.toJSONString(params))
.execute()
.asString();
JSONObject jsonObject = JSON.parseObject(body);
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/doc/dto/DocAppDTO.java b/sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/doc/dto/DocAppDTO.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/doc/dto/DocAppDTO.java
rename to sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/doc/dto/DocAppDTO.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/doc/dto/DocInfoConfigDTO.java b/sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/doc/dto/DocInfoConfigDTO.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/doc/dto/DocInfoConfigDTO.java
rename to sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/doc/dto/DocInfoConfigDTO.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/doc/dto/DocInfoPublishUpdateDTO.java b/sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/doc/dto/DocInfoPublishUpdateDTO.java
similarity index 86%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/doc/dto/DocInfoPublishUpdateDTO.java
rename to sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/doc/dto/DocInfoPublishUpdateDTO.java
index 80d335db..38e58bdf 100644
--- a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/doc/dto/DocInfoPublishUpdateDTO.java
+++ b/sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/doc/dto/DocInfoPublishUpdateDTO.java
@@ -13,6 +13,9 @@ public class DocInfoPublishUpdateDTO {
@NotNull
private Long id;
+ /**
+ * 1-发布,0-下线
+ */
private Integer isPublish;
}
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/doc/dto/DocInfoTreeDTO.java b/sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/doc/dto/DocInfoTreeDTO.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/doc/dto/DocInfoTreeDTO.java
rename to sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/doc/dto/DocInfoTreeDTO.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/doc/dto/DocInfoViewDTO.java b/sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/doc/dto/DocInfoViewDTO.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/doc/dto/DocInfoViewDTO.java
rename to sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/doc/dto/DocInfoViewDTO.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/doc/dto/DocSettingDTO.java b/sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/doc/dto/DocSettingDTO.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/doc/dto/DocSettingDTO.java
rename to sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/doc/dto/DocSettingDTO.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/doc/dto/torna/DocIdParam.java b/sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/doc/dto/torna/DocIdParam.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/doc/dto/torna/DocIdParam.java
rename to sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/doc/dto/torna/DocIdParam.java
diff --git a/sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/doc/dto/torna/DocIdsParam.java b/sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/doc/dto/torna/DocIdsParam.java
new file mode 100644
index 00000000..94cb8f8f
--- /dev/null
+++ b/sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/doc/dto/torna/DocIdsParam.java
@@ -0,0 +1,22 @@
+package com.gitee.sop.adminbackend.service.doc.dto.torna;
+
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import javax.validation.constraints.NotNull;
+import java.util.Collection;
+
+/**
+ * @author 六如
+ */
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class DocIdsParam {
+
+ @NotNull
+ private Collection docIds;
+
+
+}
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/doc/dto/torna/TornaDocDTO.java b/sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/doc/dto/torna/TornaDocDTO.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/doc/dto/torna/TornaDocDTO.java
rename to sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/doc/dto/torna/TornaDocDTO.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/doc/dto/torna/TornaDocInfoDTO.java b/sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/doc/dto/torna/TornaDocInfoDTO.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/doc/dto/torna/TornaDocInfoDTO.java
rename to sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/doc/dto/torna/TornaDocInfoDTO.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/doc/dto/torna/TornaDocInfoViewDTO.java b/sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/doc/dto/torna/TornaDocInfoViewDTO.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/doc/dto/torna/TornaDocInfoViewDTO.java
rename to sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/doc/dto/torna/TornaDocInfoViewDTO.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/doc/dto/torna/TornaDocParamDTO.java b/sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/doc/dto/torna/TornaDocParamDTO.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/doc/dto/torna/TornaDocParamDTO.java
rename to sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/doc/dto/torna/TornaDocParamDTO.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/doc/dto/torna/TornaModuleDTO.java b/sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/doc/dto/torna/TornaModuleDTO.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/doc/dto/torna/TornaModuleDTO.java
rename to sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/doc/dto/torna/TornaModuleDTO.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/isv/IsvInfoService.java b/sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/isv/IsvInfoService.java
similarity index 97%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/isv/IsvInfoService.java
rename to sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/isv/IsvInfoService.java
index f3306189..66514111 100644
--- a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/isv/IsvInfoService.java
+++ b/sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/isv/IsvInfoService.java
@@ -7,7 +7,7 @@ import com.gitee.sop.adminbackend.common.util.RSATool;
import com.gitee.sop.adminbackend.common.context.SpringContext;
import com.gitee.sop.adminbackend.common.dto.StatusUpdateDTO;
import com.gitee.sop.adminbackend.common.enums.StatusEnum;
-import com.gitee.sop.adminbackend.common.enums.YesOrNoEnum;
+import com.gitee.sop.adminbackend.common.constants.YesOrNo;
import com.gitee.sop.adminbackend.dao.entity.IsvInfo;
import com.gitee.sop.adminbackend.dao.entity.IsvKeys;
import com.gitee.sop.adminbackend.dao.mapper.IsvInfoMapper;
@@ -75,7 +75,7 @@ public class IsvInfoService implements LambdaService {
isvKeys.getPublicKeyPlatform()
);
}
- isvInfoDTO.setHasKeys(YesOrNoEnum.of(hasKey).getValue());
+ isvInfoDTO.setHasKeys(YesOrNo.of(hasKey));
List groupNames = isvGroupMap.getOrDefault(isvInfo.getId(), Collections.emptyList());
isvInfoDTO.setGroupNames(String.join("/", groupNames));
return isvInfoDTO;
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/isv/IsvKeysService.java b/sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/isv/IsvKeysService.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/isv/IsvKeysService.java
rename to sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/isv/IsvKeysService.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/isv/PermGroupPermissionService.java b/sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/isv/PermGroupPermissionService.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/isv/PermGroupPermissionService.java
rename to sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/isv/PermGroupPermissionService.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/isv/PermGroupService.java b/sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/isv/PermGroupService.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/isv/PermGroupService.java
rename to sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/isv/PermGroupService.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/isv/PermIsvGroupService.java b/sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/isv/PermIsvGroupService.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/isv/PermIsvGroupService.java
rename to sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/isv/PermIsvGroupService.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/isv/dto/IsvGroupSettingDTO.java b/sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/isv/dto/IsvGroupSettingDTO.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/isv/dto/IsvGroupSettingDTO.java
rename to sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/isv/dto/IsvGroupSettingDTO.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/isv/dto/IsvInfoAddDTO.java b/sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/isv/dto/IsvInfoAddDTO.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/isv/dto/IsvInfoAddDTO.java
rename to sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/isv/dto/IsvInfoAddDTO.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/isv/dto/IsvInfoDTO.java b/sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/isv/dto/IsvInfoDTO.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/isv/dto/IsvInfoDTO.java
rename to sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/isv/dto/IsvInfoDTO.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/isv/dto/IsvInfoUpdateDTO.java b/sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/isv/dto/IsvInfoUpdateDTO.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/isv/dto/IsvInfoUpdateDTO.java
rename to sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/isv/dto/IsvInfoUpdateDTO.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/isv/dto/IsvInfoUpdateKeysDTO.java b/sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/isv/dto/IsvInfoUpdateKeysDTO.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/isv/dto/IsvInfoUpdateKeysDTO.java
rename to sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/isv/dto/IsvInfoUpdateKeysDTO.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/isv/dto/IsvKeysDTO.java b/sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/isv/dto/IsvKeysDTO.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/isv/dto/IsvKeysDTO.java
rename to sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/isv/dto/IsvKeysDTO.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/isv/dto/IsvKeysGenDTO.java b/sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/isv/dto/IsvKeysGenDTO.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/isv/dto/IsvKeysGenDTO.java
rename to sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/isv/dto/IsvKeysGenDTO.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/isv/dto/PermGroupPermissionDTO.java b/sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/isv/dto/PermGroupPermissionDTO.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/isv/dto/PermGroupPermissionDTO.java
rename to sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/isv/dto/PermGroupPermissionDTO.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/isv/event/ChangeApiInfoEvent.java b/sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/isv/event/ChangeApiInfoEvent.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/isv/event/ChangeApiInfoEvent.java
rename to sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/isv/event/ChangeApiInfoEvent.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/isv/event/ChangeIsvInfoEvent.java b/sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/isv/event/ChangeIsvInfoEvent.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/isv/event/ChangeIsvInfoEvent.java
rename to sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/isv/event/ChangeIsvInfoEvent.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/isv/event/ChangeIsvKeyEvent.java b/sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/isv/event/ChangeIsvKeyEvent.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/isv/event/ChangeIsvKeyEvent.java
rename to sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/isv/event/ChangeIsvKeyEvent.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/isv/event/ChangeIsvPermEvent.java b/sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/isv/event/ChangeIsvPermEvent.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/isv/event/ChangeIsvPermEvent.java
rename to sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/isv/event/ChangeIsvPermEvent.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/isv/listener/ChangeListener.java b/sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/isv/listener/ChangeListener.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/isv/listener/ChangeListener.java
rename to sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/isv/listener/ChangeListener.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/serve/ApiInfoService.java b/sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/serve/ApiInfoService.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/serve/ApiInfoService.java
rename to sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/serve/ApiInfoService.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/sys/SysAdminUserService.java b/sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/sys/SysAdminUserService.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/sys/SysAdminUserService.java
rename to sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/sys/SysAdminUserService.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/sys/SysConfigService.java b/sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/sys/SysConfigService.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/sys/SysConfigService.java
rename to sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/sys/SysConfigService.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/sys/UpgradeService.java b/sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/sys/UpgradeService.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/sys/UpgradeService.java
rename to sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/sys/UpgradeService.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/sys/dto/SystemConfigDTO.java b/sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/sys/dto/SystemConfigDTO.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/sys/dto/SystemConfigDTO.java
rename to sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/sys/dto/SystemConfigDTO.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/sys/login/LoginService.java b/sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/sys/login/LoginService.java
similarity index 98%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/sys/login/LoginService.java
rename to sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/sys/login/LoginService.java
index b5d32c31..735a423d 100644
--- a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/sys/login/LoginService.java
+++ b/sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/sys/login/LoginService.java
@@ -1,10 +1,10 @@
package com.gitee.sop.adminbackend.service.sys.login;
-import com.alibaba.nacos.shaded.com.google.common.collect.Sets;
import com.gitee.sop.adminbackend.common.enums.ConfigKeyEnum;
import com.gitee.sop.adminbackend.common.enums.StatusEnum;
import com.gitee.sop.adminbackend.common.exception.BizException;
import com.gitee.sop.adminbackend.common.config.Configs;
+import com.gitee.sop.adminbackend.common.manager.UserCacheManager;
import com.gitee.sop.adminbackend.dao.entity.SysAdminUser;
import com.gitee.sop.adminbackend.service.sys.SysAdminUserService;
import com.gitee.sop.adminbackend.service.sys.login.dto.LoginDTO;
@@ -15,6 +15,7 @@ import com.gitee.sop.adminbackend.service.sys.login.enums.RegTypeEnum;
import com.gitee.sop.adminbackend.common.util.CopyUtil;
import com.gitee.sop.adminbackend.common.util.GenerateUtil;
import com.gitee.sop.adminbackend.common.util.JwtUtil;
+import com.google.common.collect.Sets;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.math.NumberUtils;
import org.springframework.beans.factory.annotation.Autowired;
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/sys/login/NotNullStringBuilder.java b/sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/sys/login/NotNullStringBuilder.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/sys/login/NotNullStringBuilder.java
rename to sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/sys/login/NotNullStringBuilder.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/sys/login/ThirdPartyLoginManager.java b/sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/sys/login/ThirdPartyLoginManager.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/sys/login/ThirdPartyLoginManager.java
rename to sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/sys/login/ThirdPartyLoginManager.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/sys/login/dto/LoginDTO.java b/sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/sys/login/dto/LoginDTO.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/sys/login/dto/LoginDTO.java
rename to sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/sys/login/dto/LoginDTO.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/sys/login/dto/LoginForm.java b/sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/sys/login/dto/LoginForm.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/sys/login/dto/LoginForm.java
rename to sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/sys/login/dto/LoginForm.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/sys/login/dto/LoginResult.java b/sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/sys/login/dto/LoginResult.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/sys/login/dto/LoginResult.java
rename to sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/sys/login/dto/LoginResult.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/sys/login/dto/LoginUser.java b/sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/sys/login/dto/LoginUser.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/sys/login/dto/LoginUser.java
rename to sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/sys/login/dto/LoginUser.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/sys/login/enums/RegTypeEnum.java b/sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/sys/login/enums/RegTypeEnum.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/sys/login/enums/RegTypeEnum.java
rename to sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/sys/login/enums/RegTypeEnum.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/sys/login/impl/DefaultUserCacheManager.java b/sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/sys/login/impl/DefaultUserCacheManager.java
similarity index 97%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/sys/login/impl/DefaultUserCacheManager.java
rename to sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/sys/login/impl/DefaultUserCacheManager.java
index a8b53aff..6b111e73 100644
--- a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/sys/login/impl/DefaultUserCacheManager.java
+++ b/sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/sys/login/impl/DefaultUserCacheManager.java
@@ -4,7 +4,7 @@ import com.gitee.sop.adminbackend.common.user.User;
import com.gitee.sop.adminbackend.common.enums.StatusEnum;
import com.gitee.sop.adminbackend.dao.entity.SysAdminUser;
import com.gitee.sop.adminbackend.service.sys.SysAdminUserService;
-import com.gitee.sop.adminbackend.service.sys.login.UserCacheManager;
+import com.gitee.sop.adminbackend.common.manager.UserCacheManager;
import com.gitee.sop.adminbackend.service.sys.login.dto.LoginUser;
import com.gitee.sop.adminbackend.common.util.CopyUtil;
import com.google.common.cache.CacheBuilder;
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/website/WebsiteService.java b/sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/website/WebsiteService.java
similarity index 93%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/website/WebsiteService.java
rename to sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/website/WebsiteService.java
index a4550c1b..40baa20d 100644
--- a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/website/WebsiteService.java
+++ b/sop-admin/sop-admin-backend/backend-service/src/main/java/com/gitee/sop/adminbackend/service/website/WebsiteService.java
@@ -1,7 +1,7 @@
package com.gitee.sop.adminbackend.service.website;
import com.gitee.fastmybatis.core.util.TreeUtil;
-import com.gitee.sop.adminbackend.common.enums.YesOrNoEnum;
+import com.gitee.sop.adminbackend.common.constants.YesOrNo;
import com.gitee.sop.adminbackend.common.util.CopyUtil;
import com.gitee.sop.adminbackend.dao.entity.DocApp;
import com.gitee.sop.adminbackend.dao.entity.DocInfo;
@@ -33,14 +33,14 @@ public class WebsiteService {
private DocSettingService docSettingService;
public List listDocApp() {
- List docApps = docAppService.list(DocApp::getIsPublish, YesOrNoEnum.YES.getValue());
+ List docApps = docAppService.list(DocApp::getIsPublish, YesOrNo.YES);
return CopyUtil.copyList(docApps, DocAppDTO::new);
}
public List listDocMenuTree(Long docAppId) {
List list = docInfoService.query()
.eq(DocInfo::getDocAppId, docAppId)
- .eq(DocInfo::getIsPublish, YesOrNoEnum.YES.getValue())
+ .eq(DocInfo::getIsPublish, YesOrNo.YES)
.list();
List treeList = CopyUtil.copyList(list, DocInfoTreeDTO::new);
return TreeUtil.convertTree(treeList, 0L);
diff --git a/sop-admin/sop-admin-backend/backend-web/pom.xml b/sop-admin/sop-admin-backend/backend-web/pom.xml
new file mode 100644
index 00000000..69075ca8
--- /dev/null
+++ b/sop-admin/sop-admin-backend/backend-web/pom.xml
@@ -0,0 +1,34 @@
+
+
+ 4.0.0
+
+ com.gitee.sop
+ sop-admin-backend
+ 5.0.0-SNAPSHOT
+
+
+ backend-web
+
+
+ 8
+ 8
+ UTF-8
+
+
+
+
+ com.gitee.sop
+ backend-service
+ 5.0.0-SNAPSHOT
+
+
+
+ org.projectlombok
+ lombok
+ true
+
+
+
+
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/controller/ExceptionHandlerController.java b/sop-admin/sop-admin-backend/backend-web/src/main/java/com/gitee/sop/adminbackend/controller/ExceptionHandlerController.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/controller/ExceptionHandlerController.java
rename to sop-admin/sop-admin-backend/backend-web/src/main/java/com/gitee/sop/adminbackend/controller/ExceptionHandlerController.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/controller/doc/DocController.java b/sop-admin/sop-admin-backend/backend-web/src/main/java/com/gitee/sop/adminbackend/controller/doc/DocController.java
similarity index 85%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/controller/doc/DocController.java
rename to sop-admin/sop-admin-backend/backend-web/src/main/java/com/gitee/sop/adminbackend/controller/doc/DocController.java
index 0e7beb3e..30a0d9fa 100644
--- a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/controller/doc/DocController.java
+++ b/sop-admin/sop-admin-backend/backend-web/src/main/java/com/gitee/sop/adminbackend/controller/doc/DocController.java
@@ -9,6 +9,7 @@ import com.gitee.sop.adminbackend.controller.doc.vo.DocAppVO;
import com.gitee.sop.adminbackend.controller.doc.vo.DocInfoTreeVO;
import com.gitee.sop.adminbackend.service.doc.DocAppService;
import com.gitee.sop.adminbackend.service.doc.DocInfoService;
+import com.gitee.sop.adminbackend.service.doc.DocInfoSyncService;
import com.gitee.sop.adminbackend.service.doc.dto.DocAppDTO;
import com.gitee.sop.adminbackend.service.doc.dto.DocInfoPublishUpdateDTO;
import com.gitee.sop.adminbackend.service.doc.dto.DocInfoTreeDTO;
@@ -34,6 +35,8 @@ public class DocController {
private DocInfoService docInfoService;
@Autowired
private DocAppService docAppService;
+ @Autowired
+ private DocInfoSyncService docInfoSyncService;
@GetMapping("app/list")
public Result> listApp() {
@@ -48,9 +51,15 @@ public class DocController {
return Result.ok(docAppId);
}
+ @PostMapping("app/syncAppDoc")
+ public Result syncAppDoc(@Validated @RequestBody IdParam param) {
+ docInfoSyncService.syncAppDoc(param.getId());
+ return Result.ok(1);
+ }
+
@PostMapping("app/syncDoc")
- public Result syncDocInfo(@Validated @RequestBody IdParam param) {
- docInfoService.syncDocInfo(param.getId());
+ public Result syncDoc(@Validated @RequestBody IdParam param) {
+ docInfoSyncService.syncDoc(param.getId());
return Result.ok(1);
}
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/controller/doc/DocSettingController.java b/sop-admin/sop-admin-backend/backend-web/src/main/java/com/gitee/sop/adminbackend/controller/doc/DocSettingController.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/controller/doc/DocSettingController.java
rename to sop-admin/sop-admin-backend/backend-web/src/main/java/com/gitee/sop/adminbackend/controller/doc/DocSettingController.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/controller/doc/param/DocAppAddParam.java b/sop-admin/sop-admin-backend/backend-web/src/main/java/com/gitee/sop/adminbackend/controller/doc/param/DocAppAddParam.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/controller/doc/param/DocAppAddParam.java
rename to sop-admin/sop-admin-backend/backend-web/src/main/java/com/gitee/sop/adminbackend/controller/doc/param/DocAppAddParam.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/controller/doc/param/DocInfoUpdateParam.java b/sop-admin/sop-admin-backend/backend-web/src/main/java/com/gitee/sop/adminbackend/controller/doc/param/DocInfoUpdateParam.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/controller/doc/param/DocInfoUpdateParam.java
rename to sop-admin/sop-admin-backend/backend-web/src/main/java/com/gitee/sop/adminbackend/controller/doc/param/DocInfoUpdateParam.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/controller/doc/vo/DocAppVO.java b/sop-admin/sop-admin-backend/backend-web/src/main/java/com/gitee/sop/adminbackend/controller/doc/vo/DocAppVO.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/controller/doc/vo/DocAppVO.java
rename to sop-admin/sop-admin-backend/backend-web/src/main/java/com/gitee/sop/adminbackend/controller/doc/vo/DocAppVO.java
diff --git a/sop-admin/sop-admin-backend/backend-web/src/main/java/com/gitee/sop/adminbackend/controller/doc/vo/DocInfoTreeVO.java b/sop-admin/sop-admin-backend/backend-web/src/main/java/com/gitee/sop/adminbackend/controller/doc/vo/DocInfoTreeVO.java
new file mode 100644
index 00000000..ee1400a5
--- /dev/null
+++ b/sop-admin/sop-admin-backend/backend-web/src/main/java/com/gitee/sop/adminbackend/controller/doc/vo/DocInfoTreeVO.java
@@ -0,0 +1,126 @@
+package com.gitee.sop.adminbackend.controller.doc.vo;
+
+import com.gitee.fastmybatis.core.support.TreeNode;
+import com.gitee.sop.adminbackend.common.constants.YesOrNo;
+import lombok.Data;
+
+import java.time.LocalDateTime;
+import java.util.List;
+import java.util.Objects;
+
+
+/**
+ * 备注:文档信息
+ *
+ * @author 六如
+ */
+@Data
+public class DocInfoTreeVO implements TreeNode {
+
+ /**
+ * id
+ */
+ private Long id;
+
+ /**
+ * doc_app.id
+ */
+ private Long docAppId;
+
+ /**
+ * 远程文档id
+ */
+ private Long docId;
+
+ /**
+ * 文档标题
+ */
+ private String docTitle;
+
+ /**
+ * 文档code
+ */
+ private String docCode;
+
+ /**
+ * 文档类型,1-dubbo,2-富文本,3-Markdown
+ */
+ private Integer docType;
+
+ /**
+ * 来源类型,1-torna,2-自建
+ */
+ private Integer sourceType;
+
+ /**
+ * 文档名称
+ */
+ private String docName;
+
+ /**
+ * 版本号
+ */
+ private String docVersion;
+
+ /**
+ * 描述
+ */
+ private String description;
+
+ /**
+ * 是否分类
+ */
+ private Integer isFolder;
+
+ /**
+ * 状态, 0-未发布,1-已发布
+ */
+ private Integer isPublish;
+
+ /**
+ * 父节点id, 对应docId
+ */
+ private Long parentId;
+
+ /**
+ * 添加时间
+ */
+ private LocalDateTime addTime;
+
+ /**
+ * 修改时间
+ */
+ private LocalDateTime updateTime;
+
+ /**
+ * 创建人id
+ */
+ private Long addBy;
+
+ /**
+ * 修改人id
+ */
+ private Long updateBy;
+
+
+ private List children;
+
+
+ @Override
+ public Long takeId() {
+ return docId;
+ }
+
+ @Override
+ public Long takeParentId() {
+ return parentId;
+ }
+
+
+ public String getDocName() {
+ if (Objects.equals(isFolder, YesOrNo.YES)) {
+ return "";
+ }
+ return docName;
+ }
+}
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/controller/doc/vo/DocSettingVO.java b/sop-admin/sop-admin-backend/backend-web/src/main/java/com/gitee/sop/adminbackend/controller/doc/vo/DocSettingVO.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/controller/doc/vo/DocSettingVO.java
rename to sop-admin/sop-admin-backend/backend-web/src/main/java/com/gitee/sop/adminbackend/controller/doc/vo/DocSettingVO.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/controller/isv/IsvInfoController.java b/sop-admin/sop-admin-backend/backend-web/src/main/java/com/gitee/sop/adminbackend/controller/isv/IsvInfoController.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/controller/isv/IsvInfoController.java
rename to sop-admin/sop-admin-backend/backend-web/src/main/java/com/gitee/sop/adminbackend/controller/isv/IsvInfoController.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/controller/isv/PermGroupController.java b/sop-admin/sop-admin-backend/backend-web/src/main/java/com/gitee/sop/adminbackend/controller/isv/PermGroupController.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/controller/isv/PermGroupController.java
rename to sop-admin/sop-admin-backend/backend-web/src/main/java/com/gitee/sop/adminbackend/controller/isv/PermGroupController.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/controller/isv/PermGroupPermissionController.java b/sop-admin/sop-admin-backend/backend-web/src/main/java/com/gitee/sop/adminbackend/controller/isv/PermGroupPermissionController.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/controller/isv/PermGroupPermissionController.java
rename to sop-admin/sop-admin-backend/backend-web/src/main/java/com/gitee/sop/adminbackend/controller/isv/PermGroupPermissionController.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/controller/isv/PermIsvGroupController.java b/sop-admin/sop-admin-backend/backend-web/src/main/java/com/gitee/sop/adminbackend/controller/isv/PermIsvGroupController.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/controller/isv/PermIsvGroupController.java
rename to sop-admin/sop-admin-backend/backend-web/src/main/java/com/gitee/sop/adminbackend/controller/isv/PermIsvGroupController.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/controller/isv/param/IsvGroupSettingParam.java b/sop-admin/sop-admin-backend/backend-web/src/main/java/com/gitee/sop/adminbackend/controller/isv/param/IsvGroupSettingParam.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/controller/isv/param/IsvGroupSettingParam.java
rename to sop-admin/sop-admin-backend/backend-web/src/main/java/com/gitee/sop/adminbackend/controller/isv/param/IsvGroupSettingParam.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/controller/isv/param/IsvInfoAddParam.java b/sop-admin/sop-admin-backend/backend-web/src/main/java/com/gitee/sop/adminbackend/controller/isv/param/IsvInfoAddParam.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/controller/isv/param/IsvInfoAddParam.java
rename to sop-admin/sop-admin-backend/backend-web/src/main/java/com/gitee/sop/adminbackend/controller/isv/param/IsvInfoAddParam.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/controller/isv/param/IsvInfoUpdateKeysParam.java b/sop-admin/sop-admin-backend/backend-web/src/main/java/com/gitee/sop/adminbackend/controller/isv/param/IsvInfoUpdateKeysParam.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/controller/isv/param/IsvInfoUpdateKeysParam.java
rename to sop-admin/sop-admin-backend/backend-web/src/main/java/com/gitee/sop/adminbackend/controller/isv/param/IsvInfoUpdateKeysParam.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/controller/isv/param/IsvInfoUpdateParam.java b/sop-admin/sop-admin-backend/backend-web/src/main/java/com/gitee/sop/adminbackend/controller/isv/param/IsvInfoUpdateParam.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/controller/isv/param/IsvInfoUpdateParam.java
rename to sop-admin/sop-admin-backend/backend-web/src/main/java/com/gitee/sop/adminbackend/controller/isv/param/IsvInfoUpdateParam.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/controller/isv/param/IsvKeysGenParam.java b/sop-admin/sop-admin-backend/backend-web/src/main/java/com/gitee/sop/adminbackend/controller/isv/param/IsvKeysGenParam.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/controller/isv/param/IsvKeysGenParam.java
rename to sop-admin/sop-admin-backend/backend-web/src/main/java/com/gitee/sop/adminbackend/controller/isv/param/IsvKeysGenParam.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/controller/isv/param/PermGroupApiInfoParam.java b/sop-admin/sop-admin-backend/backend-web/src/main/java/com/gitee/sop/adminbackend/controller/isv/param/PermGroupApiInfoParam.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/controller/isv/param/PermGroupApiInfoParam.java
rename to sop-admin/sop-admin-backend/backend-web/src/main/java/com/gitee/sop/adminbackend/controller/isv/param/PermGroupApiInfoParam.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/controller/isv/param/PermGroupPageParam.java b/sop-admin/sop-admin-backend/backend-web/src/main/java/com/gitee/sop/adminbackend/controller/isv/param/PermGroupPageParam.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/controller/isv/param/PermGroupPageParam.java
rename to sop-admin/sop-admin-backend/backend-web/src/main/java/com/gitee/sop/adminbackend/controller/isv/param/PermGroupPageParam.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/controller/isv/param/PermGroupParam.java b/sop-admin/sop-admin-backend/backend-web/src/main/java/com/gitee/sop/adminbackend/controller/isv/param/PermGroupParam.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/controller/isv/param/PermGroupParam.java
rename to sop-admin/sop-admin-backend/backend-web/src/main/java/com/gitee/sop/adminbackend/controller/isv/param/PermGroupParam.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/controller/isv/param/PermGroupPermissionParam.java b/sop-admin/sop-admin-backend/backend-web/src/main/java/com/gitee/sop/adminbackend/controller/isv/param/PermGroupPermissionParam.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/controller/isv/param/PermGroupPermissionParam.java
rename to sop-admin/sop-admin-backend/backend-web/src/main/java/com/gitee/sop/adminbackend/controller/isv/param/PermGroupPermissionParam.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/controller/serve/ApiInfoController.java b/sop-admin/sop-admin-backend/backend-web/src/main/java/com/gitee/sop/adminbackend/controller/serve/ApiInfoController.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/controller/serve/ApiInfoController.java
rename to sop-admin/sop-admin-backend/backend-web/src/main/java/com/gitee/sop/adminbackend/controller/serve/ApiInfoController.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/controller/serve/param/ApiInfoPageParam.java b/sop-admin/sop-admin-backend/backend-web/src/main/java/com/gitee/sop/adminbackend/controller/serve/param/ApiInfoPageParam.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/controller/serve/param/ApiInfoPageParam.java
rename to sop-admin/sop-admin-backend/backend-web/src/main/java/com/gitee/sop/adminbackend/controller/serve/param/ApiInfoPageParam.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/controller/serve/param/ApiInfoParam.java b/sop-admin/sop-admin-backend/backend-web/src/main/java/com/gitee/sop/adminbackend/controller/serve/param/ApiInfoParam.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/controller/serve/param/ApiInfoParam.java
rename to sop-admin/sop-admin-backend/backend-web/src/main/java/com/gitee/sop/adminbackend/controller/serve/param/ApiInfoParam.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/controller/sys/LoginController.java b/sop-admin/sop-admin-backend/backend-web/src/main/java/com/gitee/sop/adminbackend/controller/sys/LoginController.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/controller/sys/LoginController.java
rename to sop-admin/sop-admin-backend/backend-web/src/main/java/com/gitee/sop/adminbackend/controller/sys/LoginController.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/controller/sys/SysAdminUserController.java b/sop-admin/sop-admin-backend/backend-web/src/main/java/com/gitee/sop/adminbackend/controller/sys/SysAdminUserController.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/controller/sys/SysAdminUserController.java
rename to sop-admin/sop-admin-backend/backend-web/src/main/java/com/gitee/sop/adminbackend/controller/sys/SysAdminUserController.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/controller/sys/SysConfigController.java b/sop-admin/sop-admin-backend/backend-web/src/main/java/com/gitee/sop/adminbackend/controller/sys/SysConfigController.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/controller/sys/SysConfigController.java
rename to sop-admin/sop-admin-backend/backend-web/src/main/java/com/gitee/sop/adminbackend/controller/sys/SysConfigController.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/controller/sys/param/ConfigSettingParam.java b/sop-admin/sop-admin-backend/backend-web/src/main/java/com/gitee/sop/adminbackend/controller/sys/param/ConfigSettingParam.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/controller/sys/param/ConfigSettingParam.java
rename to sop-admin/sop-admin-backend/backend-web/src/main/java/com/gitee/sop/adminbackend/controller/sys/param/ConfigSettingParam.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/controller/sys/param/LoginParam.java b/sop-admin/sop-admin-backend/backend-web/src/main/java/com/gitee/sop/adminbackend/controller/sys/param/LoginParam.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/controller/sys/param/LoginParam.java
rename to sop-admin/sop-admin-backend/backend-web/src/main/java/com/gitee/sop/adminbackend/controller/sys/param/LoginParam.java
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/controller/sys/vo/LoginResultVO.java b/sop-admin/sop-admin-backend/backend-web/src/main/java/com/gitee/sop/adminbackend/controller/sys/vo/LoginResultVO.java
similarity index 100%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/controller/sys/vo/LoginResultVO.java
rename to sop-admin/sop-admin-backend/backend-web/src/main/java/com/gitee/sop/adminbackend/controller/sys/vo/LoginResultVO.java
diff --git a/sop-admin/sop-admin-backend/pom.xml b/sop-admin/sop-admin-backend/pom.xml
index 4e22b2aa..5616d991 100644
--- a/sop-admin/sop-admin-backend/pom.xml
+++ b/sop-admin/sop-admin-backend/pom.xml
@@ -10,6 +10,7 @@
sop-admin-backend
+ pom
8
@@ -18,173 +19,13 @@
-
-
- com.gitee.sop
- sop-service-support
- 5.0.0-SNAPSHOT
-
-
-
- org.springframework.boot
- spring-boot-starter
-
-
-
- org.springframework.boot
- spring-boot-starter-web
-
-
-
- org.apache.dubbo
- dubbo-spring-boot-starter
-
-
-
-
- org.apache.dubbo
- dubbo-nacos-spring-boot-starter
-
-
-
- io.gitee.durcframework
- fastmybatis-spring-boot-starter
-
-
-
- mysql
- mysql-connector-java
-
-
-
- org.springframework.boot
- spring-boot-starter-jdbc
-
-
-
- org.springframework.boot
- spring-boot-starter-data-redis
-
-
-
-
- commons-codec
- commons-codec
-
-
- org.apache.commons
- commons-lang3
-
-
- commons-fileupload
- commons-fileupload
-
-
-
- org.hibernate
- hibernate-validator
-
-
-
- com.fasterxml.jackson.dataformat
- jackson-dataformat-xml
-
-
- com.auth0
- java-jwt
-
-
-
- org.springframework.security
- spring-security-crypto
-
-
-
- net.oschina.durcframework
- http-helper
-
-
-
-
-
- org.springframework.boot
- spring-boot-starter-test
- test
-
-
-
-
-
-
- org.apache.dubbo
- dubbo-dependencies-zookeeper-curator5
- ${dubbo.version}
- pom
- provided
-
-
-
- org.projectlombok
- lombok
- true
-
-
-
-
-
-
- aliyun
- aliyun
- https://maven.aliyun.com/repository/public
-
-
-
-
-
-
- org.springframework.boot
- spring-boot-maven-plugin
-
-
-
- org.apache.maven.plugins
- maven-surefire-plugin
- 2.12.4
-
- true
-
-
-
- org.apache.maven.plugins
- maven-compiler-plugin
- 3.1
-
- ${java.version}
- ${java.version}
- UTF-8
-
-
-
- org.apache.maven.plugins
- maven-checkstyle-plugin
- 3.3.1
-
- checkstyle.xml
- true
- true
- false
-
-
-
- validate
- validate
-
- check
-
-
-
-
-
-
+
+ backend-common
+ backend-service
+ backend-dao
+ backend-boot
+ backend-web
+ website-web
+
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/enums/YesOrNoEnum.java b/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/enums/YesOrNoEnum.java
deleted file mode 100644
index 502da330..00000000
--- a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/enums/YesOrNoEnum.java
+++ /dev/null
@@ -1,39 +0,0 @@
-package com.gitee.sop.adminbackend.common.enums;
-
-import lombok.AllArgsConstructor;
-import lombok.Getter;
-
-import java.util.Objects;
-
-/**
- * @author 六如
- */
-@AllArgsConstructor
-@Getter
-public enum YesOrNoEnum implements IntEnum {
- YES(1, "是"),
- NO(0, "否");
-
- private final Integer value;
- private final String description;
-
- public static YesOrNoEnum of(Number value) {
- if (value == null) {
- return NO;
- }
- return Objects.equals(value.intValue(), YES.value) ? YES : NO;
- }
-
- public static boolean yes(Number value) {
- return of(value) == YES;
- }
-
- public static YesOrNoEnum of(Boolean value) {
- return Objects.equals(value, true) ? YES : NO;
- }
-
- @Override
- public String toString() {
- return value.toString();
- }
-}
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/doc/DocInfoService.java b/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/doc/DocInfoService.java
deleted file mode 100644
index 945e3416..00000000
--- a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/doc/DocInfoService.java
+++ /dev/null
@@ -1,183 +0,0 @@
-package com.gitee.sop.adminbackend.service.doc;
-
-import com.gitee.fastmybatis.core.support.LambdaService;
-import com.gitee.fastmybatis.core.util.TreeUtil;
-import com.gitee.sop.adminbackend.common.enums.DocSourceTypeEnum;
-import com.gitee.sop.adminbackend.common.enums.YesOrNoEnum;
-import com.gitee.sop.adminbackend.common.exception.BizException;
-import com.gitee.sop.adminbackend.common.util.CopyUtil;
-import com.gitee.sop.adminbackend.dao.entity.DocApp;
-import com.gitee.sop.adminbackend.dao.entity.DocInfo;
-import com.gitee.sop.adminbackend.dao.mapper.DocAppMapper;
-import com.gitee.sop.adminbackend.dao.mapper.DocInfoMapper;
-import com.gitee.sop.adminbackend.service.doc.dto.DocInfoPublishUpdateDTO;
-import com.gitee.sop.adminbackend.service.doc.dto.DocInfoTreeDTO;
-import com.gitee.sop.adminbackend.service.doc.dto.torna.DocIdParam;
-import com.gitee.sop.adminbackend.service.doc.dto.torna.TornaDocDTO;
-import com.gitee.sop.adminbackend.service.doc.dto.torna.TornaDocInfoDTO;
-import com.gitee.sop.adminbackend.service.doc.dto.torna.TornaDocInfoViewDTO;
-import com.gitee.sop.adminbackend.service.doc.dto.torna.TornaDocParamDTO;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Service;
-import org.springframework.util.CollectionUtils;
-
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-import java.util.function.Function;
-import java.util.stream.Collectors;
-
-
-/**
- * @author 六如
- */
-@Service
-public class DocInfoService implements LambdaService {
-
- @Autowired
- private TornaClient tornaClient;
-
- @Autowired
- private DocAppMapper docAppMapper;
-
- public List listChildDoc(Long parentId) {
- return this.list(DocInfo::getParentId, parentId);
- }
-
- public void syncDocInfo(Long docAppId) {
- DocApp docApp = docAppMapper.getById(docAppId);
- this.syncDocInfo(docApp);
- }
-
- public void syncDocInfo(DocApp docApp) {
- Long docAppId = docApp.getId();
- Map nameVersionMap = this.list(DocInfo::getDocAppId, docAppId)
- .stream()
- .collect(Collectors.toMap(docInfo -> docInfo.getDocName() + ":" + docInfo.getDocVersion(), Function.identity(), (v1, v2) -> v2));
-
- String token = docApp.getToken();
- // add doc
- TornaDocDTO tornaDocDTO = tornaClient.execute("doc.list", null, token, TornaDocDTO.class);
- List docList = tornaDocDTO.getDocList();
-
- if (!CollectionUtils.isEmpty(docList)) {
- List updateList = new ArrayList<>();
- for (TornaDocInfoDTO tornaDocInfoDTO : docList) {
- String key = buildKey(tornaDocInfoDTO);
- DocInfo docInfo = nameVersionMap.get(key);
- // 需要修改的文档
- if (docInfo != null) {
- docInfo.setDocId(tornaDocInfoDTO.getId());
- docInfo.setDocTitle(tornaDocInfoDTO.getName());
- docInfo.setDocCode("");
- if (YesOrNoEnum.of(tornaDocInfoDTO.getIsFolder()) == YesOrNoEnum.YES) {
- docInfo.setDocName(tornaDocInfoDTO.getName());
- }
- docInfo.setDocId(tornaDocInfoDTO.getId());
- docInfo.setDocType(tornaDocInfoDTO.getType().intValue());
- docInfo.setDescription(tornaDocInfoDTO.getDescription());
- docInfo.setIsFolder(tornaDocInfoDTO.getIsFolder().intValue());
- docInfo.setParentId(tornaDocInfoDTO.getParentId());
- updateList.add(docInfo);
- }
- }
- for (DocInfo docInfo : updateList) {
- this.update(docInfo);
- }
-
- // 新增的文档
- List saveList = docList.stream()
- .filter(tornaDocInfoDTO -> {
- String key = buildKey(tornaDocInfoDTO);
- return !nameVersionMap.containsKey(key);
- })
- .map(tornaDocInfoDTO -> {
- DocInfo docInfo = new DocInfo();
- docInfo.setDocAppId(docAppId);
- docInfo.setDocId(tornaDocInfoDTO.getId());
- docInfo.setDocTitle(tornaDocInfoDTO.getName());
- docInfo.setDocCode("");
- docInfo.setDocType(tornaDocInfoDTO.getType().intValue());
- docInfo.setSourceType(DocSourceTypeEnum.TORNA.getValue());
- if (YesOrNoEnum.of(tornaDocInfoDTO.getIsFolder()) == YesOrNoEnum.YES) {
- docInfo.setIsPublish(YesOrNoEnum.YES.getValue());
- docInfo.setDocName(tornaDocInfoDTO.getName());
- } else {
- docInfo.setIsPublish(YesOrNoEnum.NO.getValue());
- docInfo.setDocName(tornaDocInfoDTO.getUrl());
- }
- docInfo.setDocVersion(tornaDocInfoDTO.getVersion());
- docInfo.setDescription(tornaDocInfoDTO.getDescription());
- docInfo.setIsFolder(tornaDocInfoDTO.getIsFolder().intValue());
- docInfo.setParentId(tornaDocInfoDTO.getParentId());
- return docInfo;
- })
- .collect(Collectors.toList());
- this.saveBatch(saveList);
- }
- }
-
- private String buildKey(TornaDocInfoDTO tornaDocInfoDTO) {
- return YesOrNoEnum.yes(tornaDocInfoDTO.getIsFolder()) ?
- tornaDocInfoDTO.getName() + ":" + tornaDocInfoDTO.getVersion()
- : tornaDocInfoDTO.getUrl() + ":" + tornaDocInfoDTO.getVersion();
- }
-
- public List listDocTree(Long docAppId) {
- List list = this.list(DocInfo::getDocAppId, docAppId);
- if (CollectionUtils.isEmpty(list)) {
- return new ArrayList<>(0);
- }
- List docInfoTreeDTOS = CopyUtil.copyList(list, DocInfoTreeDTO::new);
- return TreeUtil.convertTree(docInfoTreeDTOS, 0L);
- }
-
- public int publish(DocInfoPublishUpdateDTO docInfoUpdateDTO) {
- DocInfo docInfo = this.getById(docInfoUpdateDTO.getId());
- // 如果是文件夹,发布下面所有的文档
- if (YesOrNoEnum.of(docInfo.getIsFolder()) == YesOrNoEnum.YES) {
- List children = this.listChildDoc(docInfo.getDocId());
- Set ids = children.stream().map(DocInfo::getId).collect(Collectors.toSet());
- return this.query()
- .in(DocInfo::getId, ids)
- .set(DocInfo::getIsPublish, docInfoUpdateDTO.getIsPublish())
- .update();
- } else {
- // 发布单个文档
- return this.query()
- .eq(DocInfo::getId, docInfoUpdateDTO.getId())
- .set(DocInfo::getIsPublish, docInfoUpdateDTO.getIsPublish())
- .update();
- }
- }
-
-
- public TornaDocInfoViewDTO getDocDetail(Long id) {
- DocInfo docInfo = this.getById(id);
- if (docInfo == null) {
- throw new BizException("文档不存在");
- }
- // 获取torna文档信息
- String token = docAppMapper.getToken(docInfo.getDocAppId());
- TornaDocInfoViewDTO tornaDocInfoViewDTO = tornaClient.execute(
- "doc.detail",
- new DocIdParam(docInfo.getDocId()),
- token,
- TornaDocInfoViewDTO.class
- );
- convertTree(tornaDocInfoViewDTO);
- return tornaDocInfoViewDTO;
- }
-
- private void convertTree(TornaDocInfoViewDTO tornaDocInfoViewDTO) {
- List requestParams = tornaDocInfoViewDTO.getRequestParams();
- List responseParams = tornaDocInfoViewDTO.getResponseParams();
- List requestTree = TreeUtil.convertTree(requestParams, 0L);
- List responseTree = TreeUtil.convertTree(responseParams, 0L);
-
- tornaDocInfoViewDTO.setRequestParams(requestTree);
- tornaDocInfoViewDTO.setResponseParams(responseTree);
- }
-
-}
diff --git a/sop-admin/sop-admin-backend/website-web/pom.xml b/sop-admin/sop-admin-backend/website-web/pom.xml
new file mode 100644
index 00000000..3bcccf8f
--- /dev/null
+++ b/sop-admin/sop-admin-backend/website-web/pom.xml
@@ -0,0 +1,34 @@
+
+
+ 4.0.0
+
+ com.gitee.sop
+ sop-admin-backend
+ 5.0.0-SNAPSHOT
+
+
+ website-web
+
+
+ 8
+ 8
+ UTF-8
+
+
+
+
+ com.gitee.sop
+ backend-service
+ 5.0.0-SNAPSHOT
+
+
+
+ org.projectlombok
+ lombok
+ true
+
+
+
+
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/controller/website/WebsiteController.java b/sop-admin/sop-admin-backend/website-web/src/main/java/com/gitee/sop/adminbackend/controller/website/WebsiteController.java
similarity index 79%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/controller/website/WebsiteController.java
rename to sop-admin/sop-admin-backend/website-web/src/main/java/com/gitee/sop/adminbackend/controller/website/WebsiteController.java
index 4cf2170d..5840202d 100644
--- a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/controller/website/WebsiteController.java
+++ b/sop-admin/sop-admin-backend/website-web/src/main/java/com/gitee/sop/adminbackend/controller/website/WebsiteController.java
@@ -3,8 +3,9 @@ package com.gitee.sop.adminbackend.controller.website;
import com.gitee.sop.adminbackend.common.annotation.NoToken;
import com.gitee.sop.adminbackend.common.resp.Result;
import com.gitee.sop.adminbackend.common.util.CopyUtil;
-import com.gitee.sop.adminbackend.controller.doc.vo.DocAppVO;
-import com.gitee.sop.adminbackend.controller.doc.vo.DocInfoTreeVO;
+import com.gitee.sop.adminbackend.controller.website.vo.DocAppVO;
+import com.gitee.sop.adminbackend.controller.website.vo.DocInfoViewVO;
+import com.gitee.sop.adminbackend.controller.website.vo.DocInfoTreeVO;
import com.gitee.sop.adminbackend.service.doc.dto.DocAppDTO;
import com.gitee.sop.adminbackend.service.doc.dto.DocInfoTreeDTO;
import com.gitee.sop.adminbackend.service.doc.dto.DocInfoViewDTO;
@@ -57,9 +58,10 @@ public class WebsiteController {
* @param id id
*/
@GetMapping("docinfo/detail")
- public Result getDocDetail(Long id) {
- DocInfoViewDTO docDetail = websiteService.getDocDetail(id);
- return Result.ok(docDetail);
+ public Result getDocDetail(Long id) {
+ DocInfoViewDTO docInfoViewDTO = websiteService.getDocDetail(id);
+ DocInfoViewVO docInfoViewVO = CopyUtil.deepCopy(docInfoViewDTO, DocInfoViewVO.class);
+ return Result.ok(docInfoViewVO);
}
}
diff --git a/sop-admin/sop-admin-backend/website-web/src/main/java/com/gitee/sop/adminbackend/controller/website/vo/DocAppVO.java b/sop-admin/sop-admin-backend/website-web/src/main/java/com/gitee/sop/adminbackend/controller/website/vo/DocAppVO.java
new file mode 100644
index 00000000..a54967bc
--- /dev/null
+++ b/sop-admin/sop-admin-backend/website-web/src/main/java/com/gitee/sop/adminbackend/controller/website/vo/DocAppVO.java
@@ -0,0 +1,24 @@
+package com.gitee.sop.adminbackend.controller.website.vo;
+
+import lombok.Data;
+
+
+/**
+ * 备注:文档应用
+ *
+ * @author 六如
+ */
+@Data
+public class DocAppVO {
+
+ /**
+ * id
+ */
+ private Long id;
+
+ /**
+ * 应用名称
+ */
+ private String appName;
+
+}
diff --git a/sop-admin/sop-admin-backend/website-web/src/main/java/com/gitee/sop/adminbackend/controller/website/vo/DocInfoConfigVO.java b/sop-admin/sop-admin-backend/website-web/src/main/java/com/gitee/sop/adminbackend/controller/website/vo/DocInfoConfigVO.java
new file mode 100644
index 00000000..a55de295
--- /dev/null
+++ b/sop-admin/sop-admin-backend/website-web/src/main/java/com/gitee/sop/adminbackend/controller/website/vo/DocInfoConfigVO.java
@@ -0,0 +1,14 @@
+package com.gitee.sop.adminbackend.controller.website.vo;
+
+import lombok.Data;
+
+/**
+ * @author 六如
+ */
+@Data
+public class DocInfoConfigVO {
+
+ private String openProdUrl;
+ private String openSandboxUrl;
+
+}
diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/controller/doc/vo/DocInfoTreeVO.java b/sop-admin/sop-admin-backend/website-web/src/main/java/com/gitee/sop/adminbackend/controller/website/vo/DocInfoTreeVO.java
similarity index 86%
rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/controller/doc/vo/DocInfoTreeVO.java
rename to sop-admin/sop-admin-backend/website-web/src/main/java/com/gitee/sop/adminbackend/controller/website/vo/DocInfoTreeVO.java
index 2e9c1a16..b6a75b8d 100644
--- a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/controller/doc/vo/DocInfoTreeVO.java
+++ b/sop-admin/sop-admin-backend/website-web/src/main/java/com/gitee/sop/adminbackend/controller/website/vo/DocInfoTreeVO.java
@@ -1,10 +1,9 @@
-package com.gitee.sop.adminbackend.controller.doc.vo;
+package com.gitee.sop.adminbackend.controller.website.vo;
import com.gitee.fastmybatis.core.support.TreeNode;
-import com.gitee.sop.adminbackend.common.enums.YesOrNoEnum;
+import com.gitee.sop.adminbackend.common.constants.YesOrNo;
import lombok.Data;
-import java.time.LocalDateTime;
import java.util.List;
import java.util.Objects;
@@ -93,7 +92,7 @@ public class DocInfoTreeVO implements TreeNode {
public String getDocName() {
- if (Objects.equals(isFolder, YesOrNoEnum.YES.getValue())) {
+ if (Objects.equals(isFolder, YesOrNo.YES)) {
return "";
}
return docName;
diff --git a/sop-admin/sop-admin-backend/website-web/src/main/java/com/gitee/sop/adminbackend/controller/website/vo/DocInfoViewVO.java b/sop-admin/sop-admin-backend/website-web/src/main/java/com/gitee/sop/adminbackend/controller/website/vo/DocInfoViewVO.java
new file mode 100644
index 00000000..a7d845bc
--- /dev/null
+++ b/sop-admin/sop-admin-backend/website-web/src/main/java/com/gitee/sop/adminbackend/controller/website/vo/DocInfoViewVO.java
@@ -0,0 +1,15 @@
+package com.gitee.sop.adminbackend.controller.website.vo;
+
+import lombok.Data;
+
+/**
+ * @author 六如
+ */
+@Data
+public class DocInfoViewVO {
+
+ private TornaDocInfoViewVO docInfoView;
+
+ private DocInfoConfigVO docInfoConfig;
+
+}
diff --git a/sop-admin/sop-admin-backend/website-web/src/main/java/com/gitee/sop/adminbackend/controller/website/vo/TornaDocInfoViewVO.java b/sop-admin/sop-admin-backend/website-web/src/main/java/com/gitee/sop/adminbackend/controller/website/vo/TornaDocInfoViewVO.java
new file mode 100644
index 00000000..ca31bef0
--- /dev/null
+++ b/sop-admin/sop-admin-backend/website-web/src/main/java/com/gitee/sop/adminbackend/controller/website/vo/TornaDocInfoViewVO.java
@@ -0,0 +1,179 @@
+package com.gitee.sop.adminbackend.controller.website.vo;
+
+import com.gitee.sop.adminbackend.service.doc.dto.torna.TornaDocParamDTO;
+import lombok.Data;
+
+import java.time.LocalDateTime;
+import java.util.Collections;
+import java.util.List;
+
+/**
+ * @author tanghc
+ */
+@Data
+public class TornaDocInfoViewVO {
+ private Long id;
+
+ /**
+ * 文档名称
+ */
+ private String name;
+
+ /**
+ * 文档概述
+ */
+
+ private String description;
+
+ /**
+ * 0:http,1:dubbo
+ */
+ private Byte type;
+
+ /**
+ * 访问URL
+ */
+
+ private String url;
+
+ /**
+ * 版本号
+ */
+ private String version = "";
+
+ private String docKey;
+
+ /**
+ * http方法
+ */
+
+ private String httpMethod;
+
+ /**
+ * contentType
+ */
+
+ private String contentType;
+
+
+ /**
+ * 是否是分类,0:不是,1:是
+ */
+ private Byte isFolder;
+
+ /**
+ * 父节点
+ */
+
+ private Long parentId;
+
+ /**
+ * 模块id,module.id
+ */
+
+ private Long moduleId;
+
+ /**
+ * 项目id
+ */
+
+ private Long projectId;
+
+ /**
+ * 是否使用全局请求参数
+ */
+
+ private Byte isUseGlobalHeaders;
+
+ /**
+ * 是否使用全局请求参数
+ */
+
+ private Byte isUseGlobalParams;
+
+ /**
+ * 是否使用全局返回参数
+ */
+
+ private Byte isUseGlobalReturns;
+
+ /**
+ * 是否请求数组
+ */
+
+ private Byte isRequestArray;
+
+ /**
+ * 是否返回数组
+ */
+
+ private Byte isResponseArray;
+
+ /**
+ * 请求数组时元素类型
+ */
+
+ private String requestArrayType;
+
+ /**
+ * 返回数组时元素类型
+ */
+
+ private String responseArrayType;
+
+ /**
+ * 文档状态
+ */
+
+ private Byte status;
+
+ private String remark;
+
+ private Integer orderIndex;
+
+ /**
+ * 数据库字段:gmt_create
+ */
+ private LocalDateTime gmtCreate;
+
+ /**
+ * 数据库字段:gmt_modified
+ */
+ private LocalDateTime gmtModified;
+
+
+ private List pathParams = Collections.emptyList();
+
+
+ private List headerParams = Collections.emptyList();
+
+ private List headerParamsRaw = Collections.emptyList();
+
+
+ private List queryParams = Collections.emptyList();
+
+
+ private List requestParams = Collections.emptyList();
+
+
+ private List responseParams = Collections.emptyList();
+
+ private List errorCodeParams = Collections.emptyList();
+
+ private List globalHeaders = Collections.emptyList();
+ private List globalParams = Collections.emptyList();
+ private List globalReturns = Collections.emptyList();
+
+ private String errorCodeInfo;
+
+ private List children = Collections.emptyList();
+
+ public String getDocName() {
+ return name;
+ }
+
+ public String getDocTitle() {
+ return name;
+ }
+
+}
diff --git a/sop-admin/sop-admin-frontend/src/api/doc.ts b/sop-admin/sop-admin-frontend/src/api/doc.ts
index 9f170a59..7ca90ba1 100644
--- a/sop-admin/sop-admin-frontend/src/api/doc.ts
+++ b/sop-admin/sop-admin-frontend/src/api/doc.ts
@@ -4,6 +4,7 @@ import type { Result } from "@/model";
// 后端请求接口
const apiUrl: any = createUrl({
addApp: "/doc/app/add",
+ syncAppDoc: "/doc/app/syncAppDoc",
syncDoc: "/doc/app/syncDoc",
listApp: "/doc/app/list",
listDocTree: "/doc/info/tree",
@@ -36,10 +37,16 @@ export const api: any = {
* 同步文档
* @param data 表单内容
*/
- syncDoc(docAppId) {
+ syncAppDoc(docAppId) {
const data = {
id: docAppId
};
+ return http.post, any>(apiUrl.syncAppDoc, { data });
+ },
+ syncDoc(docInfoId) {
+ const data = {
+ id: docInfoId
+ };
return http.post, any>(apiUrl.syncDoc, { data });
},
/**
diff --git a/sop-admin/sop-admin-frontend/src/views/doc/list/index.ts b/sop-admin/sop-admin-frontend/src/views/doc/list/index.ts
index 31380144..a3555ddc 100644
--- a/sop-admin/sop-admin-frontend/src/views/doc/list/index.ts
+++ b/sop-admin/sop-admin-frontend/src/views/doc/list/index.ts
@@ -181,6 +181,35 @@ actionButtons.value = [
});
},
show: (row: any) => row.isFolder === 0
+ },
+ {
+ text: "同步",
+ confirm: {
+ options: { draggable: false },
+ popconfirmProps: { width: 300 },
+ message: params => {
+ const row = params.row;
+ return row.isFolder
+ ? `确定要同步[${row.docTitle}]下所有接口吗?`
+ : `确定要同步[${row.docTitle}]吗?`;
+ }
+ },
+ props: (_: any) => ({
+ type: "primary"
+ }),
+ onConfirm(params: ButtonsCallBackParams) {
+ loading.value = true;
+ api
+ .syncDoc(params.row.id)
+ .then(() => {
+ loading.value = false;
+ ElMessage.success("同步成功");
+ search();
+ })
+ .catch(() => {
+ loading.value = false;
+ });
+ }
}
];
@@ -203,7 +232,7 @@ export function handleSyncApi() {
.then(() => {
loading.value = true;
api
- .syncDoc(docAppId.value)
+ .syncAppDoc(docAppId.value)
.then(() => {
loading.value = false;
ElMessage.success("同步成功");
diff --git a/sop-admin/sop-admin-frontend/src/views/doc/list/index.vue b/sop-admin/sop-admin-frontend/src/views/doc/list/index.vue
index ab0ec2c7..fdd5ea3d 100644
--- a/sop-admin/sop-admin-frontend/src/views/doc/list/index.vue
+++ b/sop-admin/sop-admin-frontend/src/views/doc/list/index.vue
@@ -43,7 +43,7 @@ import { Search } from "@element-plus/icons-vue";
:action-bar="{
buttons: actionButtons,
confirmType: 'popconfirm',
- width: 120
+ width: 150
}"
adaptive
>
@@ -60,7 +60,9 @@ import { Search } from "@element-plus/icons-vue";
- 同步接口
+
+ 同步全部接口
+
diff --git a/sop-example/example-payment/src/main/java/com/gitee/sop/payment/impl/OpenPaymentImpl.java b/sop-example/example-payment/src/main/java/com/gitee/sop/payment/impl/OpenPaymentImpl.java
index 3bac2532..9b3ee7ab 100644
--- a/sop-example/example-payment/src/main/java/com/gitee/sop/payment/impl/OpenPaymentImpl.java
+++ b/sop-example/example-payment/src/main/java/com/gitee/sop/payment/impl/OpenPaymentImpl.java
@@ -1,11 +1,13 @@
package com.gitee.sop.payment.impl;
import com.gitee.sop.payment.open.OpenPayment;
+import com.gitee.sop.payment.open.req.PayOrderSearchRequest;
import com.gitee.sop.payment.open.req.PayTradeWapPayRequest;
+import com.gitee.sop.payment.open.resp.PayOrderSearchResponse;
import com.gitee.sop.payment.open.resp.PayTradeWapPayResponse;
+import java.util.UUID;
import org.apache.dubbo.config.annotation.DubboService;
-import java.util.UUID;
/**
@@ -22,4 +24,14 @@ public class OpenPaymentImpl implements OpenPayment {
payTradeWapPayResponse.setPageRedirectionData(UUID.randomUUID().toString());
return payTradeWapPayResponse;
}
+
+ @Override
+ public PayOrderSearchResponse orderSearch(PayOrderSearchRequest request) {
+ PayOrderSearchResponse payOrderSearchResponse = new PayOrderSearchResponse();
+ payOrderSearchResponse.setOrderNo(request.getOrderNo());
+ payOrderSearchResponse.setPayNo("xxxx");
+ payOrderSearchResponse.setPayUserId(111L);
+ payOrderSearchResponse.setPayUserName("Jim");
+ return payOrderSearchResponse;
+ }
}
diff --git a/sop-example/example-payment/src/main/java/com/gitee/sop/payment/open/OpenPayment.java b/sop-example/example-payment/src/main/java/com/gitee/sop/payment/open/OpenPayment.java
index d69246f5..0f1e78c6 100644
--- a/sop-example/example-payment/src/main/java/com/gitee/sop/payment/open/OpenPayment.java
+++ b/sop-example/example-payment/src/main/java/com/gitee/sop/payment/open/OpenPayment.java
@@ -1,6 +1,8 @@
package com.gitee.sop.payment.open;
+import com.gitee.sop.payment.open.req.PayOrderSearchRequest;
import com.gitee.sop.payment.open.req.PayTradeWapPayRequest;
+import com.gitee.sop.payment.open.resp.PayOrderSearchResponse;
import com.gitee.sop.payment.open.resp.PayTradeWapPayResponse;
import com.gitee.sop.support.annotation.Open;
import io.swagger.annotations.Api;
@@ -15,13 +17,18 @@ import io.swagger.annotations.ApiOperation;
public interface OpenPayment {
@ApiOperation(
- value = "手机网站支付接口2.0",
+ value = "手机网站支付接口",
notes = "该接口是页面跳转接口,用于生成用户访问跳转链接。" +
"请在服务端执行SDK中pageExecute方法,读取响应中的body()结果。" +
"该结果用于跳转到页面,返回到用户浏览器渲染或重定向跳转到页面。" +
"具体使用方法请参考 接入指南"
)
- @Open(value = "pay.trade.wap.pay", version = "2.0")
+ @Open("pay.trade.wap.pay")
PayTradeWapPayResponse tradeWapPay(PayTradeWapPayRequest request);
+
+ @ApiOperation(value = "订单查询接口")
+ @Open("pay.order.search")
+ PayOrderSearchResponse orderSearch(PayOrderSearchRequest request);
+
}
diff --git a/sop-example/example-payment/src/main/java/com/gitee/sop/payment/open/req/PayOrderSearchRequest.java b/sop-example/example-payment/src/main/java/com/gitee/sop/payment/open/req/PayOrderSearchRequest.java
new file mode 100644
index 00000000..3981427f
--- /dev/null
+++ b/sop-example/example-payment/src/main/java/com/gitee/sop/payment/open/req/PayOrderSearchRequest.java
@@ -0,0 +1,17 @@
+package com.gitee.sop.payment.open.req;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import org.hibernate.validator.constraints.Length;
+
+/**
+ * @author 六如
+ */
+@Data
+public class PayOrderSearchRequest {
+
+ @ApiModelProperty(value = "订单编号", required = true, example = "xxxx")
+ @Length(max = 64) // 最大长度
+ private String orderNo;
+
+}
diff --git a/sop-example/example-payment/src/main/java/com/gitee/sop/payment/open/req/PayTradeWapPayRequest.java b/sop-example/example-payment/src/main/java/com/gitee/sop/payment/open/req/PayTradeWapPayRequest.java
index 2845053b..9b97eae3 100644
--- a/sop-example/example-payment/src/main/java/com/gitee/sop/payment/open/req/PayTradeWapPayRequest.java
+++ b/sop-example/example-payment/src/main/java/com/gitee/sop/payment/open/req/PayTradeWapPayRequest.java
@@ -10,7 +10,7 @@ import java.math.BigDecimal;
import java.util.List;
/**
- * alipay.trade.wap.pay(手机网站支付接口2.0)
+ * pay.trade.wap.pay(手机网站支付接口)
*
* @author 六如
* https://opendocs.alipay.com/open/29ae8cb6_alipay.trade.wap.pay?pathHash=1ef587fd&ref=api&scene=21
@@ -40,7 +40,7 @@ public class PayTradeWapPayRequest {
private String subject;
@ApiModelProperty(
- value = "销售产品码,商家和支付宝签约的产品码。手机网站支付为:QUICK_WAP_WAY",
+ value = "销售产品码,商家和支付平台签约的产品码。手机网站支付为:QUICK_WAP_WAY",
required = true,
example = "QUICK_WAP_WAY"
)
@@ -76,7 +76,7 @@ public class PayTradeWapPayRequest {
private String time_expire;
@ApiModelProperty(
- value = "商户传入业务信息,具体值要和支付宝约定,应用于安全,营销等参数直传场景,格式为json格式",
+ value = "商户传入业务信息,具体值要和支付平台约定,应用于安全,营销等参数直传场景,格式为json格式",
example = "{\"mc_create_trade_ip\":\"127.0.0.1\"}"
)
@Length(max = 512)
@@ -84,7 +84,7 @@ public class PayTradeWapPayRequest {
@ApiModelProperty(
- value = "公用回传参数,如果请求时传递了该参数,则返回给商户时会回传该参数。支付宝只会在同步返回(包括跳转回商户网站)和异步通知时将该参数原样返回。本参数必须进行UrlEncode之后才可以发送给支付宝。",
+ value = "公用回传参数,如果请求时传递了该参数,则返回给商户时会回传该参数。支付平台只会在同步返回(包括跳转回商户网站)和异步通知时将该参数原样返回。本参数必须进行UrlEncode之后才可以发送给支付平台。",
example = "merchantBizType%3d3C%26merchantBizNo%3d2016010101111"
)
@Length(max = 512)
@@ -137,7 +137,7 @@ public class PayTradeWapPayRequest {
private BigDecimal price;
@ApiModelProperty(
- value = "支付宝定义的统一商品编号",
+ value = "支付平台定义的统一商品编号",
example = "20010001"
)
@Length(max = 32)
diff --git a/sop-example/example-payment/src/main/java/com/gitee/sop/payment/open/resp/PayOrderSearchResponse.java b/sop-example/example-payment/src/main/java/com/gitee/sop/payment/open/resp/PayOrderSearchResponse.java
new file mode 100644
index 00000000..96d7c40b
--- /dev/null
+++ b/sop-example/example-payment/src/main/java/com/gitee/sop/payment/open/resp/PayOrderSearchResponse.java
@@ -0,0 +1,23 @@
+package com.gitee.sop.payment.open.resp;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+/**
+ * @author 六如
+ */
+@Data
+public class PayOrderSearchResponse {
+
+ @ApiModelProperty(value = "订单编号", example = "xxxx")
+ private String orderNo;
+
+ @ApiModelProperty(value = "支付编号", example = "xxxx")
+ private String payNo;
+
+ @ApiModelProperty(value = "支付人id", example = "111")
+ private Long payUserId;
+
+ @ApiModelProperty(value = "支付人姓名", example = "Jim")
+ private String payUserName;
+}
diff --git a/sop-example/example-payment/src/main/java/com/gitee/sop/payment/open/resp/PayTradeWapPayResponse.java b/sop-example/example-payment/src/main/java/com/gitee/sop/payment/open/resp/PayTradeWapPayResponse.java
index 0b54edfb..3b2ae2b8 100644
--- a/sop-example/example-payment/src/main/java/com/gitee/sop/payment/open/resp/PayTradeWapPayResponse.java
+++ b/sop-example/example-payment/src/main/java/com/gitee/sop/payment/open/resp/PayTradeWapPayResponse.java
@@ -10,7 +10,7 @@ import lombok.Data;
public class PayTradeWapPayResponse {
@ApiModelProperty(
- value = "用于跳转支付宝页面的信息,POST和GET方法生成内容不同:使用POST方法执行,结果为html form表单,在浏览器渲染即可;使用GET方法会得到支付宝URL,需要打开或重定向到该URL。建议使用POST方式。具体使用方法请参考",
+ value = "用于跳转支付平台页面的信息,POST和GET方法生成内容不同:使用POST方法执行,结果为html form表单,在浏览器渲染即可;使用GET方法会得到支付平台URL,需要打开或重定向到该URL。建议使用POST方式。具体使用方法请参考",
required = true,
example = "请参考响应示例"
)
diff --git a/sop-gateway/src/main/java/com/gitee/sop/gateway/controller/IndexController.java b/sop-gateway/src/main/java/com/gitee/sop/gateway/controller/IndexController.java
index c820d566..031f3f5a 100644
--- a/sop-gateway/src/main/java/com/gitee/sop/gateway/controller/IndexController.java
+++ b/sop-gateway/src/main/java/com/gitee/sop/gateway/controller/IndexController.java
@@ -41,7 +41,7 @@ public class IndexController {
* @apiNote 参数描述
参数 类型 是否必填 最大长度 描述 示例值
- app_id String 是 32 支付宝分配给开发者的应用ID 2014072300007148
+ app_id String 是 32 平台分配给开发者的应用ID 2014072300007148
method String 是 128 接口名称 alipay.trade.fastpay.refund.query
format String 否 40 仅支持JSON JSON
charset String 是 10 请求使用的编码格式,如utf-8,gbk,gb2312等 utf-8
diff --git a/sop-gateway/src/main/java/com/gitee/sop/gateway/request/ApiRequest.java b/sop-gateway/src/main/java/com/gitee/sop/gateway/request/ApiRequest.java
index a9fafe01..9aac4acc 100644
--- a/sop-gateway/src/main/java/com/gitee/sop/gateway/request/ApiRequest.java
+++ b/sop-gateway/src/main/java/com/gitee/sop/gateway/request/ApiRequest.java
@@ -12,7 +12,7 @@ import java.io.Serializable;
* 请求参数名定义
*
* 参数 类型 是否必填 最大长度 描述 示例值
- * app_id String 是 32 支付宝分配给开发者的应用ID 2014072300007148
+ * app_id String 是 32 平台分配给开发者的应用ID 2014072300007148
* method String 是 128 接口名称 alipay.trade.fastpay.refund.query
* format String 否 40 仅支持JSON JSON
* charset String 是 10 请求使用的编码格式,如utf-8,gbk,gb2312等 utf-8
@@ -20,7 +20,7 @@ import java.io.Serializable;
* sign String 是 344 商户请求参数的签名串,详见签名 详见示例
* timestamp String 是 19 发送请求的时间,格式"yyyy-MM-dd HH:mm:ss" 2014-07-24 03:07:50
* version String 是 3 调用的接口版本,固定为:1.0 1.0
- * notify_url String 否 256 支付宝服务器主动通知商户服务器里指定的页面http/https路径。 http://api.test.alipay.net/atinterface/receive_notify.htm
+ * notify_url String 否 256 平台服务器主动通知商户服务器里指定的页面http/https路径。 http://api.test.alipay.net/atinterface/receive_notify.htm
* app_auth_token String 否 40 详见应用授权概述
* biz_content String 是 请求参数的集合,最大长度不限,除公共参数外所有请求参数都必须放在这个参数中传递,具体参照各产品快速接入文档
*
@@ -99,7 +99,7 @@ public class ApiRequest implements Serializable {
private String version;
/**
- * 支付宝服务器主动通知商户服务器里指定的页面http/https路径
+ * 平台服务器主动通知商户服务器里指定的页面http/https路径
*
* @mock http://ww.xx.com/callback
*/
diff --git a/sop-gateway/src/main/java/com/gitee/sop/gateway/service/validate/alipay/AlipayConstants.java b/sop-gateway/src/main/java/com/gitee/sop/gateway/service/validate/alipay/AlipayConstants.java
deleted file mode 100644
index 40a8dc4e..00000000
--- a/sop-gateway/src/main/java/com/gitee/sop/gateway/service/validate/alipay/AlipayConstants.java
+++ /dev/null
@@ -1,97 +0,0 @@
-/**
- * Alipay.com Inc.
- * Copyright (c) 2004-2012 All Rights Reserved.
- */
-package com.gitee.sop.gateway.service.validate.alipay;
-
-/**
- *
- * @author runzhi
- */
-public class AlipayConstants {
-
- public static final String SIGN_TYPE = "sign_type";
-
- public static final String SIGN_TYPE_RSA = "RSA";
-
- /**
- * sha256WithRsa 算法请求类型
- */
- public static final String SIGN_TYPE_RSA2 = "RSA2";
-
- public static final String SIGN_ALGORITHMS = "SHA1WithRSA";
-
- public static final String SIGN_SHA256RSA_ALGORITHMS = "SHA256WithRSA";
-
- public static final String ENCRYPT_TYPE_AES = "AES";
-
- public static final String APP_ID = "app_id";
-
- public static final String FORMAT = "format";
-
- public static final String METHOD = "method";
-
- public static final String TIMESTAMP = "timestamp";
-
- public static final String VERSION = "version";
-
- public static final String SIGN = "sign";
-
- public static final String ALIPAY_SDK = "alipay_sdk";
-
- public static final String ACCESS_TOKEN = "auth_token";
-
- public static final String APP_AUTH_TOKEN = "app_auth_token";
-
- public static final String TERMINAL_TYPE = "terminal_type";
-
- public static final String TERMINAL_INFO = "terminal_info";
-
- public static final String CHARSET = "charset";
-
- public static final String NOTIFY_URL = "notify_url";
-
- public static final String RETURN_URL = "return_url";
-
- public static final String ENCRYPT_TYPE = "encrypt_type";
-
- //-----===-------///
-
- public static final String BIZ_CONTENT_KEY = "biz_content";
-
- /** 默认时间格式 **/
- public static final String DATE_TIME_FORMAT = "yyyy-MM-dd HH:mm:ss";
-
- /** Date默认时区 **/
- public static final String DATE_TIMEZONE = "GMT+8";
-
- /** UTF-8字符集 **/
- public static final String CHARSET_UTF8 = "UTF-8";
-
- /** GBK字符集 **/
- public static final String CHARSET_GBK = "GBK";
-
- /** JSON 应格式 */
- public static final String FORMAT_JSON = "json";
-
- /** XML 应格式 */
- public static final String FORMAT_XML = "xml";
-
- /** SDK版本号 */
- public static final String SDK_VERSION = "alipay-sdk-java-3.6.0.ALL";
-
- public static final String PROD_CODE = "prod_code";
-
- /** 老版本失败节点 */
- public static final String ERROR_RESPONSE = "error_response";
-
- /** 新版本节点后缀 */
- public static final String RESPONSE_SUFFIX = "_response";
-
- /** 加密后XML返回报文的节点名字 */
- public static final String RESPONSE_XML_ENCRYPT_NODE_NAME = "response_encrypted";
-
- /** 批量请求id **/
- public static final String BATCH_REQUEST_ID = "batch_request_id";
-
-}
diff --git a/sop-gateway/src/main/java/com/gitee/sop/gateway/service/validate/alipay/StreamUtil.java b/sop-gateway/src/main/java/com/gitee/sop/gateway/service/validate/alipay/StreamUtil.java
deleted file mode 100644
index c4435eec..00000000
--- a/sop-gateway/src/main/java/com/gitee/sop/gateway/service/validate/alipay/StreamUtil.java
+++ /dev/null
@@ -1,141 +0,0 @@
-/**
- * Alipay.com Inc.
- * Copyright (c) 2004-2012 All Rights Reserved.
- */
-package com.gitee.sop.gateway.service.validate.alipay;
-
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.InputStreamReader;
-import java.io.OutputStream;
-import java.io.Reader;
-import java.io.StringWriter;
-import java.io.Writer;
-
-/**
- * @author runzhi
- */
-public class StreamUtil {
- private StreamUtil() {
- }
-
- private static final int DEFAULT_BUFFER_SIZE = 8192;
-
- public static void io(InputStream in, OutputStream out) throws IOException {
- io(in, out, -1);
- }
-
- public static void io(InputStream in, OutputStream out, int bufferSize) throws IOException {
- if (bufferSize == -1) {
- bufferSize = DEFAULT_BUFFER_SIZE;
- }
-
- byte[] buffer = new byte[bufferSize];
- int amount;
-
- while ((amount = in.read(buffer)) >= 0) {
- out.write(buffer, 0, amount);
- }
- }
-
- public static void io(Reader in, Writer out) throws IOException {
- io(in, out, -1);
- }
-
- public static void io(Reader in, Writer out, int bufferSize) throws IOException {
- if (bufferSize == -1) {
- bufferSize = DEFAULT_BUFFER_SIZE >> 1;
- }
-
- char[] buffer = new char[bufferSize];
- int amount;
-
- while ((amount = in.read(buffer)) >= 0) {
- out.write(buffer, 0, amount);
- }
- }
-
- public static OutputStream synchronizedOutputStream(OutputStream out) {
- return new SynchronizedOutputStream(out);
- }
-
- public static OutputStream synchronizedOutputStream(OutputStream out, Object lock) {
- return new SynchronizedOutputStream(out, lock);
- }
-
- public static String readText(InputStream in) throws IOException {
- return readText(in, null, -1);
- }
-
- public static String readText(InputStream in, String encoding) throws IOException {
- return readText(in, encoding, -1);
- }
-
- public static String readText(InputStream in, String encoding, int bufferSize)
- throws IOException {
- Reader reader = (encoding == null) ? new InputStreamReader(in) : new InputStreamReader(in,
- encoding);
-
- return readText(reader, bufferSize);
- }
-
- public static String readText(Reader reader) throws IOException {
- return readText(reader, -1);
- }
-
- public static String readText(Reader reader, int bufferSize) throws IOException {
- StringWriter writer = new StringWriter();
-
- io(reader, writer, bufferSize);
- return writer.toString();
- }
-
- private static class SynchronizedOutputStream extends OutputStream {
- private OutputStream out;
- private Object lock;
-
- SynchronizedOutputStream(OutputStream out) {
- this(out, out);
- }
-
- SynchronizedOutputStream(OutputStream out, Object lock) {
- this.out = out;
- this.lock = lock;
- }
-
- @Override
- public void write(int datum) throws IOException {
- synchronized (lock) {
- out.write(datum);
- }
- }
-
- @Override
- public void write(byte[] data) throws IOException {
- synchronized (lock) {
- out.write(data);
- }
- }
-
- @Override
- public void write(byte[] data, int offset, int length) throws IOException {
- synchronized (lock) {
- out.write(data, offset, length);
- }
- }
-
- @Override
- public void flush() throws IOException {
- synchronized (lock) {
- out.flush();
- }
- }
-
- @Override
- public void close() throws IOException {
- synchronized (lock) {
- out.close();
- }
- }
- }
-}
diff --git a/sop-gateway/src/main/java/com/gitee/sop/gateway/service/validate/alipay/StringUtils.java b/sop-gateway/src/main/java/com/gitee/sop/gateway/service/validate/alipay/StringUtils.java
deleted file mode 100644
index 419cef65..00000000
--- a/sop-gateway/src/main/java/com/gitee/sop/gateway/service/validate/alipay/StringUtils.java
+++ /dev/null
@@ -1,171 +0,0 @@
-package com.gitee.sop.gateway.service.validate.alipay;
-
-/**
- * 字符串工具类。
- *
- * @author carver.gu
- * @since 1.0, Sep 12, 2009
- */
-public final class StringUtils {
-
- private StringUtils() {
- }
-
- /**
- * 检查指定的字符串是否为空。
- *
- * - SysUtils.isEmpty(null) = true
- * - SysUtils.isEmpty("") = true
- * - SysUtils.isEmpty(" ") = true
- * - SysUtils.isEmpty("abc") = false
- *
- *
- * @param value 待检查的字符串
- * @return true/false
- */
- public static boolean isEmpty(String value) {
- if (value == null || value.length() == 0) {
- return true;
- }
- for (int i = 0; i < value.length(); i++) {
- if (!Character.isWhitespace(value.charAt(i))) {
- return false;
- }
- }
- return true;
- }
-
- /**
- * 检查对象是否为数字型字符串,包含负数开头的。
- */
- public static boolean isNumeric(Object obj) {
- if (obj == null) {
- return false;
- }
- char[] chars = obj.toString().toCharArray();
- int length = chars.length;
- if (length < 1) {
- return false;
- }
-
- int i = 0;
- if (length > 1 && chars[0] == '-') {
- i = 1;
- }
-
- for (; i < length; i++) {
- if (!Character.isDigit(chars[i])) {
- return false;
- }
- }
- return true;
- }
-
- /**
- * 检查指定的字符串列表是否不为空。
- */
- public static boolean areNotEmpty(String... values) {
- boolean result = true;
- if (values == null || values.length == 0) {
- result = false;
- } else {
- for (String value : values) {
- result &= !isEmpty(value);
- }
- }
- return result;
- }
-
- /**
- * 把通用字符编码的字符串转化为汉字编码。
- */
- public static String unicodeToChinese(String unicode) {
- StringBuilder out = new StringBuilder();
- if (!isEmpty(unicode)) {
- for (int i = 0; i < unicode.length(); i++) {
- out.append(unicode.charAt(i));
- }
- }
- return out.toString();
- }
-
- /**
- * 过滤不可见字符
- */
- public static String stripNonValidXMLCharacters(String input) {
- if (input == null || ("".equals(input))) {
- return "";
- }
- StringBuilder out = new StringBuilder();
- char current;
- for (int i = 0; i < input.length(); i++) {
- current = input.charAt(i);
- if ((current == 0x9) || (current == 0xA) || (current == 0xD)
- || ((current >= 0x20) && (current <= 0xD7FF))
- || ((current >= 0xE000) && (current <= 0xFFFD))
- || ((current >= 0x10000) && (current <= 0x10FFFF))) {
- out.append(current);
- }
- }
- return out.toString();
- }
-
- public static String leftPad(String str, int size, char padChar) {
- if (str == null) {
- return null;
- } else {
- int pads = size - str.length();
- if (pads <= 0) {
- return str;
- } else {
- return pads > 8192 ? leftPad(str, size, String.valueOf(padChar)) : padding(pads, padChar).concat(str);
- }
- }
- }
-
- public static String leftPad(String str, int size, String padStr) {
- if (str == null) {
- return null;
- } else {
- if (isEmpty(padStr)) {
- padStr = " ";
- }
-
- int padLen = padStr.length();
- int strLen = str.length();
- int pads = size - strLen;
- if (pads <= 0) {
- return str;
- } else if (padLen == 1 && pads <= 8192) {
- return leftPad(str, size, padStr.charAt(0));
- } else if (pads == padLen) {
- return padStr.concat(str);
- } else if (pads < padLen) {
- return padStr.substring(0, pads).concat(str);
- } else {
- char[] padding = new char[pads];
- char[] padChars = padStr.toCharArray();
-
- for (int i = 0; i < pads; ++i) {
- padding[i] = padChars[i % padLen];
- }
-
- return (new String(padding)).concat(str);
- }
- }
- }
-
- private static String padding(int repeat, char padChar) {
- if (repeat < 0) {
- throw new IndexOutOfBoundsException("Cannot pad a negative amount: " + repeat);
- } else {
- char[] buf = new char[repeat];
-
- for (int i = 0; i < buf.length; ++i) {
- buf[i] = padChar;
- }
-
- return new String(buf);
- }
- }
-}
diff --git a/sop-gateway/src/main/java/com/gitee/sop/gateway/service/validate/alipay/AlipaySigner.java b/sop-gateway/src/main/java/com/gitee/sop/gateway/service/validate/sign/PlatformSigner.java
similarity index 91%
rename from sop-gateway/src/main/java/com/gitee/sop/gateway/service/validate/alipay/AlipaySigner.java
rename to sop-gateway/src/main/java/com/gitee/sop/gateway/service/validate/sign/PlatformSigner.java
index 534f9d3b..4ba660cb 100644
--- a/sop-gateway/src/main/java/com/gitee/sop/gateway/service/validate/alipay/AlipaySigner.java
+++ b/sop-gateway/src/main/java/com/gitee/sop/gateway/service/validate/sign/PlatformSigner.java
@@ -1,4 +1,4 @@
-package com.gitee.sop.gateway.service.validate.alipay;
+package com.gitee.sop.gateway.service.validate.sign;
import com.gitee.sop.gateway.config.ApiConfig;
@@ -16,14 +16,14 @@ import java.util.HashMap;
import java.util.Map;
/**
- * 支付宝签名验证实现。
+ * 平台签名验证实现。
*
* @author 六如
- * @see 支付宝签名
+ * @see 平台签名
*/
@Slf4j
@Component
-public class AlipaySigner implements Signer {
+public class PlatformSigner implements Signer {
@Autowired
private ApiConfig apiConfig;
@@ -42,7 +42,7 @@ public class AlipaySigner implements Signer {
}
Map params = buildParams(apiRequest);
try {
- return AlipaySignature.rsaCheckV2(params, publicKey, charset, signType, apiConfig);
+ return SignUtil.rsaCheckV2(params, publicKey, charset, signType, apiConfig);
} catch (SignException e) {
ErrorEnum errorEnum = e.getErrorEnum();
log.error("验签错误, code={}, subCode={}, apiRequest={}",
diff --git a/sop-gateway/src/main/java/com/gitee/sop/gateway/service/validate/alipay/AlipaySignature.java b/sop-gateway/src/main/java/com/gitee/sop/gateway/service/validate/sign/SignUtil.java
similarity index 88%
rename from sop-gateway/src/main/java/com/gitee/sop/gateway/service/validate/alipay/AlipaySignature.java
rename to sop-gateway/src/main/java/com/gitee/sop/gateway/service/validate/sign/SignUtil.java
index 66dfcef3..b11e539e 100644
--- a/sop-gateway/src/main/java/com/gitee/sop/gateway/service/validate/alipay/AlipaySignature.java
+++ b/sop-gateway/src/main/java/com/gitee/sop/gateway/service/validate/sign/SignUtil.java
@@ -2,7 +2,7 @@
* Alipay.com Inc.
* Copyright (c) 2004-2012 All Rights Reserved.
*/
-package com.gitee.sop.gateway.service.validate.alipay;
+package com.gitee.sop.gateway.service.validate.sign;
import com.gitee.sop.gateway.config.ApiConfig;
@@ -10,6 +10,8 @@ import com.gitee.sop.gateway.exception.SignException;
import com.gitee.sop.gateway.message.ErrorEnum;
import com.gitee.sop.gateway.service.validate.SignConfig;
import org.apache.commons.codec.binary.Base64;
+import org.apache.commons.io.IOUtils;
+import org.apache.commons.lang3.StringUtils;
import javax.crypto.Cipher;
import java.io.ByteArrayInputStream;
@@ -17,6 +19,7 @@ import java.io.ByteArrayOutputStream;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.StringWriter;
+import java.nio.charset.StandardCharsets;
import java.security.KeyFactory;
import java.security.PrivateKey;
import java.security.PublicKey;
@@ -31,7 +34,13 @@ import java.util.Map;
/**
* @author runzhi
*/
-public class AlipaySignature {
+public class SignUtil {
+
+ private static final String SIGN_TYPE_RSA = "RSA";
+ private static final String SIGN_TYPE_RSA2 = "RSA2";
+ private static final String SIGN_ALGORITHMS = "SHA1WithRSA";
+ private static final String SIGN_SHA256RSA_ALGORITHMS = "SHA256WithRSA";
+ private static final String CHARSET_GBK = "GBK";
/**
* RSA最大加密明文大小
@@ -45,19 +54,20 @@ public class AlipaySignature {
/**
- * @param sortedParams
- * @return
+ * 返回签名内容
+ *
+ * @param params 入参
+ * @return 返回签名内容
*/
- public static String getSignContent(Map sortedParams) {
- StringBuffer content = new StringBuffer();
- List keys = new ArrayList(sortedParams.keySet());
+ public static String getSignContent(Map params) {
+ StringBuilder content = new StringBuilder();
+ List keys = new ArrayList(params.keySet());
Collections.sort(keys);
int index = 0;
- for (int i = 0; i < keys.size(); i++) {
- String key = keys.get(i);
- String value = String.valueOf(sortedParams.get(key));
- if (StringUtils.areNotEmpty(key, value)) {
- content.append((index == 0 ? "" : "&") + key + "=" + value);
+ for (String key : keys) {
+ String value = String.valueOf(params.get(key));
+ if (!StringUtils.isAnyBlank(key, value)) {
+ content.append(index == 0 ? "" : "&").append(key).append("=").append(value);
index++;
}
}
@@ -67,17 +77,17 @@ public class AlipaySignature {
/**
* rsa内容签名
*
- * @param content
- * @param publicKey
- * @param charset
- * @return
+ * @param content 内容
+ * @param publicKey 公钥
+ * @param charset 字符集
+ * @return 返回签名串
*/
public static String rsaSign(String content, String publicKey, String charset,
String signType) throws SignException {
- if (AlipayConstants.SIGN_TYPE_RSA.equals(signType)) {
+ if (SIGN_TYPE_RSA.equals(signType)) {
return rsaSign(content, publicKey, charset);
- } else if (AlipayConstants.SIGN_TYPE_RSA2.equals(signType)) {
+ } else if (SIGN_TYPE_RSA2.equals(signType)) {
return rsa256Sign(content, publicKey, charset);
} else {
throw new SignException(ErrorEnum.ISV_INVALID_SIGNATURE_TYPE);
@@ -88,20 +98,20 @@ public class AlipaySignature {
/**
* sha256WithRsa 加签
*
- * @param content
- * @param privateKey
- * @param charset
- * @return
+ * @param content 内容
+ * @param privateKey 私钥
+ * @param charset 字符集
+ * @return 返回签名串
*/
public static String rsa256Sign(String content, String privateKey,
String charset) throws SignException {
try {
- PrivateKey priKey = getPrivateKeyFromPKCS8(AlipayConstants.SIGN_TYPE_RSA,
+ PrivateKey priKey = getPrivateKeyFromPKCS8(SIGN_TYPE_RSA,
new ByteArrayInputStream(privateKey.getBytes()));
java.security.Signature signature = java.security.Signature
- .getInstance(AlipayConstants.SIGN_SHA256RSA_ALGORITHMS);
+ .getInstance(SIGN_SHA256RSA_ALGORITHMS);
signature.initSign(priKey);
@@ -123,19 +133,19 @@ public class AlipaySignature {
/**
* sha1WithRsa 加签
*
- * @param content
- * @param publicKey
- * @param charset
- * @return
+ * @param content 内容
+ * @param publicKey 公钥
+ * @param charset 字符集
+ * @return 返回签名串
*/
public static String rsaSign(String content, String publicKey,
String charset) throws SignException {
try {
- PrivateKey priKey = getPrivateKeyFromPKCS8(AlipayConstants.SIGN_TYPE_RSA,
+ PrivateKey priKey = getPrivateKeyFromPKCS8(SIGN_TYPE_RSA,
new ByteArrayInputStream(publicKey.getBytes()));
java.security.Signature signature = java.security.Signature
- .getInstance(AlipayConstants.SIGN_ALGORITHMS);
+ .getInstance(SIGN_ALGORITHMS);
signature.initSign(priKey);
@@ -171,7 +181,7 @@ public class AlipaySignature {
KeyFactory keyFactory = KeyFactory.getInstance(algorithm);
- byte[] encodedKey = StreamUtil.readText(ins, "UTF-8").getBytes();
+ byte[] encodedKey = IOUtils.toString(ins, StandardCharsets.UTF_8).getBytes();
encodedKey = Base64.decodeBase64(encodedKey);
@@ -253,11 +263,11 @@ public class AlipaySignature {
public static boolean rsaCheck(String content, String sign, String publicKey, String charset,
String signType) throws SignException {
- if (AlipayConstants.SIGN_TYPE_RSA.equals(signType)) {
+ if (SIGN_TYPE_RSA.equals(signType)) {
return rsaCheckContent(content, sign, publicKey, charset);
- } else if (AlipayConstants.SIGN_TYPE_RSA2.equals(signType)) {
+ } else if (SIGN_TYPE_RSA2.equals(signType)) {
return rsa256CheckContent(content, sign, publicKey, charset);
@@ -274,7 +284,7 @@ public class AlipaySignature {
new ByteArrayInputStream(publicKey.getBytes()));
java.security.Signature signature = java.security.Signature
- .getInstance(AlipayConstants.SIGN_SHA256RSA_ALGORITHMS);
+ .getInstance(SIGN_SHA256RSA_ALGORITHMS);
signature.initVerify(pubKey);
@@ -297,7 +307,7 @@ public class AlipaySignature {
new ByteArrayInputStream(publicKey.getBytes()));
java.security.Signature signature = java.security.Signature
- .getInstance(AlipayConstants.SIGN_ALGORITHMS);
+ .getInstance(SIGN_ALGORITHMS);
signature.initVerify(pubKey);
@@ -318,7 +328,7 @@ public class AlipaySignature {
KeyFactory keyFactory = KeyFactory.getInstance(algorithm);
StringWriter writer = new StringWriter();
- StreamUtil.io(new InputStreamReader(ins), writer);
+ IOUtils.copy(new InputStreamReader(ins), writer);
byte[] encodedKey = writer.toString().getBytes();
@@ -331,7 +341,7 @@ public class AlipaySignature {
* 验签并解密
*
* @param params 参数
- * @param alipayPublicKey 支付宝公钥
+ * @param alipayPublicKey 平台公钥
* @param cusPrivateKey 商户私钥
* @param isCheckSign 是否验签
* @param isDecrypt 是否解密
@@ -359,7 +369,7 @@ public class AlipaySignature {
* 验签并解密
*
* @param params 参数
- * @param alipayPublicKey 支付宝公钥
+ * @param alipayPublicKey 平台公钥
* @param cusPrivateKey 商户私钥
* @param isCheckSign 是否验签
* @param isDecrypt 是否解密
@@ -388,7 +398,7 @@ public class AlipaySignature {
* 目前适用于公众号
*
* @param bizContent 待加密、签名内容
- * @param alipayPublicKey 支付宝公钥
+ * @param alipayPublicKey 平台公钥
* @param cusPrivateKey 商户私钥
* @param charset 字符集,如UTF-8, GBK, GB2312
* @param isEncrypt 是否加密,true-加密 false-不加密
@@ -409,7 +419,7 @@ public class AlipaySignature {
boolean isSign) throws SignException {
StringBuilder sb = new StringBuilder();
if (StringUtils.isEmpty(charset)) {
- charset = AlipayConstants.CHARSET_GBK;
+ charset = CHARSET_GBK;
}
sb.append("");
if (isEncrypt) {
@@ -444,7 +454,7 @@ public class AlipaySignature {
* 目前适用于公众号
*
* @param bizContent 待加密、签名内容
- * @param alipayPublicKey 支付宝公钥
+ * @param alipayPublicKey 平台公钥
* @param cusPrivateKey 商户私钥
* @param charset 字符集,如UTF-8, GBK, GB2312
* @param isEncrypt 是否加密,true-加密 false-不加密
@@ -465,7 +475,7 @@ public class AlipaySignature {
boolean isSign, String signType) throws SignException {
StringBuilder sb = new StringBuilder();
if (StringUtils.isEmpty(charset)) {
- charset = AlipayConstants.CHARSET_GBK;
+ charset = CHARSET_GBK;
}
sb.append("");
if (isEncrypt) {
@@ -510,9 +520,9 @@ public class AlipaySignature {
public static String rsaEncrypt(String content, String publicKey,
String charset) throws SignException {
try {
- PublicKey pubKey = getPublicKeyFromX509(AlipayConstants.SIGN_TYPE_RSA,
+ PublicKey pubKey = getPublicKeyFromX509(SIGN_TYPE_RSA,
new ByteArrayInputStream(publicKey.getBytes()));
- Cipher cipher = Cipher.getInstance(AlipayConstants.SIGN_TYPE_RSA);
+ Cipher cipher = Cipher.getInstance(SIGN_TYPE_RSA);
cipher.init(Cipher.ENCRYPT_MODE, pubKey);
byte[] data = StringUtils.isEmpty(charset) ? content.getBytes()
: content.getBytes(charset);
@@ -553,9 +563,9 @@ public class AlipaySignature {
public static String rsaDecrypt(String content, String publicKey,
String charset) throws SignException {
try {
- PrivateKey priKey = getPrivateKeyFromPKCS8(AlipayConstants.SIGN_TYPE_RSA,
+ PrivateKey priKey = getPrivateKeyFromPKCS8(SIGN_TYPE_RSA,
new ByteArrayInputStream(publicKey.getBytes()));
- Cipher cipher = Cipher.getInstance(AlipayConstants.SIGN_TYPE_RSA);
+ Cipher cipher = Cipher.getInstance(SIGN_TYPE_RSA);
cipher.init(Cipher.DECRYPT_MODE, priKey);
byte[] encryptedData = StringUtils.isEmpty(charset)
? Base64.decodeBase64(content.getBytes())
diff --git a/sop-sdk/sdk-java/src/main/java/com/gitee/sop/sdk/client/OpenClient.java b/sop-sdk/sdk-java/src/main/java/com/gitee/sop/sdk/client/OpenClient.java
index 5f28c27d..d91fd3bc 100644
--- a/sop-sdk/sdk-java/src/main/java/com/gitee/sop/sdk/client/OpenClient.java
+++ b/sop-sdk/sdk-java/src/main/java/com/gitee/sop/sdk/client/OpenClient.java
@@ -12,7 +12,7 @@ import com.gitee.sop.sdk.common.SopSdkErrors;
import com.gitee.sop.sdk.exception.SdkException;
import com.gitee.sop.sdk.request.BaseRequest;
import com.gitee.sop.sdk.sign.SopSignException;
-import com.gitee.sop.sdk.sign.SopSignature;
+import com.gitee.sop.sdk.sign.SignUtil;
import com.gitee.sop.sdk.sign.StringUtils;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
@@ -155,10 +155,10 @@ public class OpenClient {
}
form.put(this.openConfig.getAppKeyName(), this.appId);
- String content = SopSignature.getSignContent(form);
+ String content = SignUtil.getSignContent(form);
String sign;
try {
- sign = SopSignature.rsaSign(content, privateKey, openConfig.getCharset(), openConfig.getSignType());
+ sign = SignUtil.rsaSign(content, privateKey, openConfig.getCharset(), openConfig.getSignType());
} catch (SopSignException e) {
throw new SdkException("构建签名错误", e);
}
@@ -168,7 +168,7 @@ public class OpenClient {
String resp = doExecute(this.url, requestForm, Collections.emptyMap());
if (log.isDebugEnabled()) {
log.debug("----------- 请求信息 -----------"
- + "\n请求参数:" + SopSignature.getSignContent(form)
+ + "\n请求参数:" + SignUtil.getSignContent(form)
+ "\n待签名内容:" + content
+ "\n签名(sign):" + sign
+ "\n----------- 返回结果 -----------"
@@ -274,7 +274,7 @@ public class OpenClient {
try {
String charset = this.openConfig.getCharset();
String signType = this.openConfig.getSignType();
- return SopSignature.rsaCheck(signContent, sign, publicKeyPlatform, charset, signType);
+ return SignUtil.rsaCheck(signContent, sign, publicKeyPlatform, charset, signType);
} catch (SopSignException e) {
log.error("验证服务端sign出错,signContent:" + signContent, e);
return false;
diff --git a/sop-sdk/sdk-java/src/main/java/com/gitee/sop/sdk/sign/SopSignature.java b/sop-sdk/sdk-java/src/main/java/com/gitee/sop/sdk/sign/SignUtil.java
similarity index 98%
rename from sop-sdk/sdk-java/src/main/java/com/gitee/sop/sdk/sign/SopSignature.java
rename to sop-sdk/sdk-java/src/main/java/com/gitee/sop/sdk/sign/SignUtil.java
index 811ae669..8b11676d 100644
--- a/sop-sdk/sdk-java/src/main/java/com/gitee/sop/sdk/sign/SopSignature.java
+++ b/sop-sdk/sdk-java/src/main/java/com/gitee/sop/sdk/sign/SignUtil.java
@@ -22,10 +22,9 @@ import java.util.List;
import java.util.Map;
/**
- *
- * @author runzhi
+ * 签名工具
*/
-public class SopSignature {
+public class SignUtil {
/** RSA最大加密明文大小 */
private static final int MAX_ENCRYPT_BLOCK = 117;
@@ -49,20 +48,19 @@ public class SopSignature {
/**
- *
+ * 获取签名内容
* @param sortedParams
* @return
*/
public static String getSignContent(Map sortedParams) {
- StringBuffer content = new StringBuffer();
+ StringBuilder content = new StringBuilder();
List keys = new ArrayList(sortedParams.keySet());
Collections.sort(keys);
int index = 0;
- for (int i = 0; i < keys.size(); i++) {
- String key = keys.get(i);
+ for (String key : keys) {
String value = String.valueOf(sortedParams.get(key));
if (StringUtils.areNotEmpty(key, value)) {
- content.append((index == 0 ? "" : "&") + key + "=" + value);
+ content.append(index == 0 ? "" : "&").append(key).append("=").append(value);
index++;
}
}
@@ -71,7 +69,7 @@ public class SopSignature {
/**
* rsa内容签名
- *
+ *
* @param content
* @param privateKey
* @param charset
@@ -96,7 +94,7 @@ public class SopSignature {
/**
* sha256WithRsa 加签
- *
+ *
* @param content
* @param privateKey
* @param charset
@@ -132,7 +130,7 @@ public class SopSignature {
/**
* sha1WithRsa 加签
- *
+ *
* @param content
* @param privateKey
* @param charset
@@ -237,12 +235,12 @@ public class SopSignature {
return rsaCheckContent(content, sign, publicKey, charset);
}
-
+
public static boolean rsaCheckV1(Map params, String publicKey,
String charset,String signType) throws SopSignException {
String sign = params.get("sign");
String content = getSignCheckContentV1(params);
-
+
return rsaCheck(content, sign, publicKey, charset,signType);
}
@@ -253,12 +251,12 @@ public class SopSignature {
return rsaCheckContent(content, sign, publicKey, charset);
}
-
+
public static boolean rsaCheckV2(Map params, String publicKey,
String charset,String signType) throws SopSignException {
String sign = String.valueOf(params.get("sign"));
String content = getSignCheckContentV2(params);
-
+
return rsaCheck(content, sign, publicKey, charset,signType);
}
@@ -379,7 +377,7 @@ public class SopSignature {
return bizContent;
}
-
+
/**
* 验签并解密
*
@@ -470,7 +468,7 @@ public class SopSignature {
}
return sb.toString();
}
-
+
/**
* 加密并签名
* 目前适用于公众号
@@ -530,7 +528,7 @@ public class SopSignature {
/**
* 公钥加密
- *
+ *
* @param content 待加密内容
* @param publicKey 公钥
* @param charset 字符集,如UTF-8, GBK, GB2312
@@ -551,7 +549,7 @@ public class SopSignature {
int offSet = 0;
byte[] cache;
int i = 0;
- // 对数据分段加密
+ // 对数据分段加密
while (inputLen - offSet > 0) {
if (inputLen - offSet > MAX_ENCRYPT_BLOCK) {
cache = cipher.doFinal(data, offSet, MAX_ENCRYPT_BLOCK);
@@ -575,7 +573,7 @@ public class SopSignature {
/**
* 私钥解密
- *
+ *
* @param content 待解密内容
* @param privateKey 私钥
* @param charset 字符集,如UTF-8, GBK, GB2312
@@ -597,7 +595,7 @@ public class SopSignature {
int offSet = 0;
byte[] cache;
int i = 0;
- // 对数据分段解密
+ // 对数据分段解密
while (inputLen - offSet > 0) {
if (inputLen - offSet > MAX_DECRYPT_BLOCK) {
cache = cipher.doFinal(encryptedData, offSet, MAX_DECRYPT_BLOCK);
diff --git a/sop-test/src/main/java/com/gitee/sop/test/alipay/AlipaySignature.java b/sop-test/src/main/java/com/gitee/sop/test/alipay/AlipaySignature.java
index 2836f113..913242ad 100644
--- a/sop-test/src/main/java/com/gitee/sop/test/alipay/AlipaySignature.java
+++ b/sop-test/src/main/java/com/gitee/sop/test/alipay/AlipaySignature.java
@@ -345,7 +345,7 @@ public class AlipaySignature {
*
}
*
* @param params
- * @param alipayPublicKey 支付宝公钥
+ * @param alipayPublicKey 平台公钥
* @param cusPrivateKey 商户私钥
* @param isCheckSign 是否验签
* @param isDecrypt 是否解密
@@ -383,7 +383,7 @@ public class AlipaySignature {
*
}
*
* @param params
- * @param alipayPublicKey 支付宝公钥
+ * @param alipayPublicKey 平台公钥
* @param cusPrivateKey 商户私钥
* @param isCheckSign 是否验签
* @param isDecrypt 是否解密
@@ -412,7 +412,7 @@ public class AlipaySignature {
* 加密并签名
* 目前适用于公众号
* @param bizContent 待加密、签名内容
- * @param alipayPublicKey 支付宝公钥
+ * @param alipayPublicKey 平台公钥
* @param cusPrivateKey 商户私钥
* @param charset 字符集,如UTF-8, GBK, GB2312
* @param isEncrypt 是否加密,true-加密 false-不加密
@@ -465,7 +465,7 @@ public class AlipaySignature {
* 加密并签名
* 目前适用于公众号
* @param bizContent 待加密、签名内容
- * @param alipayPublicKey 支付宝公钥
+ * @param alipayPublicKey 平台公钥
* @param cusPrivateKey 商户私钥
* @param charset 字符集,如UTF-8, GBK, GB2312
* @param isEncrypt 是否加密,true-加密 false-不加密
diff --git a/sop-test/src/test/java/com/gitee/sop/test/AlipayClientPostTest.java b/sop-test/src/test/java/com/gitee/sop/test/AlipayClientPostTest.java
index 2b28dce8..fe98fc52 100644
--- a/sop-test/src/test/java/com/gitee/sop/test/AlipayClientPostTest.java
+++ b/sop-test/src/test/java/com/gitee/sop/test/AlipayClientPostTest.java
@@ -10,7 +10,7 @@ import java.util.HashMap;
import java.util.Map;
/**
- * 模仿支付宝客户端请求接口
+ * 客户端请求接口
*/
public class AlipayClientPostTest extends TestBase {
@@ -21,7 +21,7 @@ public class AlipayClientPostTest extends TestBase {
/**
参数 类型 是否必填 最大长度 描述 示例值
- app_id String 是 32 支付宝分配给开发者的应用ID 2014072300007148
+ app_id String 是 32 平台分配给开发者的应用ID 2014072300007148
method String 是 128 接口名称 alipay.trade.fastpay.refund.query
format String 否 40 仅支持JSON JSON
charset String 是 10 请求使用的编码格式,如utf-8,gbk,gb2312等 utf-8
@@ -39,12 +39,12 @@ public class AlipayClientPostTest extends TestBase {
// 公共请求参数
Map params = new HashMap();
params.put("app_id", appId);
- params.put("method", "alipay.trade.wap.pay");
+ params.put("method", "pay.trade.wap.pay");
params.put("format", "json");
params.put("charset", "utf-8");
params.put("sign_type", "RSA2");
params.put("timestamp", new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()));
- params.put("version", "2.0");
+ params.put("version", "1.0");
// 业务参数
Map bizContent = new HashMap<>();
diff --git a/sop-website/sop-website-frontend/src/views/doc/api/index.ts b/sop-website/sop-website-frontend/src/views/doc/api/index.ts
index 833b80ba..93a741f3 100644
--- a/sop-website/sop-website-frontend/src/views/doc/api/index.ts
+++ b/sop-website/sop-website-frontend/src/views/doc/api/index.ts
@@ -45,9 +45,13 @@ export const showSandBoxUrl = computed(() => {
return docDetail.value.docInfoConfig?.openSandboxUrl?.length > 0;
});
+export const showDoc = computed(() => {
+ return docDetail.value?.docInfoView?.url?.length > 0;
+});
+
/*
参数 类型 是否必填 最大长度 描述 示例值
- app_id String 是 32 支付宝分配给开发者的应用ID 2014072300007148
+ app_id String 是 32 平台分配给开发者的应用ID 2014072300007148
method String 是 128 接口名称 alipay.trade.fastpay.refund.query
format String 否 40 仅支持JSON JSON
charset String 是 10 请求使用的编码格式,如utf-8,gbk,gb2312等 utf-8
diff --git a/sop-website/sop-website-frontend/src/views/doc/api/index.vue b/sop-website/sop-website-frontend/src/views/doc/api/index.vue
index f927c7be..42a8f503 100644
--- a/sop-website/sop-website-frontend/src/views/doc/api/index.vue
+++ b/sop-website/sop-website-frontend/src/views/doc/api/index.vue
@@ -13,7 +13,8 @@ import {
handleNodeClick,
showUrl,
showProdUrl,
- showSandBoxUrl
+ showSandBoxUrl,
+ showDoc
} from "./index";
import { ApiParamTable } from "@/components/ApiParamTable";
import MavonEditor from "mavon-editor";
@@ -39,7 +40,7 @@ const defaultProps = {
:value="item.id"
/>
-