|
@@ -1,8 +1,8 @@
|
|
|
<template>
|
|
|
<div>
|
|
|
<!-- 数据项表达式配置 -->
|
|
|
- <el-dialog v-if="visible" :title="title" width="80%" top="5vh" center :before-close="dialogClose"
|
|
|
- :visible.sync="visible" :close-on-click-modal="false" :append-to-body="true">
|
|
|
+ <el-dialog :title="title" width="80%" top="5vh" center :before-close="dialogClose" :visible.sync="visible"
|
|
|
+ @open="handleOpen" @close="handleClose">
|
|
|
<el-form label-width="100px">
|
|
|
<el-row>
|
|
|
<el-col :span="6">
|
|
@@ -24,8 +24,9 @@
|
|
|
<el-button size="mini" @click="multipleModel"
|
|
|
style="position: absolute; right: 30px; top: 80px">批量设置表达式</el-button>
|
|
|
<CommonTable ref="itemConfigTable" :tableHeaderTitle="tableHeaderTitle" :tableData="tableData"
|
|
|
- :isShowCheckbox="isShowCheckbox" :isShowIndex="isShowIndex" :tableOperate="tableOperate"
|
|
|
- @receiveCheckedData="receiveCheckedData" @chooseModel="chooseModel"></CommonTable>
|
|
|
+ :isShowCheckbox="isShowCheckbox" :isShowIndex="isShowIndex" :tableHight="tableHight"
|
|
|
+ :tableOperate="tableOperate" @receiveCheckedData="receiveCheckedData" @chooseModel="chooseModel">
|
|
|
+ </CommonTable>
|
|
|
<span slot="footer">
|
|
|
<el-button type="primary" @click="saveItemChoose">确定</el-button>
|
|
|
<el-button @click="dialogClose">取消</el-button>
|
|
@@ -36,6 +37,7 @@
|
|
|
<ChooseModel ref="chooseModel" @saveDataModelEvent="saveDataModelEvent"></ChooseModel>
|
|
|
</div>
|
|
|
</template>
|
|
|
+
|
|
|
<script>
|
|
|
import CommonTable from '@/components/CommonTable/index.vue'
|
|
|
import ChooseModel from './chooseModel.vue'
|
|
@@ -59,16 +61,18 @@ export default {
|
|
|
isShowCheckbox: true,
|
|
|
// 是否展示序号索引列
|
|
|
isShowIndex: true,
|
|
|
+ tableHight: '68vh',
|
|
|
tableHeaderTitle: [
|
|
|
{
|
|
|
propName: "itemName",
|
|
|
- labelName: "数据组名称",
|
|
|
+ labelName: "数据项名称",
|
|
|
},
|
|
|
{
|
|
|
propName: "remark",
|
|
|
labelName: "四则运算表达式",
|
|
|
}
|
|
|
],
|
|
|
+ tableDataF: [],
|
|
|
tableData: [],
|
|
|
tableOperate: [
|
|
|
{
|
|
@@ -87,6 +91,16 @@ export default {
|
|
|
}
|
|
|
},
|
|
|
methods: {
|
|
|
+ /** 弹窗打开事件 */
|
|
|
+ handleOpen() {
|
|
|
+ this.tableDataF = this.tableData
|
|
|
+ },
|
|
|
+ /** 弹窗关闭事件 */
|
|
|
+ handleClose() {
|
|
|
+ this.dataSourceId = null
|
|
|
+ this.filterChooseItemText = null
|
|
|
+ this.tableData = []
|
|
|
+ },
|
|
|
/** 关闭弹出层 */
|
|
|
dialogClose() {
|
|
|
this.visible = false
|
|
@@ -97,7 +111,7 @@ export default {
|
|
|
},
|
|
|
/** 确定数据项的设置 */
|
|
|
saveItemChoose() {
|
|
|
- this.$emit('saveItemChoose', this.tableData)
|
|
|
+ this.$emit('saveItemChoose', this.tableDataF)
|
|
|
this.dialogClose()
|
|
|
this.$emit('dialogClose')
|
|
|
},
|
|
@@ -131,14 +145,12 @@ export default {
|
|
|
},
|
|
|
/** 过滤数据项事件 */
|
|
|
chooseItemChangeEvent(val) {
|
|
|
- let arr = JSON.parse(JSON.stringify(this.leavesChooseList));
|
|
|
- if (!value || !value.trim()) {
|
|
|
+ let arr = JSON.parse(JSON.stringify(this.tableDataF));
|
|
|
+ if (!val || !val.trim()) {
|
|
|
this.tableData = arr;
|
|
|
return;
|
|
|
}
|
|
|
- let filterList = arr.filter((v) => {
|
|
|
- return v.itemName.indexOf(value) !== -1;
|
|
|
- });
|
|
|
+ this.tableData = arr.filter((v) => v.itemName.indexOf(val) !== -1)
|
|
|
},
|
|
|
/** 保存数据模型事件 */
|
|
|
saveDataModelEvent(itemNameList, dataModelId) {
|
|
@@ -151,8 +163,8 @@ export default {
|
|
|
}
|
|
|
|
|
|
let arr = []
|
|
|
- for (let i = 0; i < this.tableData.length; i++) {
|
|
|
- let temp = this.tableData[i]
|
|
|
+ for (let i = 0; i < this.tableDataF.length; i++) {
|
|
|
+ let temp = this.tableDataF[i]
|
|
|
for (let j = 0; j < itemNameList.length; j++) {
|
|
|
if (itemNameList[j] == temp.itemName) {
|
|
|
temp.dataModelId = dataModelId
|
|
@@ -162,7 +174,8 @@ export default {
|
|
|
}
|
|
|
arr.push(temp)
|
|
|
}
|
|
|
- this.tableData = arr
|
|
|
+ this.tableDataF = arr
|
|
|
+ this.chooseItemChangeEvent(this.filterChooseItemText)
|
|
|
}
|
|
|
}
|
|
|
}
|