fix: 禁止admin修改菜单分配

This commit is contained in:
TsMask
2025-03-21 17:06:51 +08:00
parent 26686f88db
commit a8a5c0a31e

View File

@@ -32,8 +32,10 @@ import { hasPermissions } from '@/plugins/auth-user';
import { MENU_PATH_INLINE } from '@/constants/menu-constants'; import { MENU_PATH_INLINE } from '@/constants/menu-constants';
import { RESULT_CODE_SUCCESS } from '@/constants/result-constants'; import { RESULT_CODE_SUCCESS } from '@/constants/result-constants';
import useI18n from '@/hooks/useI18n'; import useI18n from '@/hooks/useI18n';
import useUserStore from '@/store/modules/user';
const { t } = useI18n(); const { t } = useI18n();
const { getDict } = useDictStore(); const { getDict } = useDictStore();
const userStore = useUserStore();
const router = useRouter(); const router = useRouter();
const route = useRoute(); const route = useRoute();
const routePath = route.path; const routePath = route.path;
@@ -144,7 +146,7 @@ let tableColumns: ColumnsType = [
title: t('views.system.role.createTime'), title: t('views.system.role.createTime'),
dataIndex: 'createTime', dataIndex: 'createTime',
align: 'center', align: 'center',
width: 150, width: 200,
customRender(opt) { customRender(opt) {
if (+opt.value <= 0) return ''; if (+opt.value <= 0) return '';
return parseDateToStr(+opt.value); return parseDateToStr(+opt.value);
@@ -366,7 +368,7 @@ function fnModalVisibleByEdit(roleId?: string | number) {
menuTreeSelect().then(res => { menuTreeSelect().then(res => {
modalState.confirmLoading = false; modalState.confirmLoading = false;
hide(); hide();
if (res.code === RESULT_CODE_SUCCESS && Array.isArray(res.data)) { if (res.code === RESULT_CODE_SUCCESS) {
menuTree.checkedKeys = parseTreeKeys(res.data, 'id'); menuTree.checkedKeys = parseTreeKeys(res.data, 'id');
menuTree.expandedKeys = parseTreeNodeKeys(res.data, 'id'); menuTree.expandedKeys = parseTreeNodeKeys(res.data, 'id');
menuTree.treeData = res.data; menuTree.treeData = res.data;
@@ -940,7 +942,7 @@ onMounted(() => {
v-if=" v-if="
dict.sysNormalDisable.length > 0 && dict.sysNormalDisable.length > 0 &&
record.roleId !== '1' && record.roleId !== '1' &&
record.roleKey !== 'admin' && !userStore.roles?.includes(record.roleKey) &&
hasPermissions(['system:role:edit']) hasPermissions(['system:role:edit'])
" "
v-model:checked="record.status" v-model:checked="record.status"
@@ -970,7 +972,10 @@ onMounted(() => {
</a-button> </a-button>
</a-tooltip> </a-tooltip>
<a-tooltip <a-tooltip
v-if="record.roleId !== '1' && record.roleKey !== 'admin'" v-if="
record.roleId !== '1' &&
!userStore.roles?.includes(record.roleKey)
"
> >
<template #title>{{ t('common.editText') }}</template> <template #title>{{ t('common.editText') }}</template>
<a-button <a-button
@@ -982,7 +987,10 @@ onMounted(() => {
</a-button> </a-button>
</a-tooltip> </a-tooltip>
<a-tooltip <a-tooltip
v-if="record.roleId !== '1' && record.roleKey !== 'admin'" v-if="
record.roleId !== '1' &&
!userStore.roles?.includes(record.roleKey)
"
> >
<template #title>{{ t('common.deleteText') }}</template> <template #title>{{ t('common.deleteText') }}</template>
<a-button <a-button