|  |  | 
 |  |  |                 nodeVO.setType(menu.getType()); | 
 |  |  |                 nodeVO.setLinkType(menu.getLinkType()); | 
 |  |  |                 nodeVO.setIcon(menu.getIcon()); | 
 |  |  | //                nodeVO.setHomeUrl("/index");//默认工作台 | 
 |  |  |                 nodeVO.setChildren(new ArrayList<>()); | 
 |  |  |                 rootNodes.add(nodeVO); | 
 |  |  |             } | 
 |  |  | 
 |  |  |         menus.removeIf(menu -> menu.getParentId() == null); | 
 |  |  |         for (SystemMenuNodeVO child : rootNodes) { | 
 |  |  |             this.fillChildren(child, menus); | 
 |  |  |             SystemMenuNodeVO homeMenus = getHomeUrlByChild(child); | 
 |  |  |             if(homeMenus!=null && homeMenus.getUrl() != null){ | 
 |  |  |                     child.setHomeUrl(homeMenus.getUrl()); | 
 |  |  |             } | 
 |  |  |         } | 
 |  |  |         return rootNodes; | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |     private SystemMenuNodeVO getHomeUrlByChild( SystemMenuNodeVO  child) { | 
 |  |  |         if(child.getChildren()==null || child.getChildren().size() ==0){ | 
 |  |  |             return null; | 
 |  |  |         } | 
 |  |  |         for(SystemMenuNodeVO tt : child.getChildren()){ | 
 |  |  |             if(tt.getChildren()==null || tt.getChildren().size() ==0){ | 
 |  |  |                 return tt; | 
 |  |  |             }else{ | 
 |  |  |                 SystemMenuNodeVO ttt = getHomeUrlByChild(tt); | 
 |  |  |                 return ttt; | 
 |  |  |             } | 
 |  |  |         } | 
 |  |  |         return null; | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |     @Override | 
 |  |  |     public void deleteById(Integer id) { | 
 |  |  |         List<Integer> ids = systemMenuService.findChildren(id); |