数据新增修复

dev
yujialong 3 years ago
parent 73a317582c
commit a10c817516
  1. 82
      src/views/data/Framework.vue

@ -77,7 +77,7 @@
:default-checked-keys="defaultTypeChecked" :default-checked-keys="defaultTypeChecked"
:current-node-key="curId" :current-node-key="curId"
show-checkbox show-checkbox
:props="defaultProps" :props="defaultPropsImport"
highlight-current highlight-current
@node-click="importTypeClick" @node-click="importTypeClick"
@node-expand="importTypeExpand" @node-expand="importTypeExpand"
@ -160,6 +160,10 @@ export default {
children: 'children', children: 'children',
label: 'categoryName' label: 'categoryName'
}, },
defaultPropsImport: {
children: 'children',
label: 'label'
},
defaultActive: [], defaultActive: [],
added: false, added: false,
typeVisible: false, typeVisible: false,
@ -258,10 +262,13 @@ export default {
this.getData() this.getData()
}, },
addType(row){ addType(row){
this.categoryId = row.data.id if (row) {
if (row) this.defaultActive = [row.data.id] this.categoryId = row.data.id
this.defaultActive = [row.data.id]
}
this.typeVisible = true this.typeVisible = true
this.levelId = row ? row.data.id : 0 this.levelId = row ? row.data.id : 0
}, },
editType(row){ editType(row){
this.typeVisible = true this.typeVisible = true
@ -309,9 +316,17 @@ export default {
}).then(res => { }).then(res => {
this.$message.success('添加成功') this.$message.success('添加成功')
this.getType(this.node, this.resolve) this.getType(this.node, this.resolve)
let node = this.$refs.type.getNode(this.categoryId) if (this.levelId) {
node.loaded = false let node = this.$refs.type.getNode(this.categoryId)
node.expand() node.loaded = false
node.expand()
} else {
// this.categoryId = ''
// this.defaultProps = []
// this.$refs.type.setCurrentNode(0)
// this.getType(0, this.resolve)
location.reload()
}
this.typeVisible = false this.typeVisible = false
setTimeout(() => { setTimeout(() => {
this.submited = false this.submited = false
@ -578,33 +593,52 @@ export default {
if(!checked.length) return this.$message.warning('请选择数据') if(!checked.length) return this.$message.warning('请选择数据')
this.submited = true this.submited = true
const typeIds = checked.filter(e => !e.name).map(e => e.realId) // idid const typeIds = checked.filter(e => !e.name).map(e => e.realId) // idid
this.getNames(typeIds).then(() => { const tableIds = checked.filter(e => e.name)
const data = this.names const categoryId = Number(this.categoryId)
const dataList = [] tableIds.map(e => {
for (let i = 0, len = data.length; i < len; i += 2000) { delete e.id
dataList.push(data.slice(i, i + 2000)) e.categoryId = categoryId
} })
const promiseList = [] if (typeIds.length) {
dataList.map(e => { this.getNames(typeIds).then(() => {
promiseList.push(new Promise((resolve,reject) => { const data = this.names
this.$post(this.api.saveTable, e).then(res => { const dataList = []
resolve() for (let i = 0, len = data.length; i < len; i += 2000) {
}).catch(res => { dataList.push(data.slice(i, i + 2000))
reject() }
}) const promiseList = []
})) dataList.map(e => {
promiseList.push(new Promise((resolve,reject) => {
this.$post(this.api.saveTable, e).then(res => {
resolve()
}).catch(res => {
reject()
})
}))
})
Promise.all(promiseList).then(res => {
this.$message.success('导入成功')
this.getData()
this.importVisible = false
setTimeout(() => {
this.submited = false
},1000)
}).catch(err => {
this.submited = false
})
}) })
Promise.all(promiseList).then(res => { } else {
this.$post(this.api.saveTable, tableIds).then(res => {
this.$message.success('导入成功') this.$message.success('导入成功')
this.getData() this.getData()
this.importVisible = false this.importVisible = false
setTimeout(() => { setTimeout(() => {
this.submited = false this.submited = false
},1000) },1000)
}).catch(err => { }).catch(res => {
this.submited = false this.submited = false
}) })
}) }
} }
} }
}; };

Loading…
Cancel
Save