This commit is contained in:
2019-04-24 15:32:00 +08:00
parent 0527faf25e
commit e13588f3ab
5 changed files with 79 additions and 75 deletions

View File

@@ -91,7 +91,7 @@
<!-- 实体字段信息 -->
<div class="col-md-4" style="padding-left: 0px;">
<div style="padding-left: 10px;background-color: #ccc;width: 100%"> 字段信息</div>
<div style="padding-left: 10px;background-color: #ccc;"> 字段信息</div>
<table class="table table-bordered">
<tr>
<td v-show="status==3 || status==4 || status==5 || status==6"><input type="checkbox"></td>
@@ -104,7 +104,7 @@
<th>备注</th>-->
</tr>
<tr v-for="(item, index) in serviceDetail['tables'][sheet].items">
<td v-show="status==3"><input type="checkbox" v-model="serviceInfo.exports" :value="sheet + '$' + item.name"></td>
<td v-show="status==3"><input type="checkbox" v-model="exportArr" :value="sheet + '$' + item.name"></td>
<td v-show="status==4"><input type="checkbox" v-model="serviceInfo.imports" :value="sheet + '$' + item.name"></td>
<td v-show="status==5"><input type="checkbox" v-model="showFields" :value="sheet + '$' + item.name"></td>
<td v-show="status==6"><input type="checkbox" v-model="filterArr" :value="sheet + '$' + item.name"></td>
@@ -122,8 +122,8 @@
<div class="col-md-6" style="padding-left: 0px;padding-right: 0px;">
<!-- shows -->
<div id="show" v-show="status==5">
<div style="padding-left: 10px;background-color: #ccc;width: 100%"> 列表配置</div>
<table class="table table-bordered table-auto" style="width: 100%;background-color: #fff;">
<div style="padding-left: 10px;background-color: #ccc;"> 列表配置</div>
<table class="table table-bordered table-auto">
<thead>
<tr>
<th></th>
@@ -145,7 +145,7 @@
<!-- exports -->
<div id="export" v-show="status==3">
<div style="padding-left: 10px;background-color: #ccc;width: 100%"> 查询配置</div>
<div style="padding-left: 10px;background-color: #ccc;"> 导出配置</div>
<table class="table table-bordered table-auto" style="width: 100%">
<thead>
<tr>
@@ -155,13 +155,12 @@
<!--<th>展示名</th>-->
</tr>
</thead>
<tr v-for="(item, index) in serviceInfo.exports">
<tr v-for="item in serviceInfo.exports">
<td class="icon icon-move">
<input name="name" :value="item" type="hidden">
<input type="hidden" name="item" :value="JSON.stringify(item)">
</td>
<td v-text="item" style="background-color: rgb(235, 235, 228);"></td>
<td v-text="">{{getFieldLabel(item)}}</td>
<td v-show="false"><input v-model="item.label" style="width: 100px;"></td>
<td v-text="item.col" style="background-color: rgb(235, 235, 228);"></td>
<td style="padding: 1px;"><input v-model="item.label" class="form-control" style="width: 130px;padding: 0px"></td>
</tr>
</table>
</div>
@@ -274,7 +273,7 @@
</row>
<script>
let { getServiceInfo, getServiceDetail, getServiceList, tableLinkList, serviceSave, showSave, filterSave } = meta;
let { getServiceInfo, getServiceDetail, getServiceList, tableLinkList, serviceSave, showSave, filterSave, exportSave } = meta;
let { showOk } = red
var vm = new Vue({
@@ -325,7 +324,10 @@
tables: [],
//shows
showFields: []
showFields: [],
//exports
exportArr:[],
},
watch: {
status: function (v) {
@@ -354,6 +356,13 @@
showFields.push(v['shows'][i]['col'])
}
this.showFields = showFields
//exports
let exportArr = []
for (let i in v['exports']) {
exportArr.push(v['exports'][i]['col'])
}
this.exportArr = exportArr
},
serviceDetail: function (v) {
var arr = [];
@@ -437,6 +446,36 @@
}
this.serviceInfo.shows = _shows
},
exportArr(v) {
let exports = this.serviceInfo.exports
//添加新增的
a:for(let i in v) {
b:for(let j in exports) {
if (v[i] == exports[j]['col']) {
if (!exports[j]['label']) {
exports[j]['label'] = this.getFieldLabel(v[i])
}
continue a
}
}
let label = this.getFieldLabel(v[i])
exports.push({col: v[i], label: label})
}
//去除删除的
let _exports = []
a:for(let i in exports) {
b:for (let j in v) {
if (exports[i]['col'] == v[j]) {
_exports.push(exports[i])
continue a;
}
}
}
this.serviceInfo.exports = _exports
}
},
methods: {
@@ -474,6 +513,7 @@
setMove: function () {
$(`#filter>table>tbody,
#show>table>tbody,
#export>table>tbody,
#show>table>tbody`).sortable({
selector: 'tr',
trigger: '.icon',
@@ -515,7 +555,7 @@
}
});
} else if (this.status == 3) {
$('#export>table>tbody').sortable({
/*$('#export>table>tbody').sortable({
selector: 'tr',
finish: function (e) {
let rows = e.list;
@@ -526,7 +566,7 @@
}
vm.serviceInfo.exports = shows;
}
});
});*/
}
else if (this.status == 6) {
/*$('#filter>table>tbody').sortable({
@@ -574,7 +614,7 @@
items: JSON.stringify(vm.itemEdit)
}).then(() => showOk());
}
else if (vm.status == 3 || vm.status == 4 /*|| vm.status == 5*/) {
else if (/*vm.status == 3 ||*/ vm.status == 4 /*|| vm.status == 5*/) {
var urls = {3: "/meta/exportsort", 4: "/meta/importsort", 5: "/meta/showsort"};
var items = {3: vm.serviceInfo.exports, 4: vm.serviceInfo.imports, 5: vm.serviceInfo.shows};
@@ -606,17 +646,15 @@
filters.push(JSON.parse(item))
}
filterSave({name: this.service, filters}).then(res => red.showOk())
/*let filterData = [];
for (i in this.filterArr) {
filterData.push(this.filterMap[this.filterArr[i]]);
}
else if (vm.status == 3) {
let doms = $("#export>table>tbody>tr")
let exports = []
for (let i = 0; i < doms.length; i++) {
let item = $(doms[i]).find("input[name='item']").val();
exports.push(JSON.parse(item))
}
red.postX("/meta/filter_update", {
serviceKey: vm.service,
filters: JSON.stringify(red.replace$(filterData))
}).then(() => showOk());*/
exportSave({name: this.service, exports}).then(res => red.showOk())
}
else if (vm.status == 7) {