文档增加强制重写域名功能

This commit is contained in:
暮光:城中城
2018-12-20 23:28:05 +08:00
parent 28b8b5e6d1
commit 1874d3ed26
8 changed files with 380 additions and 302 deletions

View File

@@ -56,12 +56,20 @@
<tr>
<td class="info">自动填充请求参数</td>
<td>
<label><input type="radio" name="autoFillParam" value="0" v-model="autoFillParam"></label>
<label><input type="radio" name="autoFillParam" value="1" v-model="autoFillParam">智能填充</label>
<label><input type="radio" name="autoFillParam" value="2" v-model="autoFillParam">全部填充</label>
<label><input type="radio" name="autoFillParam" value="0" v-model="autoFillParam"></label>
</td>
<td>不填充智能填充只填充flag、time等后缀的参数全部填充对应不上类型的使用“我是默认字符串”填充</td>
</tr>
<tr>
<td class="info">强制重写域名</td>
<td>
<label><input type="radio" name="forceRewriteDomain" value="1" v-model="forceRewriteDomain"></label>
<label><input type="radio" name="forceRewriteDomain" value="0" v-model="forceRewriteDomain"></label>
</td>
<td>文档在本地,想调试线上接口就可以勾选此参数,“在线调试”处的请求地址强制改为:“文档地址管理”处配置的重写域名+接口地址</td>
</tr>
</tbody>
</table>
</div>
@@ -77,25 +85,42 @@
var app = new Vue({
el: '#app',
data: {
initCount: 5,
initCount: 6,
catalogShowType: '',
treeShowType: '',
showParamType:'',
onlyUseLastParam: '',
autoFillParam: '',
userSettings: {}
forceRewriteDomain: '',
rewriteDomainUrl: '',
userSettings: {},
// 默认用户的配置对象
defaultUserSettings: {
autoFillParam : 0,// 自动填充参数0=否 1=智能填充 2=全部填充
onlyUseLastParam : 0,// 是否仅使用上次请求参数
showParamType : 1,// 是否展示字段的类型
catalogShowType : 2,// 目录的展示方式1=url分成一层一层的展示、2=整个url显示为一层展示
treeShowType : 1,// 树形菜单展示方式1=tree-angles、2=tree-menu、3=默认4=tree-folders、5=tree-chevrons
forceRewriteDomain: 0,// 强制重写域名 0=否 1=是
projects : [],// 所有的项目列表
removedProjects : [],// 被移除的项目列表
prevWNow : 360
}
},
methods: {
},
mounted: function(){
getStorage(cacheKeys.userSettings, function(data){
var empty = isEmpty(data) || isEmptyObject(data);
data = empty ? app.defaultUserSettings : data;
app.userSettings = data;
app.catalogShowType = data.catalogShowType;
app.treeShowType = data.treeShowType;
app.showParamType = data.showParamType;
app.onlyUseLastParam = data.onlyUseLastParam;
app.autoFillParam = data.autoFillParam;
app.forceRewriteDomain = data.forceRewriteDomain;
});
},
watch: {
@@ -123,6 +148,10 @@
app.userSettings.autoFillParam = newVal;
storeUserSettings();
},
forceRewriteDomain: function(newVal, oldval){
app.userSettings.forceRewriteDomain = newVal;
storeUserSettings();
},
}
});

View File

@@ -14,6 +14,7 @@
<tr>
<td style="width: 50px;">序号</td>
<td>地址</td>
<td>重写域名地址</td>
<td>持久化时间</td>
<td>操作</td>
</tr>
@@ -22,14 +23,16 @@
<tr v-for="(item,index) in swaggerResourcesList" :key="item.id" :data-id="item.id" :data-index="index" >
<td>{{index+1}}</td>
<td>{{item.url}}</td>
<td>{{item.rewriteDomainUrl}}</td>
<td>{{item.lastSync}}</td>
<td>
<button class="btn btn-danger" type="button" v-on:click="deleteDocUrl($event)">删除</button>
<button class="btn btn-info" type="button" v-on:click="editDocUrl($event)">编辑</button>
<!--<button class="btn btn-danger" type="button" v-on:click="syncDocData($event)">持久化</button>-->
</td>
</tr>
<tr>
<td colspan="3" align="center">
<td colspan="5" align="center">
<button class="btn" type="button" v-on:click="btnRefreshList"> 刷新 </button>
<button class="btn btn-info" type="button" v-on:click="exportDocument">导出文档</button>
<button class="btn btn-primary" type="button" v-on:click="addNewDocument">增加文档</button>
@@ -48,7 +51,14 @@
<h4 class="modal-title">输入文档地址</h4>
</div>
<div class="modal-body">
<input v-model="addNewDocumentInput" type="text" class="form-control" placeholder="例http://192.168.0.172/swagger-resources">
<div class="input-line">
地址:
<input v-model="addNewDocumentInput" type="text" class="form-control" placeholder="例http://192.168.0.172/swagger-resources">
</div>
<div class="input-line">
重写域名地址:
<input v-model="rewriteDomainUrl" type="text" name="rewriteDomainUrl" class="form-control" placeholder="文档展示配置页 勾选“重写域名”重写的地址">
</div>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-primary" v-on:click="addNewDocumentBtn">保存</button>
@@ -71,7 +81,9 @@
el: '#app',
data: {
swaggerResourcesList: [],
addNewDocumentInput: ''
addNewDocumentInput: '',
rewriteDomainUrl: '',
oldUrl: ''
},
methods: {
btnRefreshList: function(){
@@ -84,7 +96,17 @@
app.swaggerResourcesList = data;
});
},
editDocUrl: function(event){
var tr = $(event.currentTarget).parents("tr");
var index = tr.data("index");
var item = app.swaggerResourcesList[index];
app.oldUrl = item.url;
app.addNewDocumentInput = item.url;
app.rewriteDomainUrl = item.rewriteDomainUrl;
$('#addNewDocumentModal').modal({moveable:true});
},
addNewDocument: function(){
app.oldUrl = '';
app.addNewDocumentInput = '';
$('#addNewDocumentModal').modal({moveable:true});
},
@@ -93,7 +115,12 @@
if(isEmpty(addNewDocumentInput)) {
Toast.error("地址不可以为空");return;
}
ajaxTemp(urlBase + "swagger-mg-ui/document/addSwaggerResources", "post", "json", {resourcesUrl: addNewDocumentInput}, function(json){
var param = {
resourcesUrl: addNewDocumentInput,
rewriteDomainUrl: app.rewriteDomainUrl,
oldUrl: app.oldUrl
};
ajaxTemp(urlBase + "swagger-mg-ui/document/addSwaggerResources", "post", "json", param, function(json){
if(validateResult(json)) {
//window.parent.document.location.reload();
//app.swaggerResourcesList.push(addNewDocumentInput);
@@ -144,6 +171,7 @@
<style>
#app{padding-top: 10px;}
.input-line{margin-bottom: 15px;}
</style>
</html>