diff --git a/zyplayer-doc-db/src/main/resources/webjars/doc-db/css/doc-db.css b/zyplayer-doc-db/src/main/resources/webjars/doc-db/css/doc-db.css
index 46dc4ee5..977c84ba 100644
--- a/zyplayer-doc-db/src/main/resources/webjars/doc-db/css/doc-db.css
+++ b/zyplayer-doc-db/src/main/resources/webjars/doc-db/css/doc-db.css
@@ -1,41 +1,43 @@
-html,body{width: 100%;height: 100%;}
-
-.container{padding-top: 20px;}
-
-.table-info,.table-columns{margin-top: 10px;}
-
-.table-info .desc{margin-top: 10px;}
-#tableDescInput{display: none;}
-
-#tableDescShow .icon-edit{cursor: pointer;margin-left: 20px;display: none;}
-
-.modal-table-box{margin-top: 10px; max-height: 500px;overflow-y: auto;}
-
-#fuzzySearchModal .table td:nth-child(3){word-break:break-all;max-width: 400px;}
-#doExport{margin-right: 10px;}
-
-#exportModal .alert{margin-top: 10px;}
-
-#exportUl{list-style: none;}
-#exportUl li{float: left; border: 1px solid #ccc;padding: 10px 15px; margin: 0 10px 10px 0; background-color: #ccc;cursor: pointer;}
-#exportUl li.checked{border: 1px solid #3f51b5;background-color: #8666b8;color:#fff;}
-
-/* S-覆盖原生样式 */
-.chosen-container-single .chosen-single div b {margin-top: 8px;}
-/* E-覆盖原生样式 */
-
-/* S-JSON展示的样式 */
-pre.json{margin-top:0px;margin-bottom:0px;}
-pre.json .canvas{font:10pt georgia;background-color:#ececec;color:#000000;border:1px solid #cecece;}
-pre.json .objectBrace{color:#00aa00;font-weight:bold;}
-pre.json .arrayBrace{color:#0033ff;font-weight:bold;}
-pre.json .propertyName{color:#cc0000;font-weight:bold;}
-pre.json .string{color:#007777;}
-pre.json .number{color:#aa00aa;}
-pre.json .boolean{color:#0000ff;}
-pre.json .function{color:#aa6633;text-decoration:italic;}
-pre.json .null{color:#0000ff;}
-pre.json .comma{color:#000000;font-weight:bold;}
-pre img{cursor: pointer;}
-/* E-JSON展示的样式 */
-
+html,body{width: 100%;height: 100%;}
+
+.container{padding-top: 20px;}
+
+.table-info,.table-columns{margin-top: 10px;}
+
+.table-info .desc{margin-top: 10px;}
+#tableDescInput{display: none;}
+
+#tableDescShow .icon-edit{cursor: pointer;margin-left: 20px;display: none;}
+
+.modal-table-box{margin-top: 10px; max-height: 500px;overflow-y: auto;}
+
+#fuzzySearchModal .table td:nth-child(3){word-break:break-all;max-width: 400px;}
+#doExport{margin-right: 10px;}
+
+#exportModal .alert{margin-top: 10px;}
+
+#exportUl{list-style: none;}
+#exportUl li{float: left; border: 1px solid #ccc;padding: 10px 15px; margin: 0 10px 10px 0; background-color: #ccc;cursor: pointer;}
+#exportUl li.checked{border: 1px solid #3f51b5;background-color: #8666b8;color:#fff;}
+
+.upgrade-info{display: none;}
+
+/* S-覆盖原生样式 */
+.chosen-container-single .chosen-single div b {margin-top: 8px;}
+/* E-覆盖原生样式 */
+
+/* S-JSON展示的样式 */
+pre.json{margin-top:0px;margin-bottom:0px;}
+pre.json .canvas{font:10pt georgia;background-color:#ececec;color:#000000;border:1px solid #cecece;}
+pre.json .objectBrace{color:#00aa00;font-weight:bold;}
+pre.json .arrayBrace{color:#0033ff;font-weight:bold;}
+pre.json .propertyName{color:#cc0000;font-weight:bold;}
+pre.json .string{color:#007777;}
+pre.json .number{color:#aa00aa;}
+pre.json .boolean{color:#0000ff;}
+pre.json .function{color:#aa6633;text-decoration:italic;}
+pre.json .null{color:#0000ff;}
+pre.json .comma{color:#000000;font-weight:bold;}
+pre img{cursor: pointer;}
+/* E-JSON展示的样式 */
+
diff --git a/zyplayer-doc-db/src/main/resources/webjars/doc-db/js/doc-db.js b/zyplayer-doc-db/src/main/resources/webjars/doc-db/js/doc-db.js
index 2b77f508..d700161e 100644
--- a/zyplayer-doc-db/src/main/resources/webjars/doc-db/js/doc-db.js
+++ b/zyplayer-doc-db/src/main/resources/webjars/doc-db/js/doc-db.js
@@ -168,6 +168,7 @@ $(document).ready(function(){
}
});
initData();
+ checkSystemUpgrade();
});
function initData(){
@@ -375,3 +376,20 @@ function fuzzySearchByDesc(){
});
}
+function checkSystemUpgrade() {
+ ajaxTemp("system/info/upgrade", "post", "json", {}, function (json) {
+ if (json.errCode == 200 && !!json.data) {
+ $(".upgrade-info").show();
+ $("#upgradeNowVersion").html(json.data.nowVersion);
+ $("#upgradeLastVersion").html(json.data.lastVersion);
+ $("#upgradeUrl").html("
" + json.data.upgradeUrl + "");
+ $("#upgradeContent").html(json.data.upgradeContent);
+ console.log("zyplayer-doc发现新版本:"
+ + "\n升级地址:" + json.data.upgradeUrl
+ + "\n当前版本:" + json.data.nowVersion
+ + "\n最新版本:" + json.data.lastVersion
+ + "\n升级内容:" + json.data.upgradeContent
+ );
+ }
+ });
+}
\ No newline at end of file
diff --git a/zyplayer-doc-dubbo/src/main/resources/doc-dubbo.html b/zyplayer-doc-dubbo/src/main/resources/doc-dubbo.html
index 39f946f7..33336962 100644
--- a/zyplayer-doc-dubbo/src/main/resources/doc-dubbo.html
+++ b/zyplayer-doc-dubbo/src/main/resources/doc-dubbo.html
@@ -162,6 +162,14 @@
暮光:城中城
+
+ {{upgradeInfo.nowVersion}}
+ {{upgradeInfo.lastVersion}}
+
+ {{upgradeInfo.upgradeUrl}}
+
+ {{upgradeInfo.upgradeContent}}
+
欢迎加群讨论,QQ群号:466363173,欢迎提交需求,欢迎使用和加入开发!
@@ -219,6 +227,8 @@
value: 'java.lang.Integer'
}],
paramTypeValue: "java.lang.String",
+ // 升级信息
+ upgradeInfo: {},
}
},
watch: {
@@ -228,6 +238,7 @@
// 无论发布在哪、如何修改源码,请勿删除本行原作者信息,感谢
console.log("%c项目信息:\n开发者列表:暮光:城中城\n项目地址:https://gitee.com/zyplayer/zyplayer-doc", "color:red");
this.doGetServiceList();
+ this.checkSystemUpgrade();
},
methods: {
handleOpen(key, keyPath) {
@@ -423,7 +434,20 @@
app.requestResult = json.errMsg;
}
});
- }
+ },
+ checkSystemUpgrade() {
+ ajaxTemp("system/info/upgrade", "post", "json", {}, function (json) {
+ if (json.errCode == 200 && !!json.data) {
+ app.upgradeInfo = json.data;
+ console.log("zyplayer-doc发现新版本:"
+ + "\n升级地址:" + json.data.upgradeUrl
+ + "\n当前版本:" + json.data.nowVersion
+ + "\n最新版本:" + json.data.lastVersion
+ + "\n升级内容:" + json.data.upgradeContent
+ );
+ }
+ });
+ },
}
});
diff --git a/zyplayer-doc-grpc/src/main/resources/doc-grpc.html b/zyplayer-doc-grpc/src/main/resources/doc-grpc.html
index 6dfbcbd8..f59de2b3 100644
--- a/zyplayer-doc-grpc/src/main/resources/doc-grpc.html
+++ b/zyplayer-doc-grpc/src/main/resources/doc-grpc.html
@@ -93,6 +93,14 @@
暮光:城中城
+
+ {{upgradeInfo.nowVersion}}
+ {{upgradeInfo.lastVersion}}
+
+ {{upgradeInfo.upgradeUrl}}
+
+ {{upgradeInfo.upgradeContent}}
+
欢迎加群讨论,QQ群号:466363173,欢迎提交需求,欢迎使用和加入开发!
@@ -149,6 +157,8 @@
value: 'java.lang.Integer'
}],
paramTypeValue: "java.lang.String",
+ // 升级信息
+ upgradeInfo: {},
}
},
watch: {
@@ -158,6 +168,7 @@
// 无论发布在哪、如何修改源码,请勿删除本行原作者信息,感谢
console.log("%c项目信息:\n项目地址:https://gitee.com/zyplayer/zyplayer-doc", "color:red");
this.doGetServiceList();
+ this.checkSystemUpgrade();
},
methods: {
handleOpen(key, keyPath) {
@@ -346,7 +357,20 @@
}
}
return requestResult;
- }
+ },
+ checkSystemUpgrade() {
+ ajaxTemp("system/info/upgrade", "post", "json", {}, function (json) {
+ if (json.errCode == 200 && !!json.data) {
+ app.upgradeInfo = json.data;
+ console.log("zyplayer-doc发现新版本:"
+ + "\n升级地址:" + json.data.upgradeUrl
+ + "\n当前版本:" + json.data.nowVersion
+ + "\n最新版本:" + json.data.lastVersion
+ + "\n升级内容:" + json.data.upgradeContent
+ );
+ }
+ });
+ },
}
});
diff --git a/zyplayer-doc-manage/src/main/java/com/zyplayer/doc/manage/Application.java b/zyplayer-doc-manage/src/main/java/com/zyplayer/doc/manage/Application.java
index 0a0b4a3e..ba4c7fa0 100644
--- a/zyplayer-doc-manage/src/main/java/com/zyplayer/doc/manage/Application.java
+++ b/zyplayer-doc-manage/src/main/java/com/zyplayer/doc/manage/Application.java
@@ -9,6 +9,7 @@ import org.springframework.boot.web.servlet.support.SpringBootServletInitializer
import org.springframework.context.ConfigurableApplicationContext;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.core.env.Environment;
+import org.springframework.scheduling.annotation.EnableScheduling;
import java.net.InetAddress;
import java.util.Optional;
@@ -16,6 +17,7 @@ import java.util.Optional;
/**
* 程序启动器
*/
+@EnableScheduling
@SpringBootApplication
@ComponentScan(basePackages = {"com.zyplayer.doc.manage", "com.zyplayer.doc.data"})
public class Application extends SpringBootServletInitializer {
diff --git a/zyplayer-doc-manage/src/main/java/com/zyplayer/doc/manage/framework/config/DocGrpcConfig.java b/zyplayer-doc-manage/src/main/java/com/zyplayer/doc/manage/framework/config/DocGrpcConfig.java
deleted file mode 100644
index 4acdec36..00000000
--- a/zyplayer-doc-manage/src/main/java/com/zyplayer/doc/manage/framework/config/DocGrpcConfig.java
+++ /dev/null
@@ -1,13 +0,0 @@
-package com.zyplayer.doc.manage.framework.config;
-
-/**
- * 开启zyplayer-doc-grpc服务
- *
- * @author 暮光:城中城
- * @since 2018年11月11日
- */
-//@EnableDocGrpc
-//@Configuration
-public class DocGrpcConfig {
-
-}
diff --git a/zyplayer-doc-manage/src/main/java/com/zyplayer/doc/manage/task/SchedulerTask.java b/zyplayer-doc-manage/src/main/java/com/zyplayer/doc/manage/task/SchedulerTask.java
new file mode 100644
index 00000000..da608542
--- /dev/null
+++ b/zyplayer-doc-manage/src/main/java/com/zyplayer/doc/manage/task/SchedulerTask.java
@@ -0,0 +1,47 @@
+package com.zyplayer.doc.manage.task;
+
+import cn.hutool.http.HttpRequest;
+import com.alibaba.fastjson.JSON;
+import com.zyplayer.doc.manage.utils.UpgradeUtil;
+import com.zyplayer.doc.manage.utils.bean.UpgradeInfo;
+import org.apache.commons.lang.StringUtils;
+import org.springframework.beans.factory.annotation.Value;
+import org.springframework.scheduling.annotation.Scheduled;
+import org.springframework.stereotype.Component;
+
+import java.io.IOException;
+import java.io.StringReader;
+import java.util.Objects;
+import java.util.Properties;
+
+@Component
+public class SchedulerTask {
+
+ @Value("${zyplayer.doc.manage.version:''}")
+ private String nowVersion;
+ @Value("${zyplayer.doc.manage.upgradePropertiesUrl:''}")
+ private String upgradePropertiesUrl;
+
+// @Scheduled(cron = "0/10 * * * * ? ")
+ @Scheduled(cron = "0 0 1 * * ?")
+ public void upgradeTask() {
+ // 检查更新,访问的码云服务器获取升级内容的
+ if (StringUtils.isBlank(upgradePropertiesUrl)) {
+ return;
+ }
+ try {
+ String upgradeStr = HttpRequest.get(upgradePropertiesUrl).execute().body();
+ Properties properties = new Properties();
+ properties.load(new StringReader(upgradeStr));
+ if (Objects.equals(nowVersion, properties.getProperty("lastVersion"))) {
+ return;
+ }
+ properties.setProperty("nowVersion", nowVersion);
+ String jsonString = JSON.toJSONString(properties);
+ UpgradeUtil.upgradeInfo = JSON.parseObject(jsonString, UpgradeInfo.class);
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ }
+}
+
diff --git a/zyplayer-doc-manage/src/main/java/com/zyplayer/doc/manage/utils/UpgradeUtil.java b/zyplayer-doc-manage/src/main/java/com/zyplayer/doc/manage/utils/UpgradeUtil.java
new file mode 100644
index 00000000..bce3c7f4
--- /dev/null
+++ b/zyplayer-doc-manage/src/main/java/com/zyplayer/doc/manage/utils/UpgradeUtil.java
@@ -0,0 +1,9 @@
+package com.zyplayer.doc.manage.utils;
+
+import com.zyplayer.doc.manage.utils.bean.UpgradeInfo;
+
+import java.util.Properties;
+
+public class UpgradeUtil {
+ public static UpgradeInfo upgradeInfo;
+}
diff --git a/zyplayer-doc-manage/src/main/java/com/zyplayer/doc/manage/utils/bean/UpgradeInfo.java b/zyplayer-doc-manage/src/main/java/com/zyplayer/doc/manage/utils/bean/UpgradeInfo.java
new file mode 100644
index 00000000..8fb37f49
--- /dev/null
+++ b/zyplayer-doc-manage/src/main/java/com/zyplayer/doc/manage/utils/bean/UpgradeInfo.java
@@ -0,0 +1,52 @@
+package com.zyplayer.doc.manage.utils.bean;
+
+/**
+ * 升级信息对象
+ */
+public class UpgradeInfo {
+ private String nowVersion;
+ private String lastVersion;
+ private String upgradeContent;
+ private String upgradeUrl;
+ private String nextStep;
+
+ public String getLastVersion() {
+ return lastVersion;
+ }
+
+ public void setLastVersion(String lastVersion) {
+ this.lastVersion = lastVersion;
+ }
+
+ public String getUpgradeContent() {
+ return upgradeContent;
+ }
+
+ public void setUpgradeContent(String upgradeContent) {
+ this.upgradeContent = upgradeContent;
+ }
+
+ public String getUpgradeUrl() {
+ return upgradeUrl;
+ }
+
+ public void setUpgradeUrl(String upgradeUrl) {
+ this.upgradeUrl = upgradeUrl;
+ }
+
+ public String getNextStep() {
+ return nextStep;
+ }
+
+ public void setNextStep(String nextStep) {
+ this.nextStep = nextStep;
+ }
+
+ public String getNowVersion() {
+ return nowVersion;
+ }
+
+ public void setNowVersion(String nowVersion) {
+ this.nowVersion = nowVersion;
+ }
+}
diff --git a/zyplayer-doc-manage/src/main/java/com/zyplayer/doc/manage/web/manage/SystemInfoController.java b/zyplayer-doc-manage/src/main/java/com/zyplayer/doc/manage/web/manage/SystemInfoController.java
new file mode 100644
index 00000000..5ea76135
--- /dev/null
+++ b/zyplayer-doc-manage/src/main/java/com/zyplayer/doc/manage/web/manage/SystemInfoController.java
@@ -0,0 +1,19 @@
+package com.zyplayer.doc.manage.web.manage;
+
+import com.zyplayer.doc.core.json.DocResponseJson;
+import com.zyplayer.doc.core.json.ResponseJson;
+import com.zyplayer.doc.manage.utils.UpgradeUtil;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+@RestController
+@RequestMapping("/system/info")
+public class SystemInfoController {
+
+ @PostMapping("/upgrade")
+ public ResponseJson