From c80956a06c564085c789d964febf9c7a99858196 Mon Sep 17 00:00:00 2001
From: RuoYi <yzz_ivy@163.com>
Date: 星期六, 28 十一月 2020 20:39:54 +0800
Subject: [PATCH] 三级菜单自动配置组件
---
src/main/java/com/ruoyi/project/system/service/impl/SysMenuServiceImpl.java | 15 +++++++++++++++
src/main/java/com/ruoyi/common/constant/UserConstants.java | 3 +++
sql/ry_20201128.sql | 2 +-
3 files changed, 19 insertions(+), 1 deletions(-)
diff --git a/sql/ry_20201123.sql b/sql/ry_20201128.sql
similarity index 99%
rename from sql/ry_20201123.sql
rename to sql/ry_20201128.sql
index 9b8ec9c..1db0d5a 100644
--- a/sql/ry_20201123.sql
+++ b/sql/ry_20201128.sql
@@ -169,7 +169,7 @@
insert into sys_menu values('105', '瀛楀吀绠$悊', '1', '6', 'dict', 'system/dict/index', 1, 0, 'C', '0', '0', 'system:dict:list', 'dict', 'admin', sysdate(), '', null, '瀛楀吀绠$悊鑿滃崟');
insert into sys_menu values('106', '鍙傛暟璁剧疆', '1', '7', 'config', 'system/config/index', 1, 0, 'C', '0', '0', 'system:config:list', 'edit', 'admin', sysdate(), '', null, '鍙傛暟璁剧疆鑿滃崟');
insert into sys_menu values('107', '閫氱煡鍏憡', '1', '8', 'notice', 'system/notice/index', 1, 0, 'C', '0', '0', 'system:notice:list', 'message', 'admin', sysdate(), '', null, '閫氱煡鍏憡鑿滃崟');
-insert into sys_menu values('108', '鏃ュ織绠$悊', '1', '9', 'log', 'system/log/index', 1, 0, 'M', '0', '0', '', 'log', 'admin', sysdate(), '', null, '鏃ュ織绠$悊鑿滃崟');
+insert into sys_menu values('108', '鏃ュ織绠$悊', '1', '9', 'log', '', 1, 0, 'M', '0', '0', '', 'log', 'admin', sysdate(), '', null, '鏃ュ織绠$悊鑿滃崟');
insert into sys_menu values('109', '鍦ㄧ嚎鐢ㄦ埛', '2', '1', 'online', 'monitor/online/index', 1, 0, 'C', '0', '0', 'monitor:online:list', 'online', 'admin', sysdate(), '', null, '鍦ㄧ嚎鐢ㄦ埛鑿滃崟');
insert into sys_menu values('110', '瀹氭椂浠诲姟', '2', '2', 'job', 'monitor/job/index', 1, 0, 'C', '0', '0', 'monitor:job:list', 'job', 'admin', sysdate(), '', null, '瀹氭椂浠诲姟鑿滃崟');
insert into sys_menu values('111', '鏁版嵁鐩戞帶', '2', '3', 'druid', 'monitor/druid/index', 1, 0, 'C', '0', '0', 'monitor:druid:list', 'druid', 'admin', sysdate(), '', null, '鏁版嵁鐩戞帶鑿滃崟');
diff --git a/src/main/java/com/ruoyi/common/constant/UserConstants.java b/src/main/java/com/ruoyi/common/constant/UserConstants.java
index 69c2b96..d9f838e 100644
--- a/src/main/java/com/ruoyi/common/constant/UserConstants.java
+++ b/src/main/java/com/ruoyi/common/constant/UserConstants.java
@@ -53,6 +53,9 @@
/** Layout缁勪欢鏍囪瘑 */
public final static String LAYOUT = "Layout";
+
+ /** ParentView缁勪欢鏍囪瘑 */
+ public final static String PARENT_VIEW = "ParentView";
/** 鏍¢獙杩斿洖缁撴灉鐮� */
public final static String UNIQUE = "0";
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 924acf0..bd8f988 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
@@ -364,6 +364,10 @@
{
component = menu.getComponent();
}
+ else if (StringUtils.isEmpty(menu.getComponent()) && isParentView(menu))
+ {
+ component = UserConstants.PARENT_VIEW;
+ }
return component;
}
@@ -378,6 +382,17 @@
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