refactor(仪表板、数据大屏): 优化可视化资源树非发布状态查询权限

This commit is contained in:
wangjiahao
2025-04-03 17:37:30 +08:00
committed by 王嘉豪
parent eb286eeda5
commit 595c398fa0
10 changed files with 20 additions and 20 deletions

View File

@@ -15,4 +15,5 @@ export interface BusiTreeRequest {
leaf?: boolean
weight?: number
sortType?: string
resourceTable?: string
}

View File

@@ -152,7 +152,7 @@ const optInit = (type, data: BusiTreeNode, exec, parentSelect = false, attachPar
filterText.value = ''
dialogTitle.value = getDialogTitle(exec) + ('rename' === exec ? optSource : '')
resourceFormNameLabel.value = (exec === 'move' ? '' : optSource) + t('visualization.name')
const request = { busiFlag: curCanvasType.value, leaf: false, weight: 7 }
const request = { busiFlag: curCanvasType.value, leaf: false, resourceTable: 'core', weight: 7 }
if (['newFolder'].includes(exec)) {
resourceForm.name = ''
} else if ('copy' === exec) {

View File

@@ -308,21 +308,11 @@ const nodeClick = (data: BusiTreeNode, node) => {
}
}
const filterTreeData = nodes => {
if (props.resourceTable === 'snapshot') {
return nodes
.filter(node => node.extraFlag1 !== 0) // 过滤当前层
.map(node => ({
...node,
children: node.children ? filterTreeData(node.children) : [] // 递归过滤子节点
}))
} else {
return nodes
}
}
const getTree = async () => {
const request = { busiFlag: curCanvasType.value } as BusiTreeRequest
const request = {
busiFlag: curCanvasType.value,
resourceTable: props.resourceTable
} as BusiTreeRequest
const isDashboard = curCanvasType.value == 'dashboard'
await interactiveStore.setInteractive(request)
const interactiveData = isDashboard ? interactiveStore.getPanel : interactiveStore.getScreen
@@ -340,12 +330,12 @@ const getTree = async () => {
let curSortType = sortList[Number(wsCache.get('TreeSort-backend')) ?? 1].value
curSortType = wsCache.get(`TreeSort-${curCanvasType.value}`) ?? curSortType
if (nodeData.length && nodeData[0]['id'] === '0' && nodeData[0]['name'] === 'root') {
state.originResourceTree = filterTreeData(nodeData[0]['children'] || [])
state.originResourceTree = nodeData[0]['children'] || []
sortTypeChange(curSortType)
afterTreeInit()
return
}
state.originResourceTree = filterTreeData(nodeData)
state.originResourceTree = nodeData
sortTypeChange(curSortType)
afterTreeInit()
}

View File

@@ -121,6 +121,7 @@ const initOpenHandler = newWindow => {
placement="top"
>
<el-icon
v-if="dvInfo.status !== 0"
class="custom-icon hover-icon"
@click="executeStore"
:style="{ color: favorited ? '#FFC60A' : '#646A73' }"