mirror of
https://github.com/dataease/dataease.git
synced 2026-06-16 11:21:44 +08:00
perf(仪表板): 没有权限的节点显示灰色
This commit is contained in:
@@ -97,6 +97,7 @@ export default {
|
||||
filter_condition: 'Filter condition',
|
||||
no_auth_tips: 'Missing menu permissions, please contact the administrator',
|
||||
no_menu_tips: 'Resource not found 401 error',
|
||||
no_permission_node: 'No permission for this node',
|
||||
refresh_success: 'Refresh success'
|
||||
},
|
||||
toolbox: {
|
||||
|
||||
@@ -94,6 +94,7 @@ export default {
|
||||
filter_condition: '篩選條件',
|
||||
no_auth_tips: '缺少選單權限,請聯絡管理員',
|
||||
no_menu_tips: '未找到資源401錯誤',
|
||||
no_permission_node: '對當前節點沒有權限',
|
||||
refresh_success: '刷新成功'
|
||||
},
|
||||
toolbox: {
|
||||
|
||||
@@ -95,6 +95,7 @@ export default {
|
||||
filter_condition: '筛选条件',
|
||||
no_auth_tips: '缺少菜单权限,请联系管理员',
|
||||
no_menu_tips: '未找到资源 401错误',
|
||||
no_permission_node: '对当前节点没有权限',
|
||||
refresh_success: '刷新成功'
|
||||
},
|
||||
toolbox: {
|
||||
|
||||
@@ -81,7 +81,7 @@ const props = defineProps({
|
||||
const defaultProps = {
|
||||
children: 'children',
|
||||
label: 'name',
|
||||
disabled: (data: any) => data.extraFlag1 === 0
|
||||
disabled: (data: any) => data.extraFlag1 === 0 || !data.weight
|
||||
}
|
||||
const mounted = ref(false)
|
||||
const rootManage = ref(false)
|
||||
@@ -785,17 +785,20 @@ defineExpose({
|
||||
draggable
|
||||
>
|
||||
<template #default="{ node, data }">
|
||||
<span class="custom-tree-node" :class="{ 'node-disabled-custom': data.extraFlag1 === 0 }">
|
||||
<span
|
||||
class="custom-tree-node"
|
||||
:class="{ 'node-disabled-custom': data.extraFlag1 === 0 || !data.weight }"
|
||||
>
|
||||
<el-icon style="font-size: 18px" v-if="!data.leaf">
|
||||
<Icon name="dv-folder"><dvFolder class="svg-icon" /></Icon>
|
||||
</el-icon>
|
||||
<el-icon style="font-size: 18px" v-else-if="curCanvasType === 'dashboard'">
|
||||
<Icon v-if="data.extraFlag1"
|
||||
<Icon v-if="data.extraFlag1 && data.weight"
|
||||
><component
|
||||
:is="data.extraFlag ? dvDashboardSpineMobile : dvDashboardSpine"
|
||||
></component
|
||||
></Icon>
|
||||
<Icon v-if="!data.extraFlag1"
|
||||
<Icon v-if="!data.extraFlag1 || !data.weight"
|
||||
><component
|
||||
:is="data.extraFlag ? dvDashboardSpineMobileDisabled : dvDashboardSpineDisabled"
|
||||
></component
|
||||
@@ -803,7 +806,10 @@ defineExpose({
|
||||
</el-icon>
|
||||
<el-icon
|
||||
class="icon-screen-new color-dataV"
|
||||
:class="{ 'color-dataV': data.extraFlag1, 'color-dataV-disabled': !data.extraFlag1 }"
|
||||
:class="{
|
||||
'color-dataV': data.extraFlag1 && data.weight,
|
||||
'color-dataV-disabled': !data.extraFlag1 || !data.weight
|
||||
}"
|
||||
style="font-size: 18px"
|
||||
v-else
|
||||
>
|
||||
@@ -813,6 +819,15 @@ defineExpose({
|
||||
</el-icon>
|
||||
<span :title="node.label" class="label-tooltip">
|
||||
<el-tooltip
|
||||
v-if="!data.weight"
|
||||
effect="dark"
|
||||
:content="t('common.no_permission_node')"
|
||||
placement="top-start"
|
||||
>
|
||||
{{ node.label }}
|
||||
</el-tooltip>
|
||||
<el-tooltip
|
||||
v-else
|
||||
class="box-item"
|
||||
effect="dark"
|
||||
:content="t('visualization.publish_tips1')"
|
||||
|
||||
@@ -700,7 +700,8 @@ const datasetTypeList = computed(() => {
|
||||
|
||||
const defaultProps = {
|
||||
children: 'children',
|
||||
label: 'name'
|
||||
label: 'name',
|
||||
disabled: (data: any) => !data.weight
|
||||
}
|
||||
|
||||
const defaultTab = [
|
||||
@@ -748,7 +749,7 @@ const getLimit = () => {
|
||||
}
|
||||
|
||||
const sortTypeTip = computed(() => {
|
||||
return sortList.find(ele => ele.value === state.curSortType).name
|
||||
return sortList.find(ele => ele.value === state.curSortType)?.name
|
||||
})
|
||||
|
||||
const tablePanes = ref([])
|
||||
@@ -922,14 +923,24 @@ const proxyAllowDrop = throttle((arg1, arg2) => {
|
||||
@node-click="handleNodeClick"
|
||||
>
|
||||
<template #default="{ node, data }">
|
||||
<span class="custom-tree-node">
|
||||
<span class="custom-tree-node" :class="{ 'node-disabled-custom': !data.weight }">
|
||||
<el-icon v-if="!data.leaf" style="font-size: 18px">
|
||||
<Icon name="dv-folder"><dvFolder class="svg-icon" /></Icon>
|
||||
</el-icon>
|
||||
<el-icon v-if="data.leaf" style="font-size: 18px">
|
||||
<Icon name="icon_dataset"><icon_dataset class="svg-icon" /></Icon>
|
||||
</el-icon>
|
||||
<span :title="node.label" class="label-tooltip ellipsis">{{ node.label }}</span>
|
||||
<el-tooltip
|
||||
v-if="!data.weight"
|
||||
effect="dark"
|
||||
:content="t('common.no_permission_node')"
|
||||
placement="top-start"
|
||||
>
|
||||
<span :title="node.label" class="label-tooltip ellipsis">{{ node.label }}</span>
|
||||
</el-tooltip>
|
||||
<span v-else :title="node.label" class="label-tooltip ellipsis">{{
|
||||
node.label
|
||||
}}</span>
|
||||
<div class="icon-more" v-if="data.weight >= 7">
|
||||
<handle-more
|
||||
icon-size="24px"
|
||||
@@ -1445,4 +1456,8 @@ const proxyAllowDrop = throttle((arg1, arg2) => {
|
||||
}
|
||||
}
|
||||
}
|
||||
.node-disabled-custom {
|
||||
color: rgba(187, 191, 196, 1);
|
||||
cursor: not-allowed;
|
||||
}
|
||||
</style>
|
||||
|
||||
@@ -1041,7 +1041,8 @@ const uploadExcel = editType => {
|
||||
const activeName = ref('table')
|
||||
const defaultProps = {
|
||||
children: 'children',
|
||||
label: 'name'
|
||||
label: 'name',
|
||||
disabled: data => !data.weight
|
||||
}
|
||||
|
||||
const loadInit = () => {
|
||||
@@ -1218,7 +1219,11 @@ const getMenuList = (val: boolean) => {
|
||||
@node-click="handleNodeClick"
|
||||
>
|
||||
<template #default="{ node, data }">
|
||||
<span class="custom-tree-node" style="position: relative">
|
||||
<span
|
||||
class="custom-tree-node"
|
||||
style="position: relative"
|
||||
:class="{ 'node-disabled-custom': !data.weight }"
|
||||
>
|
||||
<el-icon :class="data.leaf && 'icon-border'" style="font-size: 18px">
|
||||
<Icon :static-content="getDsIcon(data)"
|
||||
><component class="svg-icon" :is="getDsIconName(data)"></component
|
||||
@@ -1230,16 +1235,29 @@ const getMenuList = (val: boolean) => {
|
||||
>
|
||||
<Icon><icon_warning_colorful_red class="svg-icon" /></Icon>
|
||||
</el-icon>
|
||||
<el-tooltip
|
||||
v-if="!data.weight"
|
||||
effect="dark"
|
||||
:content="t('common.no_permission_node')"
|
||||
placement="top-start"
|
||||
>
|
||||
<span
|
||||
:title="node.label"
|
||||
class="label-tooltip ellipsis"
|
||||
:class="data.type === 'Excel' && 'excel'"
|
||||
>{{ node.label }}</span
|
||||
>
|
||||
</el-tooltip>
|
||||
<span
|
||||
v-else-if="data.extraFlag > -1"
|
||||
:title="node.label"
|
||||
class="label-tooltip ellipsis"
|
||||
:class="data.type === 'Excel' && 'excel'"
|
||||
v-if="data.extraFlag > -1"
|
||||
>{{ node.label }}</span
|
||||
>
|
||||
<el-tooltip
|
||||
effect="dark"
|
||||
v-else
|
||||
effect="dark"
|
||||
:content="`${t('data_set.invalid_data_source')}: ${node.label}`"
|
||||
placement="top"
|
||||
>
|
||||
@@ -2386,6 +2404,10 @@ const getMenuList = (val: boolean) => {
|
||||
}
|
||||
}
|
||||
}
|
||||
.node-disabled-custom {
|
||||
color: rgba(187, 191, 196, 1);
|
||||
cursor: not-allowed;
|
||||
}
|
||||
</style>
|
||||
<style lang="less">
|
||||
.record-drawer {
|
||||
|
||||
2
de-xpack
2
de-xpack
Submodule de-xpack updated: 7dd7698cdc...65ac17a327
Reference in New Issue
Block a user