From bc09bc87234065abe7130b84c92f81f143f5f3e7 Mon Sep 17 00:00:00 2001
From: doum <doum>
Date: 星期四, 09 十月 2025 16:25:06 +0800
Subject: [PATCH] 最新版本541200007
---
server/system_service/src/main/java/com/doumee/biz/system/impl/SystemMenuBizImpl.java | 47 ++++++++++++++++++++++++++++++++++++++++++++---
1 files changed, 44 insertions(+), 3 deletions(-)
diff --git a/server/system_service/src/main/java/com/doumee/biz/system/impl/SystemMenuBizImpl.java b/server/system_service/src/main/java/com/doumee/biz/system/impl/SystemMenuBizImpl.java
index 2b5f6e2..9cb6752 100644
--- a/server/system_service/src/main/java/com/doumee/biz/system/impl/SystemMenuBizImpl.java
+++ b/server/system_service/src/main/java/com/doumee/biz/system/impl/SystemMenuBizImpl.java
@@ -3,6 +3,7 @@
import com.doumee.biz.system.SystemMenuBiz;
import com.doumee.core.exception.BusinessException;
import com.doumee.core.constants.ResponseStatus;
+import com.doumee.core.utils.Constants;
import com.doumee.dao.system.dto.UpdateSystemMenuSortDTO;
import com.doumee.dao.system.model.SystemMenu;
import com.doumee.dao.system.vo.SystemMenuListVO;
@@ -93,11 +94,19 @@
}
@Override
- public List<SystemMenuListVO> findTree() {
- List<SystemMenuListVO> menus = systemMenuService.findList();
+ public List<SystemMenu> findTopList() {
+ SystemMenu param =new SystemMenu();
+ param.setDeleted(Boolean.FALSE);
+ param.setType(Constants.ONE);
+ List<SystemMenu> menus = systemMenuService.findList(param);
+ return menus;
+ }
+ @Override
+ public List<SystemMenuListVO> findTree(SystemMenu param) {
+ List<SystemMenuListVO> menus = systemMenuService.findManageList(param);
List<SystemMenuListVO> rootMenus = new ArrayList<>();
// 娣诲姞鏍硅彍鍗�
- for (SystemMenu menu : menus) {
+ for (SystemMenuListVO menu : menus) {
if (menu.getParentId() == null) {
SystemMenuListVO rootMenu = new SystemMenuListVO();
BeanUtils.copyProperties(menu, rootMenu, "children");
@@ -126,7 +135,11 @@
nodeVO.setIndex("menu_" + menu.getId());
nodeVO.setLabel(menu.getName());
nodeVO.setUrl(menu.getPath());
+ nodeVO.setParams(menu.getParams());
+ nodeVO.setType(menu.getType());
+ nodeVO.setLinkType(menu.getLinkType());
nodeVO.setIcon(menu.getIcon());
+// nodeVO.setHomeUrl("/index");//榛樿宸ヤ綔鍙�
nodeVO.setChildren(new ArrayList<>());
rootNodes.add(nodeVO);
}
@@ -134,8 +147,27 @@
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
@@ -176,6 +208,9 @@
}
List<Integer> handledIds = new ArrayList<>();
for (SystemMenu menu : menus) {
+ if(!Constants.equalsInteger(menu.getType(),Constants.ZERO)){
+ continue;
+ }
if (parent.getId().equals(menu.getParentId())) {
SystemMenuListVO child = new SystemMenuListVO();
BeanUtils.copyProperties(menu, child, "children");
@@ -205,12 +240,18 @@
}
List<Integer> handledIds = new ArrayList<>();
for (SystemMenu menu : menus) {
+ if(!Constants.equalsInteger(menu.getType(),Constants.ZERO)){
+ continue;
+ }
if (parent.getId().equals(menu.getParentId())) {
SystemMenuNodeVO child = new SystemMenuNodeVO();
child.setId(menu.getId());
child.setLabel(menu.getName());
child.setUrl(menu.getPath());
+ child.setParams(menu.getParams());
child.setIcon(menu.getIcon());
+ child.setType(menu.getType());
+ child.setLinkType(menu.getLinkType());
child.setIndex("menu_" + menu.getId());
child.setChildren(new ArrayList<>());
parent.getChildren().add(child);
--
Gitblit v1.9.3