From f97762a1584cd80883abc03db8d839e566e88b49 Mon Sep 17 00:00:00 2001
From: kaiyu <404897439@qq.com>
Date: Tue, 08 Jun 2021 11:11:29 +0800
Subject: [PATCH] screen-manage 后台登陆获取菜单添加排序功能
---
screen-manage/src/main/java/com/moral/api/pojo/vo/login/AccountInfoVO.java | 42 ++++++++++++++++++++++++++++++++++++++++--
screen-manage/src/main/java/com/moral/api/service/impl/ManageAccountServiceImpl.java | 2 +-
2 files changed, 41 insertions(+), 3 deletions(-)
diff --git a/screen-manage/src/main/java/com/moral/api/pojo/vo/login/AccountInfoVO.java b/screen-manage/src/main/java/com/moral/api/pojo/vo/login/AccountInfoVO.java
index 5267d67..1c870d0 100644
--- a/screen-manage/src/main/java/com/moral/api/pojo/vo/login/AccountInfoVO.java
+++ b/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;
+ }
+ }
+
+
}
diff --git a/screen-manage/src/main/java/com/moral/api/service/impl/ManageAccountServiceImpl.java b/screen-manage/src/main/java/com/moral/api/service/impl/ManageAccountServiceImpl.java
index 2076867..f6e15a0 100644
--- a/screen-manage/src/main/java/com/moral/api/service/impl/ManageAccountServiceImpl.java
+++ b/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);
}
--
Gitblit v1.8.0