| 
															
																@@ -10,6 +10,7 @@ import java.util.Set; 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 import java.util.stream.Collectors; 
															 | 
															
															 | 
															
																 import java.util.stream.Collectors; 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 import org.springframework.beans.factory.annotation.Autowired; 
															 | 
															
															 | 
															
																 import org.springframework.beans.factory.annotation.Autowired; 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 import org.springframework.stereotype.Service; 
															 | 
															
															 | 
															
																 import org.springframework.stereotype.Service; 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+import com.ruoyi.common.constant.Constants; 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 import com.ruoyi.common.constant.UserConstants; 
															 | 
															
															 | 
															
																 import com.ruoyi.common.constant.UserConstants; 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 import com.ruoyi.common.core.domain.TreeSelect; 
															 | 
															
															 | 
															
																 import com.ruoyi.common.core.domain.TreeSelect; 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 import com.ruoyi.common.core.domain.entity.SysMenu; 
															 | 
															
															 | 
															
																 import com.ruoyi.common.core.domain.entity.SysMenu; 
															 | 
														
													
												
											
												
													
														
															 | 
															
																@@ -150,7 +151,7 @@ public class SysMenuServiceImpl implements ISysMenuService 
															 | 
														
													
												
													
														
															| 
															 | 
															
																             router.setName(getRouteName(menu)); 
															 | 
															
															 | 
															
																             router.setName(getRouteName(menu)); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																             router.setPath(getRouterPath(menu)); 
															 | 
															
															 | 
															
																             router.setPath(getRouterPath(menu)); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																             router.setComponent(getComponent(menu)); 
															 | 
															
															 | 
															
																             router.setComponent(getComponent(menu)); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-            router.setMeta(new MetaVo(menu.getMenuName(), menu.getIcon(), StringUtils.equals("1", menu.getIsCache()))); 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+            router.setMeta(new MetaVo(menu.getMenuName(), menu.getIcon(), StringUtils.equals("1", menu.getIsCache()), menu.getPath())); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																             List<SysMenu> cMenus = menu.getChildren(); 
															 | 
															
															 | 
															
																             List<SysMenu> cMenus = menu.getChildren(); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																             if (!cMenus.isEmpty() && cMenus.size() > 0 && UserConstants.TYPE_DIR.equals(menu.getMenuType())) 
															 | 
															
															 | 
															
																             if (!cMenus.isEmpty() && cMenus.size() > 0 && UserConstants.TYPE_DIR.equals(menu.getMenuType())) 
															 | 
														
													
												
													
														
															| 
															 | 
															
																             { 
															 | 
															
															 | 
															
																             { 
															 | 
														
													
												
											
												
													
														
															 | 
															
																@@ -166,7 +167,21 @@ public class SysMenuServiceImpl implements ISysMenuService 
															 | 
														
													
												
													
														
															| 
															 | 
															
																                 children.setPath(menu.getPath()); 
															 | 
															
															 | 
															
																                 children.setPath(menu.getPath()); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																                 children.setComponent(menu.getComponent()); 
															 | 
															
															 | 
															
																                 children.setComponent(menu.getComponent()); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																                 children.setName(StringUtils.capitalize(menu.getPath())); 
															 | 
															
															 | 
															
																                 children.setName(StringUtils.capitalize(menu.getPath())); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-                children.setMeta(new MetaVo(menu.getMenuName(), menu.getIcon(), StringUtils.equals("1", menu.getIsCache()))); 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                children.setMeta(new MetaVo(menu.getMenuName(), menu.getIcon(), StringUtils.equals("1", menu.getIsCache()), menu.getPath())); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                childrenList.add(children); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                router.setChildren(childrenList); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+            } 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+            else if (menu.getParentId().intValue() == 0 && isInnerLink(menu)) 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+            { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                router.setMeta(null); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                router.setPath("/inner"); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                List<RouterVo> childrenList = new ArrayList<RouterVo>(); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                RouterVo children = new RouterVo(); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                String routerPath = StringUtils.replaceEach(menu.getPath(), new String[] { Constants.HTTP, Constants.HTTPS }, new String[] { "", "" }); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                children.setPath(routerPath); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                children.setComponent(UserConstants.INNER_LINK); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                children.setName(StringUtils.capitalize(routerPath)); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                children.setMeta(new MetaVo(menu.getMenuName(), menu.getIcon(), menu.getPath())); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																                 childrenList.add(children); 
															 | 
															
															 | 
															
																                 childrenList.add(children); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																                 router.setChildren(childrenList); 
															 | 
															
															 | 
															
																                 router.setChildren(childrenList); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																             } 
															 | 
															
															 | 
															
																             } 
															 | 
														
													
												
											
												
													
														
															 | 
															
																@@ -338,6 +353,11 @@ public class SysMenuServiceImpl implements ISysMenuService 
															 | 
														
													
												
													
														
															| 
															 | 
															
																     public String getRouterPath(SysMenu menu) 
															 | 
															
															 | 
															
																     public String getRouterPath(SysMenu menu) 
															 | 
														
													
												
													
														
															| 
															 | 
															
																     { 
															 | 
															
															 | 
															
																     { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																         String routerPath = menu.getPath(); 
															 | 
															
															 | 
															
																         String routerPath = menu.getPath(); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+        // 内链打开外网方式 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+        if (menu.getParentId().intValue() != 0 && isInnerLink(menu)) 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+        { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+            routerPath = StringUtils.replaceEach(routerPath, new String[] { Constants.HTTP, Constants.HTTPS }, new String[] { "", "" }); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+        } 
															 | 
														
													
												
													
														
															| 
															 | 
															
																         // 非外链并且是一级目录(类型为目录) 
															 | 
															
															 | 
															
																         // 非外链并且是一级目录(类型为目录) 
															 | 
														
													
												
													
														
															| 
															 | 
															
																         if (0 == menu.getParentId().intValue() && UserConstants.TYPE_DIR.equals(menu.getMenuType()) 
															 | 
															
															 | 
															
																         if (0 == menu.getParentId().intValue() && UserConstants.TYPE_DIR.equals(menu.getMenuType()) 
															 | 
														
													
												
													
														
															| 
															 | 
															
																                 && UserConstants.NO_FRAME.equals(menu.getIsFrame())) 
															 | 
															
															 | 
															
																                 && UserConstants.NO_FRAME.equals(menu.getIsFrame())) 
															 | 
														
													
												
											
												
													
														
															 | 
															
																@@ -365,6 +385,10 @@ public class SysMenuServiceImpl implements ISysMenuService 
															 | 
														
													
												
													
														
															| 
															 | 
															
																         { 
															 | 
															
															 | 
															
																         { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																             component = menu.getComponent(); 
															 | 
															
															 | 
															
																             component = menu.getComponent(); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																         } 
															 | 
															
															 | 
															
																         } 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+        else if (StringUtils.isEmpty(menu.getComponent()) && menu.getParentId().intValue() != 0 && isInnerLink(menu)) 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+        { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+            component = UserConstants.INNER_LINK; 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+        } 
															 | 
														
													
												
													
														
															| 
															 | 
															
																         else if (StringUtils.isEmpty(menu.getComponent()) && isParentView(menu)) 
															 | 
															
															 | 
															
																         else if (StringUtils.isEmpty(menu.getComponent()) && isParentView(menu)) 
															 | 
														
													
												
													
														
															| 
															 | 
															
																         { 
															 | 
															
															 | 
															
																         { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																             component = UserConstants.PARENT_VIEW; 
															 | 
															
															 | 
															
																             component = UserConstants.PARENT_VIEW; 
															 | 
														
													
												
											
												
													
														
															 | 
															
																@@ -384,6 +408,17 @@ public class SysMenuServiceImpl implements ISysMenuService 
															 | 
														
													
												
													
														
															| 
															 | 
															
																                 && menu.getIsFrame().equals(UserConstants.NO_FRAME); 
															 | 
															
															 | 
															
																                 && menu.getIsFrame().equals(UserConstants.NO_FRAME); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																     } 
															 | 
															
															 | 
															
																     } 
															 | 
														
													
												
													
														
															| 
															 | 
															
																  
															 | 
															
															 | 
															
																  
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+    /** 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+     * 是否为内链组件 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+     *  
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+     * @param menu 菜单信息 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+     * @return 结果 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+     */ 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+    public boolean isInnerLink(SysMenu menu) 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+    { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+        return menu.getIsFrame().equals(UserConstants.NO_FRAME) && StringUtils.ishttp(menu.getPath()); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+    } 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+ 
															 | 
														
													
												
													
														
															| 
															 | 
															
																     /** 
															 | 
															
															 | 
															
																     /** 
															 | 
														
													
												
													
														
															| 
															 | 
															
																      * 是否为parent_view组件 
															 | 
															
															 | 
															
																      * 是否为parent_view组件 
															 | 
														
													
												
													
														
															| 
															 | 
															
																      *  
															 | 
															
															 | 
															
																      *  
															 |