|
@@ -156,7 +156,9 @@ export default {
|
|
|
tableForm: {}, //弹框表单
|
|
|
rmTitle: "", //弹框-删除-标题
|
|
|
tableObj: {}, //增/删/改数据缓存
|
|
|
- tableOptions: {} //弹框-下来数据缓存
|
|
|
+ tableOptions: {}, //弹框-下来数据缓存
|
|
|
+ tableArrs: [], //重组table-表头下拉
|
|
|
+ proAll: false //重组时-所有请求是否都完成
|
|
|
};
|
|
|
},
|
|
|
computed: {
|
|
@@ -190,6 +192,18 @@ export default {
|
|
|
});
|
|
|
},
|
|
|
},
|
|
|
+ watch: {
|
|
|
+ proAll: {
|
|
|
+ handler (val) {
|
|
|
+ if (val) {
|
|
|
+ setTimeout(() => {
|
|
|
+ this.setTable()
|
|
|
+ }, 200);
|
|
|
+ }
|
|
|
+ },
|
|
|
+ deep: true
|
|
|
+ }
|
|
|
+ },
|
|
|
created () {
|
|
|
this.getQuery();
|
|
|
},
|
|
@@ -253,18 +267,31 @@ export default {
|
|
|
this.tableColsCopy = this.tableCols.filter((item) => item.needShow);
|
|
|
this.tableDataCopy = _.cloneDeep(this.tableData);
|
|
|
const datas = _.cloneDeep(this.tableColsCopy);
|
|
|
+ const reqUts = []
|
|
|
datas.forEach(async (item) => {
|
|
|
this.tableDataFilters[item.columnName] = [];
|
|
|
if (item.needGroup) {
|
|
|
this.tableGroups.push(item.columnName);
|
|
|
}
|
|
|
if (item.listqueryTemplateID || item.listqueryTemplateID == 0) {
|
|
|
+ this.tableArrs.push(item.columnName)
|
|
|
+ const reqUt = this.getSelectData(item.listqueryTemplateID)
|
|
|
+ reqUts.push(reqUt)
|
|
|
this.tableOptions[item.columnName] = await this.getSelectData(item.listqueryTemplateID)
|
|
|
}
|
|
|
// this.filterValues[item.columnName] = ''
|
|
|
});
|
|
|
setTableFilters(this.tableData, this.tableDataFilters);
|
|
|
this.tableGroup(this.tableData);
|
|
|
+ this.getSelectDataAll(reqUts)
|
|
|
+ },
|
|
|
+ //获取所有获取弹框-下拉数据-请求状态
|
|
|
+ getSelectDataAll (reqUts) {
|
|
|
+ Promise.all(reqUts).then(res => {
|
|
|
+ this.proAll = true
|
|
|
+ }).catch(err => {
|
|
|
+ this.proAll = false
|
|
|
+ })
|
|
|
},
|
|
|
//获取弹框-下拉数据
|
|
|
async getSelectData (id) {
|
|
@@ -278,6 +305,25 @@ export default {
|
|
|
return []
|
|
|
}
|
|
|
},
|
|
|
+ //重组table-显示名称
|
|
|
+ setTable () {
|
|
|
+ this.tableArrs.forEach(item => {
|
|
|
+ this.tableOptions[item].forEach(p => {
|
|
|
+ this.tableDataCopy.forEach(msg => {
|
|
|
+ if (msg[item] == p.v) {
|
|
|
+ msg[item] = p.k
|
|
|
+ }
|
|
|
+ })
|
|
|
+ this.tableDataFilters[item].forEach(cap => {
|
|
|
+ if (cap.value == p.v) {
|
|
|
+ cap.text = p.k
|
|
|
+ cap.value = p.k
|
|
|
+ }
|
|
|
+ })
|
|
|
+ })
|
|
|
+ })
|
|
|
+ this.tableData = this.tableDataCopy
|
|
|
+ },
|
|
|
//分组
|
|
|
tableGroup (tableData) {
|
|
|
const spanArr = [];
|