소스 검색

fix: 后端菜单 promotion 时继承父级 rank

showParent=false 且只有一个子节点时,后端将子节点提升为一级菜单。
此前只覆盖了 icon 和 title,遗漏了 rank,导致 promotion 后的节点
没有 meta.rank,被前端 ascending 强制赋为 index+2(如 22),
排在所有菜单末尾,拖拽一级菜单排序后该节点位置不变。

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
skyline 1 주 전
부모
커밋
ca1e60ab92
1개의 변경된 파일4개의 추가작업 그리고 0개의 파일을 삭제
  1. 4 0
      haha-service/src/main/java/com/haha/service/impl/MenuServiceImpl.java

+ 4 - 0
haha-service/src/main/java/com/haha/service/impl/MenuServiceImpl.java

@@ -167,6 +167,10 @@ public class MenuServiceImpl extends ServiceImpl<MenuMapper, Menu> implements Me
                     }
                     // 使用父级 title 覆盖子级(更概括)
                     childMeta.put("title", menu.getTitle());
+                    // 继承父级 rank(子级优先)
+                    if (childMeta.get("rank") == null && menu.getRank() != null) {
+                        childMeta.put("rank", menu.getRank());
+                    }
                     tree.add(childNode);
                 } else {
                     node.put("children", childNodes);