Merge pull request #9497 from ulleo/dev

feat(X-Pack):【数据填报】新建表单后界面直接显示刚创建的表单数据
This commit is contained in:
ulleo 2024-05-06 15:41:38 +08:00 committed by GitHub
commit 0ec112b003
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -4,7 +4,7 @@ import DeAsideContainer from '@/components/dataease/DeAsideContainer.vue'
import NoSelect from './NoSelect.vue'
import ViewTable from './ViewTable.vue'
import { listForm, saveForm, updateForm, deleteForm, getWithPrivileges } from '@/views/dataFilling/form/dataFilling'
import { cloneDeep } from 'lodash-es'
import { forEach, cloneDeep, find } from 'lodash-es'
import { hasPermission } from '@/directive/Permission'
import DataFillingFormMoveSelector from './MoveSelector.vue'
@ -33,10 +33,31 @@ export default {
displayFormData: undefined
}
},
computed: {
flattenFolderList() {
const result = []
this.flattenFolder(this.formList, result)
return result
}
},
mounted() {
this.treeLoading = true
listForm({}).then(res => {
this.formList = res.data || []
if (this.$route.query?.id) {
this.$nextTick(() => {
this.$refs.formTreeRef?.setCurrentKey(this.$route.query.id)
const checkedNode = this.$refs.formTreeRef?.getNode(this.$route.query.id)
if (checkedNode) {
checkedNode?.parent?.expand()
this.selectedItem = find(this.flattenFolderList, f => f.id === this.$route.query.id)
if (this.selectedItem) {
this.nodeClick(this.selectedItem)
}
}
})
}
}).finally(() => {
this.treeLoading = false
})
@ -217,6 +238,15 @@ export default {
if (this.activeName === 'my-tasks') {
this.$router.push('/data-filling/my-jobs')
}
},
flattenFolder(list, result = []) {
forEach(list, item => {
result.push(item)
if (item.children && item.children.length > 0) {
this.flattenFolder(item.children, result)
}
})
return result
}
}
}
@ -274,7 +304,7 @@ export default {
</div>
<el-tree
v-else
ref="datasetTreeRef"
ref="formTreeRef"
:default-expanded-keys="expandedArray"
:data="formList"
node-key="id"