debug参数展示,基本功能开发

This commit is contained in:
暮光:城中城
2018-12-13 00:03:28 +08:00
parent a9c86940e2
commit 72d7f64cd6
12 changed files with 1170 additions and 1029 deletions

View File

@@ -383,6 +383,7 @@
<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-cache-keys.js"></script>
<script type="text/javascript" src="webjars/mg-ui/js/mg-ui.js"></script>
</html>

View File

@@ -3,4 +3,5 @@ var cacheKeys = {
swaggerResourcesList: 'swagger-resources-list',
globalParamList: 'zyplayer-doc-global-param-list',
pRequestObjStart: 'p-request-obj-',
pSimulationResponse: 'p-simulation-response',
}

View File

@@ -10,5 +10,9 @@ var exports = {
exportDocument: function(){
// 定义在mg-ui.js用于打开导出文档框
exportDocument();
},
updateGlobalParam: function(param){
// 更新调试的全局参数变量
debugGlobalParam = param;
}
};

View File

@@ -19,6 +19,8 @@ var projectTreeIdIndex = 1;
var projectLoadingIndex = 0;
// 请求到的文档列表
var documentJsonArr = [];
// 调试的全局参数变量
var debugGlobalParam = [];
// 用户的配置对象
var userSettings = {};
// 默认用户的配置对象
@@ -86,7 +88,7 @@ function getDocumentListByService() {
showGlobalLoadingMessage('等待选择需展示的文档,请选择...', true);
for (var i = 0; i < json.data.length; i++) {
var item = json.data[i];
$("#choiseDocListUl").append('<li value="'+item+'">'+item+'</li>');
$("#choiseDocListUl").append('<li value="'+item.url+'">'+item.url+'</li>');
}
$('#choiseDocModal').modal({moveable:true, backdrop:'static', keyboard: false});
} else {
@@ -159,48 +161,6 @@ $("#changeContentWidth").click(function(){
changeContentWidth(isMinWidth ? 360 : 120);
});
/**
* 修改tree的class
*/
$("input[name='treeShowType']").change(function() {
userSettings.treeShowType = $("input[name='treeShowType']:checked").val();
updateTreeShowType();
storeUserSettings();
});
/**
* 切换url分成一层一层的展示、整个url显示为一层展示
*/
$("input[name='catalogShowType']").change(function() {
userSettings.catalogShowType = $("input[name='catalogShowType']:checked").val();
regeneratePathTree();
storeUserSettings();
});
/**
* 是否展示参数类型
*/
$("input[name='showParamType']").change(function() {
userSettings.showParamType = $("input[name='showParamType']:checked").val();
storeUserSettings();
});
/**
* 是否仅使用上次请求参数
*/
$("input[name='onlyUseLastParam']").change(function() {
userSettings.onlyUseLastParam = $("input[name='onlyUseLastParam']:checked").val();
storeUserSettings();
});
/**
* 是否自动填充请求参数
*/
$("input[name='autoFillParam']").change(function() {
userSettings.autoFillParam = $("input[name='autoFillParam']:checked").val();
storeUserSettings();
});
/**
* 搜索框回车事件
*/
@@ -1030,7 +990,7 @@ function updateTreeShowType() {
* 存储用户设置
*/
function storeUserSettings() {
setStorage('userSettings', userSettings);
setStorage(cacheKeys.userSettings, userSettings);
}
/**
@@ -1046,7 +1006,7 @@ function updateUserSettings(newSetting) {
* @returns
*/
function initUserSettings() {
getStorage('userSettings', function(data) {
getStorage(cacheKeys.userSettings, function(data) {
userSettings = data;
if(isEmpty(userSettings) || isEmptyObject(userSettings)) {
userSettings = defaultUserSettings;
@@ -1057,6 +1017,9 @@ function initUserSettings() {
// 增加文档
getDocumentListByService();
});
getStorage(cacheKeys.globalParamList, function(data) {
debugGlobalParam = data;
});
}
function showGlobalLoadingMessage(text, loading) {

View File

@@ -77,6 +77,7 @@
var app = new Vue({
el: '#app',
data: {
initCount: 5,
catalogShowType: '',
treeShowType: '',
showParamType:'',
@@ -122,12 +123,14 @@
},
}
});
// 存储用户的配置信息
function storeUserSettings(){
setStorage(cacheKeys.userSettings, app.userSettings, function(){
getExport().updateUserSettings(app.userSettings);
});
function storeUserSettings() {
if (app.initCount-- <= 0) {
setStorage(cacheKeys.userSettings, app.userSettings, function () {
getExport().updateUserSettings(app.userSettings);
});
}
}
</script>

View File

@@ -1,5 +1,5 @@
<!doctype html>
<html>
<html xmlns:v-on="http://www.w3.org/1999/xhtml">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
@@ -14,15 +14,18 @@
<tr>
<td style="width: 50px;">序号</td>
<td>地址</td>
<td>持久化时间</td>
<td>操作</td>
</tr>
</thead>
<tbody>
<tr v-for="(item,index) in swaggerResourcesList" :key="item.id" :data-id="item.id" :data-index="index" >
<td>{{index+1}}</td>
<td>{{item}}</td>
<td>{{item.url}}</td>
<td>{{item.lastSync}}</td>
<td>
<button class="btn btn-danger" type="button" v-on:click="deleteDocUrl($event)">删除</button>
<!--<button class="btn btn-danger" type="button" v-on:click="syncDocData($event)">持久化</button>-->
</td>
</tr>
<tr>
@@ -93,7 +96,8 @@
ajaxTemp(urlBase + "swagger-mg-ui/document/addSwaggerResources", "post", "json", {resourcesUrl: addNewDocumentInput}, function(json){
if(validateResult(json)) {
//window.parent.document.location.reload();
app.swaggerResourcesList.push(addNewDocumentInput);
//app.swaggerResourcesList.push(addNewDocumentInput);
app.refreshList();
$('#addNewDocumentModal').modal('hide');
Toast.success("保存成功,刷新后生效!");
}
@@ -117,6 +121,17 @@
setStorage(cacheKeys.swaggerResourcesList, newDocList, function(){
app.swaggerResourcesList = newDocList;
});
},
syncDocData: function(event){
var tr = $(event.currentTarget).parents("tr");
var index = tr.data("index");
var newDocUrl = app.swaggerResourcesList[index].url;
ajaxTemp(urlBase + "swagger-mg-ui/document/syncDocData", "post", "json", {resourcesUrl: newDocUrl}, function(json){
if(validateResult(json)) {
app.refreshList();
Toast.success("持久化成功!");
}
});
}
},
mounted: function(){

View File

@@ -24,7 +24,7 @@
<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">
<select class="form-control" v-model:value="item.paramIn">
<option value="header">header</option>
<option value="form">form</option>
</select>
@@ -81,11 +81,12 @@
},
addGlobalParamLine: function () {
app.globalParamList.push({
position: 'header', key: '', value: ''
paramIn: 'header', key: '', value: ''
});
},
saveAllGlobalParam: function () {
setStorage(cacheKeys.globalParamList, app.globalParamList, function(){
getExport().updateGlobalParam(app.globalParamList);
Toast.success("保存成功!");
});
},