统一管理父窗口方法,全局参数配置保存
This commit is contained in:
6
zyplayer-doc-manage/WEB-INF/web.xml
Normal file
6
zyplayer-doc-manage/WEB-INF/web.xml
Normal file
@@ -0,0 +1,6 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
|
||||
version="4.0">
|
||||
</web-app>
|
||||
@@ -401,6 +401,7 @@
|
||||
<script type="text/javascript" src="webjars/mg-ui/js/mg-ui-tree.js"></script>
|
||||
<script type="text/javascript" src="webjars/mg-ui/js/mg-ui-tag.js"></script>
|
||||
<script type="text/javascript" src="webjars/mg-ui/js/mg-ui-debug.js"></script>
|
||||
<script type="text/javascript" src="webjars/mg-ui/js/mg-ui-export.js"></script>
|
||||
<script type="text/javascript" src="webjars/mg-ui/js/mg-ui.js"></script>
|
||||
</html>
|
||||
|
||||
|
||||
@@ -312,3 +312,11 @@ function setStorage(key, value, success, fail) {
|
||||
console.log("存储数据到服务器失败,请检查");
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取父窗口的exports
|
||||
* @returns
|
||||
*/
|
||||
function getExport(){
|
||||
return window.parent.window.exports;
|
||||
}
|
||||
@@ -0,0 +1,5 @@
|
||||
var cacheKeys = {
|
||||
userSettings: 'userSettings',
|
||||
swaggerResourcesList: 'swagger-resources-list',
|
||||
globalParamList: 'zyplayer-doc-global-param-list',
|
||||
}
|
||||
@@ -0,0 +1,14 @@
|
||||
var exports = {
|
||||
regeneratePathTree: function(){
|
||||
// 定义在mg-ui.js,用于重新生成文档树目录
|
||||
regeneratePathTree();
|
||||
},
|
||||
updateUserSettings: function(setting){
|
||||
// 定义在mg-ui.js,用于更新用户设置
|
||||
updateUserSettings(setting);
|
||||
},
|
||||
exportDocument: function(){
|
||||
// 定义在mg-ui.js,用于打开导出文档框
|
||||
exportDocument();
|
||||
}
|
||||
};
|
||||
@@ -69,6 +69,7 @@
|
||||
<script src="../mg-ui/js/jquery-3.1.0.min.js"></script>
|
||||
<script src="../zui/js/zui.min.js"></script>
|
||||
<script src="../mg-ui/js/common.js"></script>
|
||||
<script src="../mg-ui/js/mg-ui-cache-keys.js"></script>
|
||||
<script src="../vue/vue.js"></script>
|
||||
|
||||
<script>
|
||||
@@ -87,7 +88,7 @@
|
||||
|
||||
},
|
||||
mounted: function(){
|
||||
getStorage('userSettings', function(data){
|
||||
getStorage(cacheKeys.userSettings, function(data){
|
||||
app.userSettings = data;
|
||||
app.catalogShowType = data.catalogShowType;
|
||||
app.treeShowType = data.treeShowType;
|
||||
@@ -100,7 +101,7 @@
|
||||
catalogShowType: function(newVal, oldval){
|
||||
app.userSettings.catalogShowType = newVal;
|
||||
storeUserSettings();
|
||||
window.parent.window.regeneratePathTree();
|
||||
getExport().regeneratePathTree();
|
||||
},
|
||||
treeShowType: function(newVal, oldval){
|
||||
app.userSettings.treeShowType = newVal;
|
||||
@@ -124,8 +125,8 @@
|
||||
|
||||
// 存储用户的配置信息
|
||||
function storeUserSettings(){
|
||||
setStorage('userSettings', app.userSettings, function(){
|
||||
window.parent.window.updateUserSettings(app.userSettings);
|
||||
setStorage(cacheKeys.userSettings, app.userSettings, function(){
|
||||
getExport().updateUserSettings(app.userSettings);
|
||||
});
|
||||
}
|
||||
</script>
|
||||
|
||||
@@ -58,6 +58,7 @@
|
||||
<script src="../mg-ui/js/jquery-3.1.0.min.js"></script>
|
||||
<script src="../zui/js/zui.min.js"></script>
|
||||
<script src="../mg-ui/js/common.js"></script>
|
||||
<script src="../mg-ui/js/mg-ui-cache-keys.js"></script>
|
||||
<script src="../vue/vue.js"></script>
|
||||
<script src="../mg-ui/js/toast.js"></script>
|
||||
|
||||
@@ -75,7 +76,7 @@
|
||||
Toast.success("刷新成功!");
|
||||
},
|
||||
refreshList: function(){
|
||||
getStorage('swagger-resources-list', function(data){
|
||||
getStorage(cacheKeys.swaggerResourcesList, function(data){
|
||||
//console.log(data);
|
||||
app.swaggerResourcesList = data;
|
||||
});
|
||||
@@ -99,7 +100,7 @@
|
||||
});
|
||||
},
|
||||
exportDocument: function(){
|
||||
window.parent.window.exportDocument();
|
||||
getExport().exportDocument();
|
||||
},
|
||||
deleteDocUrl: function(event){
|
||||
if(!confirm("确定要删除吗?")) {
|
||||
@@ -113,7 +114,7 @@
|
||||
newDocList.push(app.swaggerResourcesList[i]);
|
||||
}
|
||||
}
|
||||
setStorage('swagger-resources-list', newDocList, function(data){
|
||||
setStorage(cacheKeys.swaggerResourcesList, newDocList, function(){
|
||||
app.swaggerResourcesList = newDocList;
|
||||
});
|
||||
}
|
||||
@@ -122,11 +123,6 @@
|
||||
this.refreshList();
|
||||
},
|
||||
watch: {
|
||||
catalogShowType: function(newVal, oldval){
|
||||
app.userSettings.catalogShowType = newVal;
|
||||
storeUserSettings();
|
||||
window.parent.window.regeneratePathTree();
|
||||
}
|
||||
}
|
||||
});
|
||||
</script>
|
||||
|
||||
@@ -1,35 +1,110 @@
|
||||
<!doctype html>
|
||||
<html>
|
||||
<html xmlns:v-on="http://www.w3.org/1999/xhtml" xmlns:v-model="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<title>全局参数管理</title>
|
||||
<link rel="stylesheet" type="text/css" href="../zui/css/zui.min.css">
|
||||
<meta charset="utf-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<title>全局参数管理</title>
|
||||
<link rel="stylesheet" type="text/css" href="../zui/css/zui.min.css">
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div id="app">
|
||||
全局参数管理
|
||||
</div>
|
||||
<div id="app">
|
||||
<div class="alert alert-primary">
|
||||
<div class="content">Tips:所有接口的在线调试页面都将展示本页面配置的参数和值,可统一配置会话等数据</div>
|
||||
</div>
|
||||
<table class="table table-bordered setting-table">
|
||||
<thead>
|
||||
<tr>
|
||||
<td>参数位置</td>
|
||||
<td>参数名</td>
|
||||
<td>参数值</td>
|
||||
<td>操作</td>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr v-for="(item,index) in globalParamList" :key="item.id" :data-id="item.id" :data-index="index">
|
||||
<td>
|
||||
<select class="form-control" v-model:value="item.position">
|
||||
<option value="header">header</option>
|
||||
<option value="form">form</option>
|
||||
</select>
|
||||
</td>
|
||||
<td><input type="text" class="form-control" name="paramName" v-model:value="item.key" placeholder=""></td>
|
||||
<td><input type="text" class="form-control" name="paramName" v-model:value="item.value" placeholder=""></td>
|
||||
<td>
|
||||
<button class="btn btn-danger" type="button" v-on:click="deleteParam($event)">删除</button>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan="3" align="center">
|
||||
<button class="btn" type="button" v-on:click="btnRefreshList"> 刷新 </button>
|
||||
<button class="btn btn-success" type="button" v-on:click="addGlobalParamLine()"> 新增 </button>
|
||||
<button class="btn btn-info" type="button" v-on:click="saveAllGlobalParam">全部保存</button>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</body>
|
||||
<script src="../zui/js/zui.min.js"></script>
|
||||
<script src="../mg-ui/js/jquery-3.1.0.min.js"></script>
|
||||
<script src="../zui/js/zui.min.js"></script>
|
||||
<script src="../mg-ui/js/common.js"></script>
|
||||
<script src="../mg-ui/js/mg-ui-cache-keys.js"></script>
|
||||
<script src="../vue/vue.js"></script>
|
||||
<script src="../mg-ui/js/toast.js"></script>
|
||||
|
||||
<script>
|
||||
var app = new Vue({
|
||||
el: '#app',
|
||||
data: {
|
||||
userId: "",
|
||||
},
|
||||
methods: {
|
||||
|
||||
}
|
||||
});
|
||||
var urlBase = "../../";
|
||||
var app = new Vue({
|
||||
el: '#app',
|
||||
data: {
|
||||
globalParamList: []
|
||||
},
|
||||
methods: {
|
||||
btnRefreshList: function () {
|
||||
this.refreshList();
|
||||
Toast.success("刷新成功!");
|
||||
},
|
||||
deleteParam: function (event) {
|
||||
if (!confirm("确定要删除吗?")) {
|
||||
return;
|
||||
}
|
||||
var tr = $(event.currentTarget).parents("tr");
|
||||
var index = tr.data("index");
|
||||
var newParamList = [];
|
||||
for (var i = 0; i < app.globalParamList.length; i++) {
|
||||
if (i != index) {
|
||||
newParamList.push(app.globalParamList[i]);
|
||||
}
|
||||
}
|
||||
app.globalParamList = newParamList;
|
||||
},
|
||||
addGlobalParamLine: function () {
|
||||
app.globalParamList.push({
|
||||
position: 'header', key: '', value: ''
|
||||
});
|
||||
},
|
||||
saveAllGlobalParam: function () {
|
||||
setStorage(cacheKeys.globalParamList, app.globalParamList, function(){
|
||||
Toast.success("保存成功!");
|
||||
});
|
||||
},
|
||||
refreshList: function(){
|
||||
getStorage(cacheKeys.globalParamList, function(data){
|
||||
app.globalParamList = data || [];
|
||||
});
|
||||
},
|
||||
},
|
||||
mounted: function () {
|
||||
this.refreshList();
|
||||
}
|
||||
});
|
||||
</script>
|
||||
|
||||
<style>
|
||||
|
||||
#app {
|
||||
padding-top: 10px;
|
||||
}
|
||||
</style>
|
||||
</html>
|
||||
|
||||
|
||||
Reference in New Issue
Block a user