From 4b702db3e4b5850f24ce4158d095aa88a992a0b3 Mon Sep 17 00:00:00 2001 From: fengshuonan Date: Sat, 2 Jan 2021 22:14:40 +0800 Subject: [PATCH] =?UTF-8?q?=E3=80=90rule=E3=80=91=E6=9B=B4=E6=96=B0ant?= =?UTF-8?q?=E6=AD=A3=E5=88=99url=E6=A0=A1=E9=AA=8C=E5=92=8Clayui=E8=8F=9C?= =?UTF-8?q?=E5=8D=95=E6=8B=BC=E6=8E=A5=EF=BC=8C=E5=A2=9E=E5=8A=A0context-p?= =?UTF-8?q?ath?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../roses/kernel/rule/util/AntPathMatcherUtil.java | 4 ++-- .../kernel/menu/modular/factory/LayuiMenusFactory.java | 9 +++++++-- 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/kernel-a-rule/src/main/java/cn/stylefeng/roses/kernel/rule/util/AntPathMatcherUtil.java b/kernel-a-rule/src/main/java/cn/stylefeng/roses/kernel/rule/util/AntPathMatcherUtil.java index ea3a886da..ad88f4572 100644 --- a/kernel-a-rule/src/main/java/cn/stylefeng/roses/kernel/rule/util/AntPathMatcherUtil.java +++ b/kernel-a-rule/src/main/java/cn/stylefeng/roses/kernel/rule/util/AntPathMatcherUtil.java @@ -22,10 +22,10 @@ public class AntPathMatcherUtil { * @author fengshuonan * @date 2020/12/15 22:31 */ - public static Boolean getAntMatchFLag(String requestURI, List antPatterns) { + public static Boolean getAntMatchFLag(String requestURI, String contextPath, List antPatterns) { AntPathMatcher antPathMatcher = new AntPathMatcher(); for (String notAuthResourcePattern : antPatterns) { - if (antPathMatcher.match(notAuthResourcePattern, requestURI)) { + if (antPathMatcher.match(contextPath + notAuthResourcePattern, requestURI)) { return true; } } diff --git a/kernel-s-system/system-business-menu/src/main/java/cn/stylefeng/roses/kernel/menu/modular/factory/LayuiMenusFactory.java b/kernel-s-system/system-business-menu/src/main/java/cn/stylefeng/roses/kernel/menu/modular/factory/LayuiMenusFactory.java index b7f5de820..1b5d76647 100644 --- a/kernel-s-system/system-business-menu/src/main/java/cn/stylefeng/roses/kernel/menu/modular/factory/LayuiMenusFactory.java +++ b/kernel-s-system/system-business-menu/src/main/java/cn/stylefeng/roses/kernel/menu/modular/factory/LayuiMenusFactory.java @@ -1,11 +1,10 @@ package cn.stylefeng.roses.kernel.menu.modular.factory; import cn.hutool.core.bean.BeanUtil; -import cn.hutool.core.collection.CollectionUtil; import cn.hutool.extra.spring.SpringUtil; import cn.stylefeng.roses.kernel.menu.modular.entity.SysMenu; -import cn.stylefeng.roses.kernel.rule.enums.StatusEnum; import cn.stylefeng.roses.kernel.rule.factory.DefaultTreeBuildFactory; +import cn.stylefeng.roses.kernel.rule.util.HttpServletUtil; import cn.stylefeng.roses.kernel.system.AppServiceApi; import cn.stylefeng.roses.kernel.system.pojo.menu.layui.LayuiAppIndexMenus; import cn.stylefeng.roses.kernel.system.pojo.menu.layui.LayuiIndexMenuTreeNode; @@ -32,6 +31,8 @@ public class LayuiMenusFactory { */ public static List createLayuiAppIndexMenus(List sysMenuList) { + String contextPath = HttpServletUtil.getRequest().getContextPath(); + ArrayList resultList = new ArrayList<>(); // 找出用户有多少个应用的菜单 @@ -54,6 +55,10 @@ public class LayuiMenusFactory { for (SysMenu appMenu : appMenus) { LayuiIndexMenuTreeNode layuiIndexMenuTreeNode = new LayuiIndexMenuTreeNode(); BeanUtil.copyProperties(appMenu, layuiIndexMenuTreeNode); + + // 每个节点的url要加上context-path + layuiIndexMenuTreeNode.setRouter(contextPath + layuiIndexMenuTreeNode.getRouter()); + layuiIndexMenuTreeNodes.add(layuiIndexMenuTreeNode); }