diff --git a/core/core-frontend/src/api/visualization/dataVisualization.ts b/core/core-frontend/src/api/visualization/dataVisualization.ts index a299c02d2f..918c64b8ac 100644 --- a/core/core-frontend/src/api/visualization/dataVisualization.ts +++ b/core/core-frontend/src/api/visualization/dataVisualization.ts @@ -7,6 +7,7 @@ export interface ResourceOrFolder { nodeType: 'folder' | 'leaf' type: string mobileLayout: boolean + status: boolean } export interface Panel { diff --git a/core/core-frontend/src/components/dashboard/DbToolbar.vue b/core/core-frontend/src/components/dashboard/DbToolbar.vue index 93244457c8..5f2167c82e 100644 --- a/core/core-frontend/src/components/dashboard/DbToolbar.vue +++ b/core/core-frontend/src/components/dashboard/DbToolbar.vue @@ -726,6 +726,7 @@ const initOpenHandler = newWindow => { diff --git a/core/core-frontend/src/components/data-visualization/DvToolbar.vue b/core/core-frontend/src/components/data-visualization/DvToolbar.vue index 082db16b65..892ea30e51 100644 --- a/core/core-frontend/src/components/data-visualization/DvToolbar.vue +++ b/core/core-frontend/src/components/data-visualization/DvToolbar.vue @@ -476,6 +476,7 @@ const fullScreenPreview = () => { diff --git a/core/core-frontend/src/style/index.less b/core/core-frontend/src/style/index.less index 4d2ccb9501..6c7aa986e2 100644 --- a/core/core-frontend/src/style/index.less +++ b/core/core-frontend/src/style/index.less @@ -430,11 +430,11 @@ em { } .color-screen { - background: rgb(0, 214, 185); + background: rgba(51, 112, 255, 1); } .color-dataV { - background: rgb(0, 214, 185) !important; + background: rgba(51, 112, 255, 1); } .color-dataset { diff --git a/core/core-frontend/src/views/common/DeResourceGroupOpt.vue b/core/core-frontend/src/views/common/DeResourceGroupOpt.vue index 71691387ba..ac1fcfd3f5 100644 --- a/core/core-frontend/src/views/common/DeResourceGroupOpt.vue +++ b/core/core-frontend/src/views/common/DeResourceGroupOpt.vue @@ -256,7 +256,8 @@ const saveResource = () => { nodeType: nodeType.value as 'folder' | 'leaf', name: resourceForm.name, type: curCanvasType.value, - mobileLayout: state.targetInfo?.extraFlag + mobileLayout: state.targetInfo?.extraFlag, + status: state.targetInfo?.extraFlag1 } switch (cmd.value) { diff --git a/core/core-frontend/src/views/common/DeResourceTree.vue b/core/core-frontend/src/views/common/DeResourceTree.vue index 9138c0e3a6..b6dfdaa4ec 100644 --- a/core/core-frontend/src/views/common/DeResourceTree.vue +++ b/core/core-frontend/src/views/common/DeResourceTree.vue @@ -75,7 +75,7 @@ const props = defineProps({ const defaultProps = { children: 'children', label: 'name', - disabled: 'leaf' + disabled: (data: any) => data.extraFlag1 === 0 } const mounted = ref(false) const rootManage = ref(false) @@ -259,13 +259,24 @@ const cancelPreRequest = () => { cancelRequestBatch('/linkJump/queryVisualizationJumpInfo/**') } -const nodeClick = (data: BusiTreeNode) => { - cancelPreRequest() - selectedNodeKey.value = data.id - if (data.leaf) { - emit('nodeClick', data) +const nodeClick = (data: BusiTreeNode, node) => { + if (node.disabled) { + nextTick(() => { + // 找到当前高亮的节点,移除高亮样式 + const currentNode = resourceListTree.value.$el.querySelector('.is-current') + if (currentNode) { + currentNode.classList.remove('is-current') + } + return // 阻止后续逻辑 + }) } else { - resourceListTree.value.setCurrentKey(null) + cancelPreRequest() + selectedNodeKey.value = data.id + if (data.leaf) { + emit('nodeClick', data) + } else { + resourceListTree.value.setCurrentKey(null) + } } } @@ -745,7 +756,12 @@ defineExpose({ > - + @@ -968,4 +984,8 @@ defineExpose({ color: rgba(187, 191, 196, 1); cursor: not-allowed; } + +.color-dataV-disabled { + background: #bbbfc4 !important; +} diff --git a/sdk/api/api-permissions/src/main/java/io/dataease/api/permissions/auth/dto/BusiResourceEditor.java b/sdk/api/api-permissions/src/main/java/io/dataease/api/permissions/auth/dto/BusiResourceEditor.java index 72ee5cf1dc..5e313ca9a3 100644 --- a/sdk/api/api-permissions/src/main/java/io/dataease/api/permissions/auth/dto/BusiResourceEditor.java +++ b/sdk/api/api-permissions/src/main/java/io/dataease/api/permissions/auth/dto/BusiResourceEditor.java @@ -14,5 +14,5 @@ public class BusiResourceEditor implements Serializable { private String name; private String flag; private int extraFlag; - private int extraFlag1 = 0; + private int extraFlag1; }