1、部分接口关闭数据权限,避免只查看自己时,查询不到部门
2、外链二级菜单跳转的bug解决,当是外链菜单时,path前不额外增加“/”处理
已修改2个文件
10 ■■■■ 文件已修改
iailab-module-system/iailab-module-system-biz/src/main/java/com/iailab/module/system/api/user/AdminUserApiImpl.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
iailab-module-system/iailab-module-system-biz/src/main/java/com/iailab/module/system/controller/admin/auth/AuthController.java 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
iailab-module-system/iailab-module-system-biz/src/main/java/com/iailab/module/system/api/user/AdminUserApiImpl.java
@@ -5,6 +5,7 @@
import com.iailab.framework.common.pojo.CommonResult;
import com.iailab.framework.common.util.object.BeanUtils;
import com.iailab.framework.common.util.object.ConvertUtils;
import com.iailab.framework.datapermission.core.annotation.DataPermission;
import com.iailab.module.system.api.user.dto.AdminUserRespDTO;
import com.iailab.module.system.controller.admin.user.vo.user.UserSaveReqVO;
import com.iailab.module.system.dal.dataobject.dept.DeptDO;
@@ -34,6 +35,7 @@
    private PermissionService permissionService;
    @Override
    @DataPermission(enable = false) // 关闭数据权限,避免只查看自己时,查询不到部门。
    public CommonResult<AdminUserRespDTO> getUser(Long id) {
        AdminUserDO user = userService.getUser(id);
        return success(BeanUtils.toBean(user, AdminUserRespDTO.class));
iailab-module-system/iailab-module-system-biz/src/main/java/com/iailab/module/system/controller/admin/auth/AuthController.java
@@ -136,7 +136,7 @@
        Set<Long> menuIds = permissionService.getRoleMenuListByRoleId(convertSet(roles, RoleDO::getId));
        List<MenuDO> menuList = menuService.getMenuList(menuIds);
        menuList = menuService.filterDisableMenus(menuList);
//        menuList = menuService.filterMenus(menuList, "system");
        menuList = menuService.filterMenus(menuList, "system");
        // 2. 拼接结果返回
        return success(AuthConvert.INSTANCE.convert(user, roles, menuList));
@@ -239,7 +239,7 @@
        }
        children.retainAll(menuList);
        List<MenuDO> tempChildren = new LinkedList<>();
        //为每一个二级菜单增加一个隐藏父级目录
        //为每一个二级菜单(非外链菜单)增加一个隐藏父级目录
        children.stream().forEach(menu -> {
            if (menu.getParentId().equals(menuDO.getId())) {
                if(menu.getType().equals(MenuTypeEnum.MENU.getType())) {
@@ -254,7 +254,9 @@
                    tempChildren.add(parentMenu);
                } else if(menu.getType().equals(MenuTypeEnum.DIR.getType())) {
                    // 为应用菜单二级目录前增加“/”
                    menu.setPath("/" + menu.getPath());
                    if(!menu.getPath().contains("http:") && !menu.getPath().contains("https:")) {
                        menu.setPath("/" + menu.getPath());
                    }
                }
            }
            tempChildren.add(menu);