From a8fb7ae2dbb61a94141ed5e73d3bb2632b7b84df Mon Sep 17 00:00:00 2001
From: rk <94314517@qq.com>
Date: 星期日, 28 九月 2025 15:25:48 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/wuhuyancao' into wuhuyancao

---
 server/system_service/src/main/java/com/doumee/biz/system/impl/SystemMenuBizImpl.java |   20 ++++++++++++++++++++
 1 files changed, 20 insertions(+), 0 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 edf8379..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
@@ -139,6 +139,7 @@
                 nodeVO.setType(menu.getType());
                 nodeVO.setLinkType(menu.getLinkType());
                 nodeVO.setIcon(menu.getIcon());
+//                nodeVO.setHomeUrl("/index");//榛樿宸ヤ綔鍙�
                 nodeVO.setChildren(new ArrayList<>());
                 rootNodes.add(nodeVO);
             }
@@ -146,10 +147,29 @@
         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
     public void deleteById(Integer id) {
         List<Integer> ids = systemMenuService.findChildren(id);

--
Gitblit v1.9.3