|  |  | 
 |  |  | import java.util.ArrayList; | 
 |  |  | import java.util.List; | 
 |  |  | import java.util.Objects; | 
 |  |  | import java.util.stream.Collectors; | 
 |  |  |  | 
 |  |  | @Service | 
 |  |  | public class SystemMenuBizImpl implements SystemMenuBiz { | 
 |  |  | 
 |  |  |         List<SystemMenu> menuPool; | 
 |  |  |         if (currentMenu.getParentId() == null) { | 
 |  |  |             menuPool = systemMenuService.findRootList(); | 
 |  |  |             //2024年11月16日13:51:53 过滤同类型数据 | 
 |  |  |             menuPool = menuPool.stream().filter(i->Constants.equalsInteger(i.getType(),currentMenu.getType())).collect(Collectors.toList()); | 
 |  |  |         } else { | 
 |  |  |             SystemMenu queryDto = new SystemMenu(); | 
 |  |  |             queryDto.setParentId(currentMenu.getParentId()); | 
 |  |  | 
 |  |  |     public List<SystemMenuListVO> findTreeByType(Integer type) { | 
 |  |  |         List<SystemMenuListVO> menus = systemMenuService.findList(type); | 
 |  |  |         List<SystemMenuListVO> rootMenus = new ArrayList<>(); | 
 |  |  |         if(type.equals(Constants.ONE)){ | 
 |  |  |             menus = menus.stream().filter(m->!m.getDisabled()).collect(Collectors.toList()); | 
 |  |  |         } | 
 |  |  |         // 添加根菜单 | 
 |  |  |         for (SystemMenu menu : menus) { | 
 |  |  |  | 
 |  |  |             if (menu.getParentId() == null) { | 
 |  |  |                 SystemMenuListVO rootMenu = new SystemMenuListVO(); | 
 |  |  |                 BeanUtils.copyProperties(menu, rootMenu, "children"); | 
 |  |  | 
 |  |  |         List<SystemMenu> menus = new ArrayList<SystemMenu>(); | 
 |  |  |         List<SystemMenuNodeVO> rootNodes = new ArrayList<>(); | 
 |  |  |         menus = systemMenuService.findByUserId(userId,type); | 
 |  |  |         if(type.equals(Constants.ONE)){ | 
 |  |  |         if(type.equals(Constants.ONE) || type.equals(Constants.TWO)){ | 
 |  |  |             LoginUserInfo loginUserInfo = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal(); | 
 |  |  |             Company company = companyService.findById(loginUserInfo.getCompanyId()); | 
 |  |  |             if(Objects.isNull(company)){ | 
 |  |  |                 return rootNodes; | 
 |  |  |             } | 
 |  |  |             SystemUser systemUser = systemUserService.findById(userId); | 
 |  |  |             SystemUser dbUser = new SystemUser(); | 
 |  |  |             dbUser.setId(loginUserInfo.getId()); | 
 |  |  |             SystemUser systemUser = systemUserService.findOne(dbUser); | 
 |  |  |             if(Objects.isNull(systemUser)){ | 
 |  |  |                 return rootNodes; | 
 |  |  |             } | 
 |  |  |             if(company.getUsername().equals(systemUser.getUsername())){ | 
 |  |  |             if(company.getUsername().equals(systemUser.getUsername()) | 
 |  |  |             || (Constants.equalsInteger(type,Constants.ONE) && !Constants.equalsInteger(systemUser.getCompanyId(),company.getId()))){ | 
 |  |  |                 SystemMenu systemMenu = new SystemMenu(); | 
 |  |  |                 systemMenu.setType(type); | 
 |  |  |                 systemMenu.setDeleted(Boolean.FALSE); | 
 |  |  |                 systemMenu.setDisabled(Boolean.FALSE); | 
 |  |  |                 menus = systemMenuService.findList(systemMenu); | 
 |  |  |             } | 
 |  |  |         } |