|
|
@@ -1,20 +1,5 @@
|
|
|
package com.goafanti.permission.service.impl;
|
|
|
|
|
|
-import java.lang.reflect.InvocationTargetException;
|
|
|
-import java.util.ArrayList;
|
|
|
-import java.util.Date;
|
|
|
-import java.util.HashMap;
|
|
|
-import java.util.List;
|
|
|
-import java.util.Map;
|
|
|
-import java.util.Set;
|
|
|
-import java.util.UUID;
|
|
|
-import java.util.stream.Collectors;
|
|
|
-
|
|
|
-import org.apache.commons.beanutils.BeanUtils;
|
|
|
-import org.springframework.beans.factory.annotation.Autowired;
|
|
|
-import org.springframework.cache.annotation.Cacheable;
|
|
|
-import org.springframework.stereotype.Service;
|
|
|
-
|
|
|
import com.goafanti.common.constant.AFTConstants;
|
|
|
import com.goafanti.common.dao.PermissionMapper;
|
|
|
import com.goafanti.common.dao.RolePermissionMapper;
|
|
|
@@ -23,11 +8,15 @@ import com.goafanti.common.dao.UserRoleMapper;
|
|
|
import com.goafanti.common.model.Permission;
|
|
|
import com.goafanti.core.mybatis.BaseMybatisDao;
|
|
|
import com.goafanti.core.shiro.token.TokenManager;
|
|
|
-import com.goafanti.permission.service.PermissionService;
|
|
|
import com.goafanti.permission.bo.Menu;
|
|
|
import com.goafanti.permission.bo.Navigation;
|
|
|
import com.goafanti.permission.bo.PermissionBo;
|
|
|
-import com.goafanti.permission.bo.SubMenu;
|
|
|
+import com.goafanti.permission.service.PermissionService;
|
|
|
+import org.springframework.beans.factory.annotation.Autowired;
|
|
|
+import org.springframework.stereotype.Service;
|
|
|
+
|
|
|
+import java.util.*;
|
|
|
+import java.util.stream.Collectors;
|
|
|
|
|
|
@Service
|
|
|
public class PermissionServiceImpl extends BaseMybatisDao<PermissionMapper> implements PermissionService {
|
|
|
@@ -273,24 +262,21 @@ public class PermissionServiceImpl extends BaseMybatisDao<PermissionMapper> impl
|
|
|
@Override
|
|
|
public List<Menu> selectMenuList(String superId) {
|
|
|
String aid = TokenManager.hasRole(AFTConstants.SUPERADMIN) ? null : TokenManager.getAdminId();
|
|
|
- List<SubMenu> subMenus = permissionMapper.selectMenuList(superId,aid);
|
|
|
- List<Menu> menus = new ArrayList<Menu>();
|
|
|
- try {
|
|
|
- Menu m = null;
|
|
|
- for(SubMenu sm: subMenus){
|
|
|
- m = new Menu();
|
|
|
- BeanUtils.copyProperties(m, sm);
|
|
|
- menus.add(m);
|
|
|
- }
|
|
|
- if(menus != null && menus.size()>0){
|
|
|
- for(Menu menu: menus){
|
|
|
- subMenus = permissionMapper.selectMenuList(menu.getId(),aid);
|
|
|
- menu.setSubMenus(subMenus);
|
|
|
- }
|
|
|
- }
|
|
|
- } catch (IllegalAccessException | InvocationTargetException e) {
|
|
|
- e.printStackTrace();
|
|
|
- }
|
|
|
+ List<Menu> subMenus = permissionMapper.selectMenuList(null,aid);
|
|
|
+ List<Menu> menus = subMenus.stream().filter(e -> e.getSuperId().equals(superId)).collect(Collectors.toList());
|
|
|
+ List<Menu> collect2 = subMenus.stream().filter(e -> e.getType() == 2).collect(Collectors.toList());
|
|
|
+ menus.forEach(menu -> {
|
|
|
+ collect2.forEach(
|
|
|
+ subMenu -> {
|
|
|
+ if (subMenu.getSuperId().equals(menu.getId())) {
|
|
|
+ if (menu.getSubMenus()==null){
|
|
|
+ menu.setSubMenus(new ArrayList<>());
|
|
|
+ }
|
|
|
+ menu.getSubMenus().add(subMenu);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ );
|
|
|
+ });
|
|
|
return menus;
|
|
|
}
|
|
|
|