4.3.0.RELEASE 权限菜单丢失

Saber 未结 1 64
Jalena
Jalena 2024-12-17 12:03

一、该问题的重现步骤是什么?

1. 自己定义的功能,分别有CRUD的按钮,位于菜单下。

2. 当分配权限不是完整的CRUD时,菜单直接不显示了。


screenshot_20241217120255839.png


二、你期待的结果是什么?实际看到的又是什么?

请修正src/views/authority/role.vue下的submit方法

submit() {
  const menuList = this.$refs.treeMenu.getCheckedKeys();
  const dataScopeList = this.$refs.treeDataScope.getCheckedKeys();
  const apiScopeList = this.$refs.treeApiScope.getCheckedKeys();
  grant(this.idsArray, menuList, dataScopeList, apiScopeList).then(() => {
    this.box = false;
    this.$message({
      type: 'success',
      message: '操作成功!',
    });
    this.selectionList = [];
    this.onLoad(this.page);
  });
}


menuList未能获取父级菜单,所以导致存入在 blade_role_menu 表中的权限菜单缺失了父级的菜单。


然后在获取routes的后端方法中org.springblade.system.service.impl.MenuServiceImpl#tenantPackageMenu,因为保存的 blade_role_memu就缺少了父级的菜单,在使用filter过滤包含时,直接就将数据排除了!


screenshot_20241217120134927.png


三、你正在使用的是什么产品,什么版本?在什么操作系统上?

4.3.0.RELEASE


四、请提供详细的错误堆栈信息,这很重要。



五、若有更多详细信息,请在下面提供。

1条回答
提交回复