diff --git a/changelog.md b/changelog.md
index 419f5415..692483fb 100644
--- a/changelog.md
+++ b/changelog.md
@@ -1,5 +1,11 @@
# changelog
+## 1.12.4
+
+- 优化属性文件配置
+- 新增sleuth接入文档
+- admin的isv列表新增备注字段
+
## 1.12.3
- 修复删除zk节点导致的BUG
diff --git a/doc/docs/_sidebar.md b/doc/docs/_sidebar.md
index 28cb8fb7..88f0f8b6 100644
--- a/doc/docs/_sidebar.md
+++ b/doc/docs/_sidebar.md
@@ -1,31 +1,32 @@
-* [首页](/?t=1562744547267)
+* [首页](/?t=1563439736156)
* 开发文档
- * [快速体验](files/10010_快速体验.md?t=1562744547269)
- * [项目接入到SOP](files/10011_项目接入到SOP.md?t=1562744547286)
- * [新增接口](files/10020_新增接口.md?t=1562744547286)
- * [业务参数校验](files/10030_业务参数校验.md?t=1562744547287)
- * [错误处理](files/10040_错误处理.md?t=1562744547287)
- * [编写文档](files/10041_编写文档.md?t=1562744547287)
- * [接口交互详解](files/10050_接口交互详解.md?t=1562744547287)
- * [easyopen支持](files/10070_easyopen支持.md?t=1562744547287)
- * [使用签名校验工具](files/10080_使用签名校验工具.md?t=1562744547287)
- * [ISV管理](files/10085_ISV管理.md?t=1562744547287)
- * [自定义路由](files/10086_自定义路由.md?t=1562744547287)
- * [路由授权](files/10090_路由授权.md?t=1562744547287)
- * [接口限流](files/10092_接口限流.md?t=1562744547288)
- * [监控日志](files/10093_监控日志.md?t=1562744547288)
- * [SDK开发](files/10095_SDK开发.md?t=1562744547288)
- * [使用SpringCloudGateway](files/10096_使用SpringCloudGateway.md?t=1562744547288)
- * [应用授权](files/10097_应用授权.md?t=1562744547288)
- * [更改数据节点名称](files/10099_更改数据节点名称.md?t=1562744547288)
- * [对接前端](files/10100_对接前端.md?t=1562744547288)
- * [自定义过滤器](files/10102_自定义过滤器.md?t=1562744547288)
- * [文件上传](files/10104_文件上传.md?t=1562744547289)
- * [nacos注册中心](files/10106_nacos注册中心.md?t=1562744547289)
- * [扩展其它注册中心](files/10107_扩展其它注册中心.md?t=1562744547289)
+ * [快速体验](files/10010_快速体验.md?t=1563439736157)
+ * [项目接入到SOP](files/10011_项目接入到SOP.md?t=1563439736174)
+ * [新增接口](files/10020_新增接口.md?t=1563439736174)
+ * [业务参数校验](files/10030_业务参数校验.md?t=1563439736174)
+ * [错误处理](files/10040_错误处理.md?t=1563439736174)
+ * [编写文档](files/10041_编写文档.md?t=1563439736174)
+ * [接口交互详解](files/10050_接口交互详解.md?t=1563439736174)
+ * [easyopen支持](files/10070_easyopen支持.md?t=1563439736175)
+ * [使用签名校验工具](files/10080_使用签名校验工具.md?t=1563439736175)
+ * [ISV管理](files/10085_ISV管理.md?t=1563439736175)
+ * [自定义路由](files/10086_自定义路由.md?t=1563439736175)
+ * [路由授权](files/10090_路由授权.md?t=1563439736175)
+ * [接口限流](files/10092_接口限流.md?t=1563439736175)
+ * [监控日志](files/10093_监控日志.md?t=1563439736175)
+ * [SDK开发](files/10095_SDK开发.md?t=1563439736175)
+ * [使用SpringCloudGateway](files/10096_使用SpringCloudGateway.md?t=1563439736176)
+ * [应用授权](files/10097_应用授权.md?t=1563439736176)
+ * [更改数据节点名称](files/10099_更改数据节点名称.md?t=1563439736176)
+ * [对接前端](files/10100_对接前端.md?t=1563439736176)
+ * [自定义过滤器](files/10102_自定义过滤器.md?t=1563439736176)
+ * [文件上传](files/10104_文件上传.md?t=1563439736176)
+ * [nacos注册中心](files/10106_nacos注册中心.md?t=1563439736176)
+ * [扩展其它注册中心](files/10107_扩展其它注册中心.md?t=1563439736176)
+ * [配置Sleuth链路追踪](files/10109_配置Sleuth链路追踪.md?t=1563439736176)
* 原理分析
- * [原理分析之@ApiMapping](files/90010_原理分析之@ApiMapping.md?t=1562744547289)
- * [原理分析之路由存储](files/90011_原理分析之路由存储.md?t=1562744547289)
- * [原理分析之如何路由](files/90012_原理分析之如何路由.md?t=1562744547289)
- * [原理分析之文档归纳](files/90013_原理分析之文档归纳.md?t=1562744547289)
- * [常见问题](files/90100_常见问题.md?t=1562744547289)
+ * [原理分析之@ApiMapping](files/90010_原理分析之@ApiMapping.md?t=1563439736177)
+ * [原理分析之路由存储](files/90011_原理分析之路由存储.md?t=1563439736177)
+ * [原理分析之如何路由](files/90012_原理分析之如何路由.md?t=1563439736177)
+ * [原理分析之文档归纳](files/90013_原理分析之文档归纳.md?t=1563439736177)
+ * [常见问题](files/90100_常见问题.md?t=1563439736177)
diff --git a/doc/docs/files/10010_快速体验.md b/doc/docs/files/10010_快速体验.md
index 86590f45..98da7209 100644
--- a/doc/docs/files/10010_快速体验.md
+++ b/doc/docs/files/10010_快速体验.md
@@ -6,15 +6,15 @@
- 执行Mysql脚本`sop.sql`
- IDE安装lombok插件,然后打开项目(IDEA下可以打开根pom.xml,然后open as project)
- 启动注册中心,sop-registry(运行SopRegistryApplication.java)
+- 启动网关:打开sop-gateway下的`application-dev.properties`,修改数据库`username/password`,指定zookeeper地址,运行`SopGatewayApplication.java`
- 启动微服务:sop-story-web(运行SopStoryApplication.java)
-- 启动网关:打开sop-gateway下的`application-dev.yml`,修改数据库`username/password`,运行`SopGatewayApplication.java`
- 找到sop-test,打开测试用例,进行接口调用测试,运行com.gitee.sop.AlipayClientPostTest.testPost()
确保注册中心先启动
## 使用admin
-- 找到`sop-admin/sop-admin-server`工程,打开sop-admin-server下的`application-dev.yml`,修改数据库`username/password`
+- 找到`sop-admin/sop-admin-server`工程,打开sop-admin-server下的`application-dev.properties`,修改相关配置
- 运行`com.gitee.sop.adminserver.SopAdminServerApplication.java`
- 访问:`http://localhost:8082`
diff --git a/doc/docs/files/10109_配置Sleuth链路追踪.md b/doc/docs/files/10109_配置Sleuth链路追踪.md
new file mode 100644
index 00000000..794bba25
--- /dev/null
+++ b/doc/docs/files/10109_配置Sleuth链路追踪.md
@@ -0,0 +1,104 @@
+# 配置Sleuth链路追踪
+
+配置了Sleuth可以很方便查看微服务的调用路线图,可快速定位问题。
+
+SOP基于SpringCloud,因此只要整合[Spring Cloud Sleuth](https://spring.io/projects/spring-cloud-sleuth)即可。
+除此之外,还需要支持dubbo的链路的跟踪,Sleuth在2.0已经对dubbo做了支持,详见:[brave-instrumentation-dubbo-rpc](https://github.com/openzipkin/brave/tree/master/instrumentation/dubbo-rpc)
+
+接入Spring Cloud Sleuth步骤如下:
+
+- 下载zipkin服务器
+
+以mac环境为例,执行下面命令,下载jar并启动zipkin服务
+
+```
+curl -sSL https://zipkin.io/quickstart.sh | bash -s
+java -jar zipkin.jar
+```
+
+默认端口是9411,更多安装方式详见:[quickstart](https://zipkin.io/pages/quickstart.html)
+
+- sop-gateway/pom.xml添加依赖
+
+```xml
+
+
+ org.springframework.cloud
+ spring-cloud-starter-zipkin
+
+```
+
+配置文件新增
+
+```properties
+# zipkin服务跟踪
+spring.zipkin.base-url=http://127.0.0.1:9411/
+# 设置sleuth收集信息的比率,默认0.1,最大是1,数字越大越耗性能
+spring.sleuth.sampler.probability=1
+```
+重启sop-gateway
+
+- 打开sop-story-web/pom.xml
+
+添加依赖:
+
+```xml
+
+
+ org.springframework.cloud
+ spring-cloud-starter-zipkin
+
+
+
+ io.zipkin.brave
+ brave-instrumentation-dubbo-rpc
+ 5.6.6
+
+```
+
+配置文件新增:
+
+```properties
+# zipkin服务跟踪
+spring.zipkin.base-url=http://127.0.0.1:9411/
+# 设置sleuth收集信息的比率,默认0.1,最大是1,数字越大越耗性能
+spring.sleuth.sampler.probability=1
+# dubbo使用zipkin过滤器
+dubbo.provider.filter=tracing
+dubbo.consumer.filter=tracing
+```
+
+重启服务
+
+- 打开sop-book/sop-book-web/pom.xml
+
+步骤同上
+
+- 运行DubboDemoTest.java单元测试
+
+运行完毕看控制台,找到日志信息
+
+```text
+2019-07-18 16:22:04.438 INFO [story-service,59dae98250b276bd,60828035658f175f,true] 90553 --- [:12345-thread-2] c.g.s.s.service.DefaultDemoService : dubbo provider, param: DemoParam(id=222)
+```
+
+日志内容多了`[story-service,59dae98250b276bd,60828035658f175f,true]`部分,这些是zipkin加进去的,说明如下:
+
+```text
+story-service:服务名称
+59dae98250b276bd:traceId
+60828035658f175f:spanId
+true:是否上传到zipkin服务器
+```
+
+查看各个服务的控制台,可以发现traceId是一致的。
+
+- 浏览器打开:http://127.0.0.1:9411/
+
+将traceId复制黏贴到右上角文本框进行查询,可看到服务调用链。
+
+
+![预览](images/10109_1.png "10109_1.png")
+
+
+
diff --git a/doc/docs/files/images/10109_1.png b/doc/docs/files/images/10109_1.png
new file mode 100644
index 00000000..6dc46da9
Binary files /dev/null and b/doc/docs/files/images/10109_1.png differ
diff --git a/doc/docs/index.html b/doc/docs/index.html
index 80152d93..951b1933 100644
--- a/doc/docs/index.html
+++ b/doc/docs/index.html
@@ -38,7 +38,7 @@
loadSidebar: true,
loadNavbar: false,
mergeNavbar: true,
- maxLevel: 4,
+ maxLevel: 3,
subMaxLevel: 2,
ga: 'UA-106147152-1',
name: '',
diff --git a/sop-1.12.4.sql b/sop-1.12.4.sql
new file mode 100644
index 00000000..f0ece71b
--- /dev/null
+++ b/sop-1.12.4.sql
@@ -0,0 +1,2 @@
+ALTER TABLE `sop`.`isv_info` ADD COLUMN `remark` VARCHAR(128) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '备注' AFTER `sign_type`;
+
diff --git a/sop-admin/sop-admin-server/pom.xml b/sop-admin/sop-admin-server/pom.xml
index b7ca28fe..92c1113a 100644
--- a/sop-admin/sop-admin-server/pom.xml
+++ b/sop-admin/sop-admin-server/pom.xml
@@ -30,7 +30,7 @@
com.gitee.sop
sop-registry-api
- 1.12.3-SNAPSHOT
+ 1.12.4-SNAPSHOT
diff --git a/sop-admin/sop-admin-server/src/main/java/com/gitee/sop/adminserver/api/isv/param/IsvInfoForm.java b/sop-admin/sop-admin-server/src/main/java/com/gitee/sop/adminserver/api/isv/param/IsvInfoForm.java
index 6d62d1c2..90d88ebc 100644
--- a/sop-admin/sop-admin-server/src/main/java/com/gitee/sop/adminserver/api/isv/param/IsvInfoForm.java
+++ b/sop-admin/sop-admin-server/src/main/java/com/gitee/sop/adminserver/api/isv/param/IsvInfoForm.java
@@ -2,6 +2,7 @@ package com.gitee.sop.adminserver.api.isv.param;
import com.gitee.easyopen.doc.annotation.ApiDocField;
import lombok.Data;
+import org.hibernate.validator.constraints.Length;
import java.util.Collections;
import java.util.List;
@@ -16,6 +17,10 @@ public class IsvInfoForm {
@ApiDocField(description = "状态:0:启用,1:禁用")
private Byte status = 0;
+ @ApiDocField(description = "备注")
+ @Length(max = 100, message = "长度不得唱过100")
+ private String remark;
+
@ApiDocField(description = "roleCode数组", elementClass = String.class)
private List roleCode = Collections.emptyList();
}
diff --git a/sop-admin/sop-admin-server/src/main/java/com/gitee/sop/adminserver/api/isv/result/IsvInfoVO.java b/sop-admin/sop-admin-server/src/main/java/com/gitee/sop/adminserver/api/isv/result/IsvInfoVO.java
index e2279495..98821496 100644
--- a/sop-admin/sop-admin-server/src/main/java/com/gitee/sop/adminserver/api/isv/result/IsvInfoVO.java
+++ b/sop-admin/sop-admin-server/src/main/java/com/gitee/sop/adminserver/api/isv/result/IsvInfoVO.java
@@ -26,6 +26,9 @@ public class IsvInfoVO {
@ApiDocField(description = "签名类型:1:RSA2,2:MD5")
private Byte signType;
+ @ApiDocField(description = "备注")
+ private String remark;
+
/** 数据库字段:gmt_create */
@ApiDocField(description = "添加时间")
private Date gmtCreate;
diff --git a/sop-admin/sop-admin-server/src/main/java/com/gitee/sop/adminserver/entity/IsvInfo.java b/sop-admin/sop-admin-server/src/main/java/com/gitee/sop/adminserver/entity/IsvInfo.java
index 44720207..1a95e68b 100644
--- a/sop-admin/sop-admin-server/src/main/java/com/gitee/sop/adminserver/entity/IsvInfo.java
+++ b/sop-admin/sop-admin-server/src/main/java/com/gitee/sop/adminserver/entity/IsvInfo.java
@@ -40,6 +40,9 @@ public class IsvInfo {
/** 1启用,2禁用, 数据库字段:status */
private Byte status;
+ /** 备注,数据库字段:remark */
+ private String remark;
+
/** 数据库字段:gmt_create */
private Date gmtCreate;
diff --git a/sop-admin/sop-admin-server/src/main/resources/public/index.html b/sop-admin/sop-admin-server/src/main/resources/public/index.html
index db9c4412..1052e74f 100644
--- a/sop-admin/sop-admin-server/src/main/resources/public/index.html
+++ b/sop-admin/sop-admin-server/src/main/resources/public/index.html
@@ -1 +1 @@
-SOP Admin
\ No newline at end of file
+SOP Admin
\ No newline at end of file
diff --git a/sop-admin/sop-admin-server/src/main/resources/public/static/js/chunk-25908fca.9d8bc0b6.js b/sop-admin/sop-admin-server/src/main/resources/public/static/js/chunk-25908fca.9d8bc0b6.js
deleted file mode 100644
index ec5a6661..00000000
--- a/sop-admin/sop-admin-server/src/main/resources/public/static/js/chunk-25908fca.9d8bc0b6.js
+++ /dev/null
@@ -1 +0,0 @@
-(window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-25908fca"],{"021d":function(e,t,a){},"0bac":function(e,t,a){"use strict";var s=a("021d"),i=a.n(s);i.a},cb56:function(e,t,a){"use strict";a.r(t);var s=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",{staticClass:"app-container"},[a("el-form",{staticClass:"demo-form-inline",attrs:{inline:!0,model:e.searchFormData,size:"mini"}},[a("el-form-item",{attrs:{label:"appKey"}},[a("el-input",{staticStyle:{width:"250px"},attrs:{clearable:!0,placeholder:"appKey"},model:{value:e.searchFormData.appKey,callback:function(t){e.$set(e.searchFormData,"appKey",t)},expression:"searchFormData.appKey"}})],1),e._v(" "),a("el-form-item",[a("el-button",{attrs:{type:"primary",icon:"el-icon-search"},on:{click:e.onSearchTable}},[e._v("查询")])],1)],1),e._v(" "),a("el-button",{staticStyle:{"margin-bottom":"10px"},attrs:{type:"primary",size:"mini",icon:"el-icon-plus"},on:{click:e.onAdd}},[e._v("新增ISV")]),e._v(" "),a("el-table",{attrs:{data:e.pageInfo.list,border:"",fit:"","highlight-current-row":""}},[a("el-table-column",{attrs:{prop:"id",label:"ID",width:"80"}}),e._v(" "),a("el-table-column",{attrs:{prop:"appKey",label:"appKey",width:"250"}}),e._v(" "),a("el-table-column",{attrs:{prop:"",label:"秘钥",width:"80"},scopedSlots:e._u([{key:"default",fn:function(t){return[a("el-button",{attrs:{type:"text",size:"mini"},on:{click:function(a){return e.onShowKeys(t.row)}}},[e._v("查看")])]}}])}),e._v(" "),a("el-table-column",{attrs:{prop:"roleList",label:"角色"},scopedSlots:e._u([{key:"default",fn:function(t){return[a("div",{domProps:{innerHTML:e._s(e.roleRender(t.row))}})]}}])}),e._v(" "),a("el-table-column",{attrs:{prop:"status",label:"状态",width:"80"},scopedSlots:e._u([{key:"default",fn:function(t){return[1===t.row.status?a("span",{staticStyle:{color:"#67C23A"}},[e._v("已启用")]):e._e(),e._v(" "),2===t.row.status?a("span",{staticStyle:{color:"#F56C6C"}},[e._v("已禁用")]):e._e()]}}])}),e._v(" "),a("el-table-column",{attrs:{prop:"gmtCreate",label:"添加时间",width:"160"}}),e._v(" "),a("el-table-column",{attrs:{prop:"gmtModified",label:"修改时间",width:"160"}}),e._v(" "),a("el-table-column",{attrs:{label:"操作",width:"150"},scopedSlots:e._u([{key:"default",fn:function(t){return[a("el-button",{attrs:{type:"text",size:"mini"},on:{click:function(a){return e.onTableUpdate(t.row)}}},[e._v("修改")]),e._v(" "),a("el-button",{attrs:{type:"text",size:"mini"},on:{click:function(a){return e.onKeysUpdate(t.row)}}},[e._v("秘钥管理")])]}}])})],1),e._v(" "),a("el-pagination",{staticStyle:{"margin-top":"5px"},attrs:{background:"","current-page":e.searchFormData.pageIndex,"page-size":e.searchFormData.pageSize,"page-sizes":[5,10,20,40],total:e.pageInfo.total,layout:"total, sizes, prev, pager, next"},on:{"size-change":e.onSizeChange,"current-change":e.onPageIndexChange}}),e._v(" "),a("el-dialog",{attrs:{title:e.isvDialogTitle,visible:e.isvDialogVisible,"close-on-click-modal":!1},on:{"update:visible":function(t){e.isvDialogVisible=t},close:e.onIsvDialogClose}},[a("el-form",{ref:"isvForm",attrs:{rules:e.rulesIsvForm,model:e.isvDialogFormData,"label-width":"120px",size:"mini"}},[a("el-form-item",{attrs:{label:"appKey"}},[0===e.isvDialogFormData.id?a("span",{staticStyle:{color:"gray"}},[e._v("(系统自动生成)")]):a("span",[e._v(e._s(e.isvDialogFormData.appKey))])]),e._v(" "),a("el-form-item",{attrs:{label:"角色"}},[a("el-checkbox-group",{model:{value:e.isvDialogFormData.roleCode,callback:function(t){e.$set(e.isvDialogFormData,"roleCode",t)},expression:"isvDialogFormData.roleCode"}},e._l(e.roles,function(t){return a("el-checkbox",{key:t.roleCode,attrs:{label:t.roleCode}},[e._v(e._s(t.description))])}),1)],1),e._v(" "),a("el-form-item",{attrs:{label:"状态"}},[a("el-radio-group",{model:{value:e.isvDialogFormData.status,callback:function(t){e.$set(e.isvDialogFormData,"status",t)},expression:"isvDialogFormData.status"}},[a("el-radio",{attrs:{label:1,name:"status"}},[e._v("启用")]),e._v(" "),a("el-radio",{attrs:{label:2,name:"status"}},[e._v("禁用")])],1)],1)],1),e._v(" "),a("div",{staticClass:"dialog-footer",attrs:{slot:"footer"},slot:"footer"},[a("el-button",{on:{click:function(t){e.isvDialogVisible=!1}}},[e._v("取 消")]),e._v(" "),a("el-button",{attrs:{type:"primary"},on:{click:e.onIsvDialogSave}},[e._v("保 存")])],1)],1),e._v(" "),a("el-dialog",{attrs:{title:"秘钥信息",visible:e.isvKeysDialogVisible},on:{"update:visible":function(t){e.isvKeysDialogVisible=t},close:function(t){return e.resetForm("isvKeysFrom")}}},[a("el-form",{ref:"isvKeysFrom",staticClass:"key-view",attrs:{model:e.isvKeysFormData,"label-width":"160px",size:"mini"}},[a("el-form-item",{attrs:{label:""}},[a("el-alert",{attrs:{title:"带 ★ 的分配给开发者",type:"warning",closable:!1}})],1),e._v(" "),a("el-form-item",{attrs:{label:e.selfLabel("appKey")}},[a("span",[e._v(e._s(e.isvKeysFormData.appKey))])]),e._v(" "),a("el-form-item",{directives:[{name:"show",rawName:"v-show",value:e.showKeys(),expression:"showKeys()"}],attrs:{label:"秘钥格式"}},[1===e.isvKeysFormData.keyFormat?a("span",[e._v("PKCS8(JAVA适用)")]):e._e(),e._v(" "),2===e.isvKeysFormData.keyFormat?a("span",[e._v("PKCS1(非JAVA适用)")]):e._e()]),e._v(" "),a("el-form-item",{directives:[{name:"show",rawName:"v-show",value:2===e.isvKeysFormData.signType,expression:"isvKeysFormData.signType === 2"}],attrs:{label:e.selfLabel("secret")}},[a("span",[e._v(e._s(e.isvKeysFormData.secret))])]),e._v(" "),a("fieldset",{directives:[{name:"show",rawName:"v-show",value:e.showKeys(),expression:"showKeys()"}]},[a("legend",[e._v("ISV公私钥")]),e._v(" "),a("el-form-item",{attrs:{label:"ISV公钥"}},[a("el-input",{attrs:{type:"textarea",readonly:""},model:{value:e.isvKeysFormData.publicKeyIsv,callback:function(t){e.$set(e.isvKeysFormData,"publicKeyIsv",t)},expression:"isvKeysFormData.publicKeyIsv"}})],1),e._v(" "),a("el-form-item",{attrs:{label:e.selfLabel("ISV私钥")}},[a("el-input",{attrs:{type:"textarea",readonly:""},model:{value:e.isvKeysFormData.privateKeyIsv,callback:function(t){e.$set(e.isvKeysFormData,"privateKeyIsv",t)},expression:"isvKeysFormData.privateKeyIsv"}})],1)],1),e._v(" "),a("fieldset",{directives:[{name:"show",rawName:"v-show",value:e.showKeys(),expression:"showKeys()"}]},[a("legend",[e._v("平台公私钥")]),e._v(" "),a("el-form-item",{attrs:{label:e.selfLabel("平台公钥")}},[a("el-input",{attrs:{type:"textarea",readonly:""},model:{value:e.isvKeysFormData.publicKeyPlatform,callback:function(t){e.$set(e.isvKeysFormData,"publicKeyPlatform",t)},expression:"isvKeysFormData.publicKeyPlatform"}})],1),e._v(" "),a("el-form-item",{attrs:{prop:"privateKeyPlatform",label:"平台私钥"}},[a("el-input",{attrs:{type:"textarea",readonly:""},model:{value:e.isvKeysFormData.privateKeyPlatform,callback:function(t){e.$set(e.isvKeysFormData,"privateKeyPlatform",t)},expression:"isvKeysFormData.privateKeyPlatform"}})],1)],1)],1),e._v(" "),a("span",{staticClass:"dialog-footer",attrs:{slot:"footer"},slot:"footer"},[a("el-button",{on:{click:function(t){e.isvKeysDialogVisible=!1}}},[e._v("关 闭")])],1)],1)],1)},i=[],o={data:function(){return{searchFormData:{appKey:"",pageIndex:1,pageSize:10},pageInfo:{list:[],total:0},roles:[],isvDialogVisible:!1,isvDialogTitle:"新增ISV",isvDialogFormData:{id:0,status:1,roleCode:[]},rulesIsvForm:{appKey:[{required:!0,message:"不能为空",trigger:"blur"},{min:1,max:100,message:"长度在 1 到 100 个字符",trigger:"blur"}]},isvKeysDialogVisible:!1,isvKeysFormData:{appKey:"",secret:"",publicKeyIsv:"",privateKeyIsv:"",publicKeyPlatform:"",privateKeyPlatform:"",signType:""}}},created:function(){this.loadTable(),this.loadRouteRole()},methods:{loadTable:function(){this.post("isv.info.page",this.searchFormData,function(e){this.pageInfo=e.data})},loadRouteRole:function(){0===this.roles.length&&this.post("role.listall",{},function(e){this.roles=e.data})},onShowKeys:function(e){this.post("isv.keys.get",{appKey:e.appKey},function(e){var t=this;this.isvKeysDialogVisible=!0,this.$nextTick(function(){Object.assign(t.isvKeysFormData,e.data)})})},onSearchTable:function(){this.loadTable()},onTableUpdate:function(e){var t=this;this.isvDialogTitle="修改ISV",this.isvDialogVisible=!0,this.$nextTick(function(){t.post("isv.info.get",{id:e.id},function(e){for(var t=e.data,a=t.roleList,s=[],i=0;i
@@ -62,6 +64,12 @@
label="修改时间"
width="160"
/>
+
{{ item.description }}
+
+
+
启用
@@ -115,7 +126,7 @@
@@ -200,14 +211,15 @@ export default {
isvDialogFormData: {
id: 0,
status: 1,
+ remark: '',
roleCode: []
},
rulesIsvForm: {
- appKey: [
- { required: true, message: '不能为空', trigger: 'blur' },
- { min: 1, max: 100, message: '长度在 1 到 100 个字符', trigger: 'blur' }
+ remark: [
+ { min: 0, max: 100, message: '长度在 1 到 100 个字符', trigger: 'blur' }
]
},
+ isSaveButtonDisabled: false,
isvKeysDialogVisible: false,
isvKeysFormData: {
appKey: '',
@@ -283,19 +295,20 @@ export default {
})
},
onIsvDialogSave: function() {
- const that = this
this.$refs.isvForm.validate((valid) => {
if (valid) {
+ this.isSaveButtonDisabled = true
const uri = this.isvDialogFormData.id === 0 ? 'isv.info.add' : 'isv.info.update'
- that.post(uri, that.isvDialogFormData, function() {
- that.isvDialogVisible = false
- that.loadTable()
+ this.post(uri, this.isvDialogFormData, function() {
+ this.isvDialogVisible = false
+ this.loadTable()
})
}
})
},
onIsvDialogClose: function() {
this.resetForm('isvForm')
+ this.isSaveButtonDisabled = false
this.isvDialogFormData.status = 1
this.isvDialogFormData.roleCode = []
},
diff --git a/sop-common/pom.xml b/sop-common/pom.xml
index 73b6e967..8f9064c0 100644
--- a/sop-common/pom.xml
+++ b/sop-common/pom.xml
@@ -5,7 +5,7 @@
4.0.0
com.gitee.sop
sop-common
- 1.12.3-SNAPSHOT
+ 1.12.4-SNAPSHOT
pom
diff --git a/sop-common/sop-gateway-common/pom.xml b/sop-common/sop-gateway-common/pom.xml
index 479cf36f..2e3242bd 100644
--- a/sop-common/sop-gateway-common/pom.xml
+++ b/sop-common/sop-gateway-common/pom.xml
@@ -5,11 +5,11 @@
com.gitee.sop
sop-common
- 1.12.3-SNAPSHOT
+ 1.12.4-SNAPSHOT
../pom.xml
sop-gateway-common
- 1.12.3-SNAPSHOT
+ 1.12.4-SNAPSHOT
jar
sop-gateway-common
diff --git a/sop-common/sop-registry-api/pom.xml b/sop-common/sop-registry-api/pom.xml
index 4db3fd87..8da577ba 100644
--- a/sop-common/sop-registry-api/pom.xml
+++ b/sop-common/sop-registry-api/pom.xml
@@ -5,7 +5,7 @@
4.0.0
com.gitee.sop
sop-registry-api
- 1.12.3-SNAPSHOT
+ 1.12.4-SNAPSHOT
UTF-8
diff --git a/sop-common/sop-service-common/pom.xml b/sop-common/sop-service-common/pom.xml
index 81074b1d..3b86a333 100644
--- a/sop-common/sop-service-common/pom.xml
+++ b/sop-common/sop-service-common/pom.xml
@@ -6,11 +6,11 @@
com.gitee.sop
sop-common
- 1.12.3-SNAPSHOT
+ 1.12.4-SNAPSHOT
../pom.xml
sop-service-common
- 1.12.3-SNAPSHOT
+ 1.12.4-SNAPSHOT
jar
sop-service-common
diff --git a/sop-example/sop-auth/pom.xml b/sop-example/sop-auth/pom.xml
index fcdc4cb0..18134dd1 100644
--- a/sop-example/sop-auth/pom.xml
+++ b/sop-example/sop-auth/pom.xml
@@ -26,7 +26,7 @@
com.gitee.sop
sop-service-common
- 1.12.3-SNAPSHOT
+ 1.12.4-SNAPSHOT
org.springframework.cloud
diff --git a/sop-example/sop-book/sop-book-web/pom.xml b/sop-example/sop-book/sop-book-web/pom.xml
index 888e8a50..efe05420 100644
--- a/sop-example/sop-book/sop-book-web/pom.xml
+++ b/sop-example/sop-book/sop-book-web/pom.xml
@@ -24,7 +24,7 @@
com.gitee.sop
sop-service-common
- 1.12.3-SNAPSHOT
+ 1.12.4-SNAPSHOT
com.gitee.sop
diff --git a/sop-example/sop-easyopen/pom.xml b/sop-example/sop-easyopen/pom.xml
index 2f2ef43d..43ca8cc5 100644
--- a/sop-example/sop-easyopen/pom.xml
+++ b/sop-example/sop-easyopen/pom.xml
@@ -29,7 +29,7 @@
com.gitee.sop
sop-service-common
- 1.12.3-SNAPSHOT
+ 1.12.4-SNAPSHOT
org.springframework.cloud
diff --git a/sop-example/sop-springmvc/pom.xml b/sop-example/sop-springmvc/pom.xml
index 0cc8bce7..6c7a105b 100644
--- a/sop-example/sop-springmvc/pom.xml
+++ b/sop-example/sop-springmvc/pom.xml
@@ -20,7 +20,7 @@
com.gitee.sop
sop-service-common
- 1.12.3-SNAPSHOT
+ 1.12.4-SNAPSHOT
diff --git a/sop-example/sop-story/sop-story-web/pom.xml b/sop-example/sop-story/sop-story-web/pom.xml
index 1ea68df9..091c245a 100644
--- a/sop-example/sop-story/sop-story-web/pom.xml
+++ b/sop-example/sop-story/sop-story-web/pom.xml
@@ -24,7 +24,7 @@
com.gitee.sop
sop-service-common
- 1.12.3-SNAPSHOT
+ 1.12.4-SNAPSHOT
com.gitee.sop
diff --git a/sop-gateway/pom.xml b/sop-gateway/pom.xml
index 35bcf65d..79b06053 100644
--- a/sop-gateway/pom.xml
+++ b/sop-gateway/pom.xml
@@ -23,7 +23,7 @@
com.gitee.sop
sop-gateway-common
- 1.12.3-SNAPSHOT
+ 1.12.4-SNAPSHOT
diff --git a/sop-website/website-server/pom.xml b/sop-website/website-server/pom.xml
index 96cdbd64..fca39acd 100644
--- a/sop-website/website-server/pom.xml
+++ b/sop-website/website-server/pom.xml
@@ -25,7 +25,7 @@
com.gitee.sop
sop-registry-api
- 1.12.3-SNAPSHOT
+ 1.12.4-SNAPSHOT
diff --git a/sop.sql b/sop.sql
index 924a39f9..d184bde3 100644
--- a/sop.sql
+++ b/sop.sql
@@ -83,6 +83,7 @@ CREATE TABLE `isv_info` (
`pri_key` text COMMENT '私钥',
`status` tinyint(4) unsigned NOT NULL DEFAULT '0' COMMENT '1启用,2禁用',
`sign_type` tinyint(4) NOT NULL DEFAULT '1' COMMENT '1:RSA2,2:MD5',
+ `remark` varchar(128) DEFAULT NULL COMMENT '备注',
`gmt_create` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
`gmt_modified` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
PRIMARY KEY (`id`),