From 11d327572b3fc007ef68c46b9c66a451a76e6430 Mon Sep 17 00:00:00 2001
From: RuoYi <yzz_ivy@163.com>
Date: 星期五, 25 六月 2021 17:28:01 +0800
Subject: [PATCH] 升级pagehelper到最新版1.3.1
---
src/main/java/com/ruoyi/project/system/service/impl/SysMenuServiceImpl.java | 38 ++++++++++++++++++++++++++++++--------
1 files changed, 30 insertions(+), 8 deletions(-)
diff --git a/src/main/java/com/ruoyi/project/system/service/impl/SysMenuServiceImpl.java b/src/main/java/com/ruoyi/project/system/service/impl/SysMenuServiceImpl.java
index fb1c830..acdb4c5 100644
--- a/src/main/java/com/ruoyi/project/system/service/impl/SysMenuServiceImpl.java
+++ b/src/main/java/com/ruoyi/project/system/service/impl/SysMenuServiceImpl.java
@@ -15,10 +15,12 @@
import com.ruoyi.common.utils.StringUtils;
import com.ruoyi.framework.web.domain.TreeSelect;
import com.ruoyi.project.system.domain.SysMenu;
+import com.ruoyi.project.system.domain.SysRole;
import com.ruoyi.project.system.domain.SysUser;
import com.ruoyi.project.system.domain.vo.MetaVo;
import com.ruoyi.project.system.domain.vo.RouterVo;
import com.ruoyi.project.system.mapper.SysMenuMapper;
+import com.ruoyi.project.system.mapper.SysRoleMapper;
import com.ruoyi.project.system.mapper.SysRoleMenuMapper;
import com.ruoyi.project.system.service.ISysMenuService;
@@ -34,6 +36,9 @@
@Autowired
private SysMenuMapper menuMapper;
+
+ @Autowired
+ private SysRoleMapper roleMapper;
@Autowired
private SysRoleMenuMapper roleMenuMapper;
@@ -124,7 +129,8 @@
@Override
public List<Integer> selectMenuListByRoleId(Long roleId)
{
- return menuMapper.selectMenuListByRoleId(roleId);
+ SysRole role = roleMapper.selectRoleById(roleId);
+ return menuMapper.selectMenuListByRoleId(roleId, role.isMenuCheckStrictly());
}
/**
@@ -144,7 +150,7 @@
router.setName(getRouteName(menu));
router.setPath(getRouterPath(menu));
router.setComponent(getComponent(menu));
- router.setMeta(new MetaVo(menu.getMenuName(), menu.getIcon()));
+ router.setMeta(new MetaVo(menu.getMenuName(), menu.getIcon(), StringUtils.equals("1", menu.getIsCache())));
List<SysMenu> cMenus = menu.getChildren();
if (!cMenus.isEmpty() && cMenus.size() > 0 && UserConstants.TYPE_DIR.equals(menu.getMenuType()))
{
@@ -152,14 +158,15 @@
router.setRedirect("noRedirect");
router.setChildren(buildMenus(cMenus));
}
- else if (isMeunFrame(menu))
+ else if (isMenuFrame(menu))
{
+ router.setMeta(null);
List<RouterVo> childrenList = new ArrayList<RouterVo>();
RouterVo children = new RouterVo();
children.setPath(menu.getPath());
children.setComponent(menu.getComponent());
children.setName(StringUtils.capitalize(menu.getPath()));
- children.setMeta(new MetaVo(menu.getMenuName(), menu.getIcon()));
+ children.setMeta(new MetaVo(menu.getMenuName(), menu.getIcon(), StringUtils.equals("1", menu.getIsCache())));
childrenList.add(children);
router.setChildren(childrenList);
}
@@ -315,7 +322,7 @@
{
String routerName = StringUtils.capitalize(menu.getPath());
// 闈炲閾惧苟涓旀槸涓�绾х洰褰曪紙绫诲瀷涓虹洰褰曪級
- if (isMeunFrame(menu))
+ if (isMenuFrame(menu))
{
routerName = StringUtils.EMPTY;
}
@@ -338,7 +345,7 @@
routerPath = "/" + menu.getPath();
}
// 闈炲閾惧苟涓旀槸涓�绾х洰褰曪紙绫诲瀷涓鸿彍鍗曪級
- else if (isMeunFrame(menu))
+ else if (isMenuFrame(menu))
{
routerPath = "/";
}
@@ -354,9 +361,13 @@
public String getComponent(SysMenu menu)
{
String component = UserConstants.LAYOUT;
- if (StringUtils.isNotEmpty(menu.getComponent()) && !isMeunFrame(menu))
+ if (StringUtils.isNotEmpty(menu.getComponent()) && !isMenuFrame(menu))
{
component = menu.getComponent();
+ }
+ else if (StringUtils.isEmpty(menu.getComponent()) && isParentView(menu))
+ {
+ component = UserConstants.PARENT_VIEW;
}
return component;
}
@@ -367,11 +378,22 @@
* @param menu 鑿滃崟淇℃伅
* @return 缁撴灉
*/
- public boolean isMeunFrame(SysMenu menu)
+ public boolean isMenuFrame(SysMenu menu)
{
return menu.getParentId().intValue() == 0 && UserConstants.TYPE_MENU.equals(menu.getMenuType())
&& menu.getIsFrame().equals(UserConstants.NO_FRAME);
}
+
+ /**
+ * 鏄惁涓簆arent_view缁勪欢
+ *
+ * @param menu 鑿滃崟淇℃伅
+ * @return 缁撴灉
+ */
+ public boolean isParentView(SysMenu menu)
+ {
+ return menu.getParentId().intValue() != 0 && UserConstants.TYPE_DIR.equals(menu.getMenuType());
+ }
/**
* 鏍规嵁鐖惰妭鐐圭殑ID鑾峰彇鎵�鏈夊瓙鑺傜偣
--
Gitblit v1.9.3