1、代码优化,重构逻辑,界面html

2、解决TplKit 因升级导致的模板文件找不到(退回原版本)
This commit is contained in:
2019-04-19 18:16:07 +08:00
parent 8cf6eed806
commit efdcc26fc9
11 changed files with 284 additions and 362 deletions

View File

@@ -1,18 +1,5 @@
<style>
/* todo 提取样式 */
.tlist{
height:100%; overflow: auto;
}
.tlist>li.active>a,
.tlist>li.active>a:focus,
.tlist>li.active>a:hover,
.tlist>li>a:hover {
background-color: #92b0cb;
}
</style>
<row class="meta-list">
<div class="col-md-12" style="padding-top: 10px;">
<div class="col-md-12">
<div class="input-group list-head">
<div class="pull-left">
<span class="input-group-btn">
@@ -24,19 +11,19 @@
<button @click="status=8" :class="['btn',{'btn-primary':status==8}]" type="button"> 实体关系MetaLink</button>
</span>
<span class="input-group-btn" style="padding-left: 5px">
<span class="input-group-btn" style="padding-left: 10px">
<button @click="status=2" :class="['btn',{'btn-primary':status==2}]" type="button"> 字段编辑</button>
</span>
<span class="input-group-btn">
<button @click="status=1" :class="['btn',{'btn-primary':status==1}]" type="button"> 排序</button>
</span>
<span class="input-group-btn" style="padding-left: 20px">
<span class="input-group-btn" style="padding-left: 10px">
<button @click="status=7;" :class="['btn',{'btn-primary':status==7}]" type="button"> 基本属性</button>
</span>
<!-- fixme: 加入数据平台相关操作, 1、关联数据平台2、表结构入库 -->
<span class="input-group-btn" style="padding-left: 30px">
<span class="input-group-btn" style="padding-left: 20px">
<button @click="save()" :class="['btn',{'btn-primary':status!=0},{'disabled':status==0}]" type="button"> 保存</button>
</span>
</div>
@@ -78,7 +65,7 @@
<td v-show="status==2">
<input v-model="item" type="hidden">
<input :value="item.name" class="form-control">
<input :value="item.name" disabled class="form-control">
<input v-model="item.name" type="hidden">
<input name="name" type="hidden" :value="item.name">
</td>
@@ -151,7 +138,7 @@
</row>
<script>
let {getTableList, tableInfo} = meta;
let {getTableList, tableInfo, itemSort, itemUpdate} = meta;
let {showOk} = red
var vm = new Vue({
@@ -191,16 +178,17 @@
this.loadDetail();
},
"meta.items": {
handler: function (nv, ov) {
var itemNv = nv || [];
var itemOv = vm.oldItems || [];
handler: function (nv) {
let itemNv = nv || [];
let itemOv = this.oldItems || [];
if (itemOv.length == 0) return;
var itemEdit = [];
a:for (var i = 0; i < itemOv.length; i++) {
var attr = ["label", "name", "remark", "type", "inType","inExt"];
for (var j = 0; j < attr.length; j++) {
var k = attr[j];
let attr = ["label", "name", "remark", "type", "inType","inExt"];
let itemEdit = [];
a:for (let i = 0; i < itemOv.length; i++) {
for (let j = 0; j < attr.length; j++) {
let k = attr[j];
//console.log(itemOv[i][k], '--', itemNv[i][k])
if (itemOv[i][k] != itemNv[i][k]) {
itemEdit.push(itemNv[i]);
continue a;
@@ -208,7 +196,8 @@
}
}
vm.itemEdit = itemEdit;
console.log(itemEdit)
this.itemEdit = itemEdit;
},
deep: true
},
@@ -222,7 +211,9 @@
}
},
meta: function (v) {
vm.row = {key:v.key, dbPlatId: v.dbPlatId, catalog: v.catalog, name:v.name, comment:v.comment, alias: v.alias};
this.row = {key:v.key, dbPlatId: v.dbPlatId, catalog: v.catalog, name:v.name, comment:v.comment, alias: v.alias};
let oldItems = v['items'] || []
this.oldItems = JSON.parse(JSON.stringify(oldItems))
},
},
@@ -259,7 +250,7 @@
})
},
catalogs: function() {
var dbPlats = this.dbPlats;
let dbPlats = this.dbPlats;
for (i in dbPlats) {
if (dbPlats[i].key == this.row.dbPlatId) {
return dbPlats[i]["catalogs"]
@@ -271,10 +262,10 @@
$('#sortableList,table>tbody').sortable({
selector: '.item', // '.list-group-item, tr',
finish: function (e) {
var rows = e.list;
let rows = e.list;
vm.itemSort = [];
for (var i = 0; i < rows.length; i++) {
var item = $(rows[i]).find("input[name='name']").val();
for (let i = 0; i < rows.length; i++) {
let item = $(rows[i]).find("input[name='name']").val();
vm.itemSort.push(item);
}
},
@@ -311,10 +302,10 @@
$('#export>table>tbody').sortable({
selector: 'tr',
finish: function (e) {
var rows = e.list;
var shows = [];
for (var i = 0; i < rows.length; i++) {
var item = $(rows[i]).find("input[name='name']").val();
let rows = e.list;
let shows = [];
for (let i = 0; i < rows.length; i++) {
let item = $(rows[i]).find("input[name='name']").val();
shows.push(item);
}
vm.meta.exports = shows;
@@ -361,20 +352,22 @@
*
*/
save: function () {
console.log(this.itemSort)
if (vm.status == 1 && vm.itemSort.length > 0) {
console.log(this.itemSort)
red.postX("/meta/itemsort", {
serviceKey: vm.table,
itemSort({alias: this.alias, items: this.itemSort}).then(() => red.showOk())
/*red.postX("/meta/itemsort", {
alias: this.alias,
items: JSON.stringify(vm.itemSort)
}).then(() => showOk())
}).then(() => showOk())*/
}
else if (vm.status == 2 && vm.itemEdit.length > 0) {
red.postX("/meta/itemupdate", {
itemUpdate({alias: this.alias, items: this.itemEdit}).then(() => red.showOk())
/*red.postX("/meta/itemupdate", {
serviceKey: vm.table,
items: JSON.stringify(vm.itemEdit)
}).then(() => showOk())
}).then(() => showOk())*/
}
/*else if (vm.status == 3 || vm.status == 4 || vm.status == 5) {
var urls = {3: "/meta/exportsort", 4: "/meta/importsort", 5: "/meta/showsort"};