From 9cdfa3c46f02d57344cc1855141a7582dbf47b8b Mon Sep 17 00:00:00 2001 From: "wu.jian2" Date: Wed, 26 Jul 2023 11:32:37 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8D=E5=8E=9F=E5=A7=8B?= =?UTF-8?q?=E6=95=B0=E6=8D=AE=E9=9B=86=EF=BC=8C=E9=80=89=E6=8B=A9=E8=BE=93?= =?UTF-8?q?=E5=87=BA=E5=AD=97=E6=AE=B5=E5=90=8E=EF=BC=8C=E5=AD=97=E6=AE=B5?= =?UTF-8?q?=E6=8F=8F=E8=BF=B0=E6=B6=88=E5=A4=B1=E7=9A=84=E6=83=85=E5=86=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/OriginalEditForm.vue | 56 +++++++++++++------ 1 file changed, 39 insertions(+), 17 deletions(-) diff --git a/data-room-ui/packages/DataSetManagement/src/OriginalEditForm.vue b/data-room-ui/packages/DataSetManagement/src/OriginalEditForm.vue index 939f8e2f..98324d1b 100644 --- a/data-room-ui/packages/DataSetManagement/src/OriginalEditForm.vue +++ b/data-room-ui/packages/DataSetManagement/src/OriginalEditForm.vue @@ -561,7 +561,9 @@ export default { isSelectAll: false, activeName: 'data', currentCount: 0, - selectorLoading: false + selectorLoading: false, + oldStructurePreviewList: [], + isInit: false } }, watch: { @@ -630,6 +632,7 @@ export default { this.dataForm.repeatStatus = res.config.repeatStatus this.dataForm.fieldList = res.config.fieldList this.dataForm.fieldDesc = res.config.fieldDesc + this.oldStructurePreviewList = _.cloneDeep(res.config.fieldList) // 字段信息,转为数组 this.dataForm.fieldInfo = res.config.fieldInfo ? res.config.fieldInfo.split(',') : [] if (this.dataForm.typeId) { @@ -641,6 +644,7 @@ export default { } }) } + this.isInit = true this.queryAllTable() this.queryAllField() }) @@ -824,7 +828,7 @@ export default { } return field }) - this.getPreViewData(fieldDescMap) + // this.getPreViewData(fieldDescMap) }).catch(() => { this.fieldList = [] }) @@ -835,7 +839,6 @@ export default { */ setFields (values) { if (values.includes('全选')) { - // 说明已经全选了,所以全不选 if (values.length > this.fieldList.length) { this.dataForm.fieldInfo = [] } else { @@ -882,21 +885,35 @@ export default { datasetExecuteTest(executeParams).then((data) => { this.dataPreviewList = data.data.list this.structurePreviewList = data.structure - this.structurePreviewList.forEach(item => { - if (!item.hasOwnProperty('orderNum')) { - this.$set(item, 'orderNum', 0) - } - if (!item.hasOwnProperty('sourceTable')) { - this.$set(item, 'sourceTable', this.dataForm.tableName) - } - if (!item.hasOwnProperty('fieldDesc')) { - let fieldDesc = '' - if (fieldDescMap && fieldDescMap[item.fieldName]) { - fieldDesc = fieldDescMap[item.fieldName] + // 如果是初始化 + if (this.isInit) { + this.structurePreviewList = this.dataForm.fieldList + this.isInit = false + } else { + this.structurePreviewList.forEach(item => { + if (!item.hasOwnProperty('orderNum')) { + this.$set(item, 'orderNum', 0) } - this.$set(item, 'fieldDesc', fieldDesc) - } - }) + if (!item.hasOwnProperty('sourceTable')) { + this.$set(item, 'sourceTable', this.dataForm.tableName) + } + if (!item.hasOwnProperty('fieldDesc')) { + let fieldDesc = '' + if (fieldDescMap && fieldDescMap[item.fieldName]) { + fieldDesc = fieldDescMap[item.fieldName] + } + this.$set(item, 'fieldDesc', fieldDesc) + // this.structurePreviewList 和 this.oldStructurePreviewList 比较,如果旧的数据里fieldDesc有值则重新赋值给新的数据 + this.structurePreviewList.forEach(item => { + const oldItem = this.oldStructurePreviewList.find(oldItem => oldItem.fieldName === item.fieldName) + if (oldItem && oldItem.fieldDesc) { + item.fieldDesc = oldItem.fieldDesc + } + }) + } + }) + } + this.structurePreviewListCopy = _.cloneDeep(this.structurePreviewList) this.totalCount = data.data.totalCount this.currentCount = data.data.currentCount @@ -927,6 +944,11 @@ export default { treeFilter (value, data) { if (!value) return true return data.name.indexOf(value) !== -1 + }, + setField () { + this.structurePreviewList = _.cloneDeep(this.structurePreviewListCopy) + this.oldStructurePreviewList = _.cloneDeep(this.structurePreviewListCopy) + this.fieldsetVisible = false } } }