kaiyu
2021-06-08 f97762a1584cd80883abc03db8d839e566e88b49
screen-manage
后台登陆获取菜单添加排序功能
2 files modified
44 ■■■■■ changed files
screen-manage/src/main/java/com/moral/api/pojo/vo/login/AccountInfoVO.java 42 ●●●●● patch | view | raw | blame | history
screen-manage/src/main/java/com/moral/api/service/impl/ManageAccountServiceImpl.java 2 ●●● patch | view | raw | blame | history
screen-manage/src/main/java/com/moral/api/pojo/vo/login/AccountInfoVO.java
@@ -8,8 +8,7 @@
import lombok.Data;
import org.springframework.util.ObjectUtils;
import java.util.ArrayList;
import java.util.List;
import java.util.*;
/**
 * @ClassName AccountInfoVO
@@ -65,6 +64,10 @@
                removeAttribute(menu);
            }
        }
        //menu进行排序
        if (!ObjectUtils.isEmpty(menus)) {
            orderRootMenu(menus);
        }
        vo.setAccountId(account.getId());
        vo.setUserName(account.getUserName());
        vo.setMenus(menus);
@@ -85,4 +88,39 @@
        }
    }
    /**
    * @Description: 对根菜单进行排序
            * @Param: [menus]
            * @return: void
            * @Author: 陈凯裕
            * @Date: 2021/6/8
            */
    public static void orderRootMenu(List<ManageMenu> menus){
        menus.sort(Comparator.comparing(ManageMenu::getOrder));
        for (ManageMenu menu : menus) {
            orderMenu(menu);
        }
    }
    /**
    * @Description: 对非根菜单进行排序
            * @Param: [menu]
            * @return: void
            * @Author: 陈凯裕
            * @Date: 2021/6/8
            */
    public static void orderMenu(ManageMenu menu){
        List<ManageMenu> children = menu.getChildren();
        if(!ObjectUtils.isEmpty(children)){
            children.sort(Comparator.comparing(ManageMenu::getOrder));
            for (ManageMenu child : children) {
                orderMenu(child);
            }
        }else{
            return;
        }
    }
}
screen-manage/src/main/java/com/moral/api/service/impl/ManageAccountServiceImpl.java
@@ -118,7 +118,7 @@
        List<ManageRole> roles = manageRoleMapper.getManageRoleByAccountId(manageAccount.getId());
        //查询菜单
        List<ManageMenu> menus = null;
        List<ManageMenu> menus = new ArrayList<>();
        if (!ObjectUtils.isEmpty(roles)) {
            menus = manageMenuService.getParentChildrenMenusByRoles(roles);
        }