forked from github/dataease
fix(数据集): 已有新建计算字段的数据集进行关联,字段全选后,刷新数据会报错 #11263
This commit is contained in:
parent
be7a9e74b9
commit
d75cb483b9
@ -363,34 +363,32 @@ const confirmEditUnion = () => {
|
|||||||
}, [])
|
}, [])
|
||||||
|
|
||||||
if (!!idArr.length) {
|
if (!!idArr.length) {
|
||||||
ElMessageBox.confirm(
|
ElMessageBox.confirm('字段选择', {
|
||||||
`${t('data_set.field')}${allfields.value
|
confirmButtonText: t('dataset.confirm'),
|
||||||
|
cancelButtonText: t('common.cancel'),
|
||||||
|
showCancelButton: true,
|
||||||
|
tip: `${t('data_set.field')}: ${allfields.value
|
||||||
.filter(ele => [...new Set(idArr)].includes(ele.id) && ele.extField !== 2)
|
.filter(ele => [...new Set(idArr)].includes(ele.id) && ele.extField !== 2)
|
||||||
.map(ele => ele.name)
|
.map(ele => ele.name)
|
||||||
.join(',')}${t('data_set.want_to_continue')}`,
|
.join(',')}, 未被勾选, 与其相关的计算字段将被删除,确认删除?`,
|
||||||
{
|
confirmButtonType: 'danger',
|
||||||
confirmButtonText: t('dataset.confirm'),
|
type: 'warning',
|
||||||
cancelButtonText: t('common.cancel'),
|
autofocus: false,
|
||||||
showCancelButton: true,
|
showClose: false,
|
||||||
confirmButtonType: 'danger',
|
callback: (action: Action) => {
|
||||||
type: 'warning',
|
if (action === 'confirm') {
|
||||||
autofocus: false,
|
delUpdateDsFields(currentNode.value.id, state.nodeList)
|
||||||
showClose: false,
|
const [fir] = state.nodeList
|
||||||
callback: (action: Action) => {
|
if (fir.isShadow) {
|
||||||
if (action === 'confirm') {
|
delete fir.isShadow
|
||||||
delUpdateDsFields(currentNode.value.id, state.nodeList)
|
|
||||||
const [fir] = state.nodeList
|
|
||||||
if (fir.isShadow) {
|
|
||||||
delete fir.isShadow
|
|
||||||
}
|
|
||||||
closeEditUnion()
|
|
||||||
nextTick(() => {
|
|
||||||
emits('updateAllfields')
|
|
||||||
})
|
|
||||||
}
|
}
|
||||||
|
closeEditUnion()
|
||||||
|
nextTick(() => {
|
||||||
|
emits('updateAllfields')
|
||||||
|
})
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
)
|
})
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -449,32 +447,26 @@ const handleCommand = (ele, command) => {
|
|||||||
return pre
|
return pre
|
||||||
}, [])
|
}, [])
|
||||||
fakeDelId = []
|
fakeDelId = []
|
||||||
|
|
||||||
if (!!idArr.length) {
|
if (!!idArr.length) {
|
||||||
ElMessageBox.confirm(
|
ElMessageBox.confirm(`确定要删除 ${ele.tableName} 吗`, {
|
||||||
`${t('field.want_to_continue')}${allfields.value
|
confirmButtonText: t('dataset.confirm'),
|
||||||
.filter(ele => [...new Set(idArr)].includes(ele.id) && ele.extField !== 2)
|
cancelButtonText: t('common.cancel'),
|
||||||
.map(ele => ele.name)
|
showCancelButton: true,
|
||||||
.join(',')}${t('data_set.want_to_continue')}`,
|
tip: '删除后,被关联的表或sql片段将被删除,与其相关的计算字段也将被删除。',
|
||||||
{
|
confirmButtonType: 'danger',
|
||||||
confirmButtonText: t('dataset.confirm'),
|
type: 'warning',
|
||||||
cancelButtonText: t('common.cancel'),
|
autofocus: false,
|
||||||
showCancelButton: true,
|
showClose: false,
|
||||||
confirmButtonType: 'danger',
|
callback: (action: Action) => {
|
||||||
type: 'warning',
|
if (action === 'confirm') {
|
||||||
autofocus: false,
|
delNode(ele.id, state.nodeList)
|
||||||
showClose: false,
|
nextTick(() => {
|
||||||
callback: (action: Action) => {
|
emits('addComplete')
|
||||||
if (action === 'confirm') {
|
emits('updateAllfields')
|
||||||
delNode(ele.id, state.nodeList)
|
})
|
||||||
nextTick(() => {
|
|
||||||
emits('addComplete')
|
|
||||||
emits('updateAllfields')
|
|
||||||
})
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
)
|
})
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -531,6 +523,10 @@ const dfsNodeFieldBack = (list, { originName, datasetTableId }) => {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const dfsNodeFieldBackReal = ele => {
|
||||||
|
dfsNodeFieldBack(state.nodeList, ele)
|
||||||
|
}
|
||||||
|
|
||||||
const menuList = [
|
const menuList = [
|
||||||
{
|
{
|
||||||
svgName: 'icon_text-box_outlined',
|
svgName: 'icon_text-box_outlined',
|
||||||
@ -1014,7 +1010,7 @@ defineExpose({
|
|||||||
getNodeList,
|
getNodeList,
|
||||||
setStateBack,
|
setStateBack,
|
||||||
notConfirm,
|
notConfirm,
|
||||||
dfsNodeFieldBack,
|
dfsNodeFieldBackReal,
|
||||||
initState,
|
initState,
|
||||||
setChangeStatus,
|
setChangeStatus,
|
||||||
crossDatasources
|
crossDatasources
|
||||||
|
@ -467,8 +467,20 @@ const delFieldByIdFake = (arr, fakeAllfields) => {
|
|||||||
}
|
}
|
||||||
|
|
||||||
const deleteField = item => {
|
const deleteField = item => {
|
||||||
ElMessageBox.confirm(t('dataset.confirm_delete'), {
|
let tip = ''
|
||||||
|
const idArr = allfields.value.reduce((pre, next) => {
|
||||||
|
if (next.extField !== 2) return pre
|
||||||
|
const idMap = next.originName.match(/\[(.+?)\]/g) || []
|
||||||
|
const result = idMap.map(itm => {
|
||||||
|
return itm.slice(1, -1)
|
||||||
|
})
|
||||||
|
pre = [...result, ...pre]
|
||||||
|
return pre
|
||||||
|
}, [])
|
||||||
|
tip = idArr.includes(item.id) ? `如果该字段被删除,与其相关的计算字段将被删除,确认删除?` : ''
|
||||||
|
ElMessageBox.confirm(`确认删除字段 ${item.name} 吗`, {
|
||||||
confirmButtonText: t('dataset.confirm'),
|
confirmButtonText: t('dataset.confirm'),
|
||||||
|
tip,
|
||||||
cancelButtonText: t('common.cancel'),
|
cancelButtonText: t('common.cancel'),
|
||||||
showCancelButton: true,
|
showCancelButton: true,
|
||||||
confirmButtonType: 'danger',
|
confirmButtonType: 'danger',
|
||||||
@ -478,7 +490,7 @@ const deleteField = item => {
|
|||||||
callback: (action: Action) => {
|
callback: (action: Action) => {
|
||||||
if (action === 'confirm') {
|
if (action === 'confirm') {
|
||||||
delFieldById([item.id])
|
delFieldById([item.id])
|
||||||
datasetDrag.value.dfsNodeFieldBack(datasetDrag.value.getNodeList(), item)
|
datasetDrag.value.dfsNodeFieldBackReal(item)
|
||||||
ElMessage({
|
ElMessage({
|
||||||
message: t('chart.delete_success'),
|
message: t('chart.delete_success'),
|
||||||
type: 'success'
|
type: 'success'
|
||||||
@ -855,30 +867,28 @@ const confirmEditUnion = () => {
|
|||||||
return pre
|
return pre
|
||||||
}, [])
|
}, [])
|
||||||
|
|
||||||
ElMessageBox.confirm(
|
ElMessageBox.confirm('字段选择', {
|
||||||
`${t('data_set.field')}${allfields.value
|
confirmButtonText: t('dataset.confirm'),
|
||||||
|
cancelButtonText: t('common.cancel'),
|
||||||
|
showCancelButton: true,
|
||||||
|
tip: `${t('data_set.field')}: ${allfields.value
|
||||||
.filter(ele => [...new Set(idArr)].includes(ele.id) && ele.extField !== 2)
|
.filter(ele => [...new Set(idArr)].includes(ele.id) && ele.extField !== 2)
|
||||||
.map(ele => ele.name)
|
.map(ele => ele.name)
|
||||||
.join(',')}${t('data_set.want_to_continue')}`,
|
.join(',')}, 未被勾选, 与其相关的计算字段将被删除,确认删除?`,
|
||||||
{
|
confirmButtonType: 'danger',
|
||||||
confirmButtonText: t('dataset.confirm'),
|
type: 'warning',
|
||||||
cancelButtonText: t('common.cancel'),
|
autofocus: false,
|
||||||
showCancelButton: true,
|
showClose: false,
|
||||||
confirmButtonType: 'danger',
|
callback: (action: Action) => {
|
||||||
type: 'warning',
|
if (action === 'confirm') {
|
||||||
autofocus: false,
|
datasetDrag.value.setStateBack(top, bottom)
|
||||||
showClose: false,
|
setFieldAll()
|
||||||
callback: (action: Action) => {
|
editUnion.value = false
|
||||||
if (action === 'confirm') {
|
addComplete()
|
||||||
datasetDrag.value.setStateBack(top, bottom)
|
datasetDrag.value.setChangeStatus(to, from)
|
||||||
setFieldAll()
|
|
||||||
editUnion.value = false
|
|
||||||
addComplete()
|
|
||||||
datasetDrag.value.setChangeStatus(to, from)
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
)
|
})
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user