From 4153f38e1f55daac0d1da109992a65c0026b0f40 Mon Sep 17 00:00:00 2001
From: zhengyiming <540361168@qq.com>
Date: 星期五, 14 十一月 2025 20:29:19 +0800
Subject: [PATCH] fix: bug
---
src/views/Permission/components/dialogAuthorize.vue | 27 +++++++++++++++++++++------
1 files changed, 21 insertions(+), 6 deletions(-)
diff --git a/src/views/Permission/components/dialogAuthorize.vue b/src/views/Permission/components/dialogAuthorize.vue
index 6708450..e858e7c 100644
--- a/src/views/Permission/components/dialogAuthorize.vue
+++ b/src/views/Permission/components/dialogAuthorize.vue
@@ -25,7 +25,8 @@
default-expand-all
show-checkbox
ref="moduleTree"
- :default-checked-keys="checkedModules"
+ :default-checked-keys="initModeluChecked()"
+ check-strictly
>
<template #default="{ node }">
<div class="custom-tree-node">
@@ -156,10 +157,18 @@
<script setup lang="ts">
import { computed, reactive, watch } from 'vue';
import * as baseModuleServices from '@/services/api/BaseModule';
+import * as baseModuleNewServices from '@/services/api/BaseModuleNew';
import { Message } from '@bole-core/core';
-import { AuthorizeType, SubModuleType, SubModuleTitle } from '@/constants';
+import {
+ AuthorizeType,
+ SubModuleType,
+ SubModuleTitle,
+ EnumMenuSceneText,
+ EnumMenuScene,
+} from '@/constants';
import { getTree } from '@/utils';
import { templateRef } from '@vueuse/core';
+import { PropType } from 'vue';
const TypeTip = defineComponent({
name: 'TypeTip',
@@ -167,7 +176,6 @@
render() {
const { typeTip, isMenu } = this;
const tipText = isMenu ? `鑿滃崟` : '椤甸潰';
- console.log(typeTip);
return h(
'span',
{
@@ -189,6 +197,10 @@
authorizeType: {
type: String,
default: 'Role',
+ },
+ menuScene: {
+ type: Number as PropType<EnumMenuScene>,
+ default: EnumMenuScene.Back,
},
});
const emit = defineEmits<{
@@ -216,6 +228,7 @@
props.authorizeType === 'Role' ? '瑙掕壊鍔熻兘鎺堟潈' : '璐﹀彿鍔熻兘鎺堟潈'
);
const checkedModules = computed(() => initModeluChecked());
+console.log('checkedModules: ', checkedModules);
const checkedPageButton = computed(() => initChecked(2));
const checkedDataButton = computed(() => initChecked(3));
const checkedDataColumn = computed(() => initChecked(4));
@@ -333,12 +346,13 @@
async function getModulesByUserOrRoleId(id) {
const { authorizeType } = props;
- const data = {
+ const data: API.APIgetUserOrRoleModuleListParams = {
objectType: AuthorizeType[authorizeType],
id,
+ menuScene: props.menuScene,
};
- const result = await baseModuleServices.getUserOrRoleModuleList(data);
+ const result = await baseModuleNewServices.getUserOrRoleModuleList(data);
state.sysModules = getTree(result, null);
elModuleTree.value.setCheckedKeys(result.filter((x) => x.hasCheck).map((x) => x.id));
@@ -368,6 +382,7 @@
});
}
});
+ console.log('state.checkedInfo: ', state.checkedInfo);
}
async function getExtendsByRoleOrUser(data) {
@@ -384,7 +399,7 @@
function initModeluChecked() {
return state.checkedInfo
- .filter((x) => x.moduleType === SubModuleType.MenuButton && x.parentId)
+ .filter((x) => x.moduleType === SubModuleType.MenuButton)
.map((x) => x.moduleId);
}
--
Gitblit v1.9.1