From 35c9dae7372048f22208d70a8cefa91d6f7ee081 Mon Sep 17 00:00:00 2001
From: guoshilong <123456>
Date: Tue, 25 Apr 2023 15:27:18 +0800
Subject: [PATCH] 动态菜单web新增按钮返回

---
 skjcmanager/skjcmanager-service/skjcmanager-system/src/main/java/cn/gistack/system/service/impl/MenuServiceImpl.java |   38 +++++++++++++++++++++++++-------------
 1 files changed, 25 insertions(+), 13 deletions(-)

diff --git a/skjcmanager/skjcmanager-service/skjcmanager-system/src/main/java/cn/gistack/system/service/impl/MenuServiceImpl.java b/skjcmanager/skjcmanager-service/skjcmanager-system/src/main/java/cn/gistack/system/service/impl/MenuServiceImpl.java
index e3a74a8..c7723ad 100644
--- a/skjcmanager/skjcmanager-service/skjcmanager-system/src/main/java/cn/gistack/system/service/impl/MenuServiceImpl.java
+++ b/skjcmanager/skjcmanager-service/skjcmanager-system/src/main/java/cn/gistack/system/service/impl/MenuServiceImpl.java
@@ -308,38 +308,50 @@
 		List<MenuVO> routes = routes(roleId, null);
 
 		List<MenuVO> list = routes.stream().filter(r -> Func.equals(r.getAlias(), "web")).collect(Collectors.toList());
-		MenuVO menuVO = list.get(0);
-		int level = 0;
-		WebMenuVO webMenuVO = buildWebMenuVO(menuVO,level);
-		return webMenuVO.getChildren();
+		if (list.size()>0){
+			MenuVO menuVO = list.get(0);
+//			int level = 0;
+			WebMenuVO webMenuVO = buildWebMenuVO(menuVO);
+			return webMenuVO.getChildren();
+		}else {
+			return null;
+		}
+
+	}
+
+	@Override
+	public List<MenuVO> getButtonList(String roleId) {
+		return baseMapper.getButtonList(Func.toLongList(roleId));
 	}
 
 
-	public WebMenuVO buildWebMenuVO(MenuVO menuVO,int level){
+	public WebMenuVO buildWebMenuVO(MenuVO menuVO){
 		WebMenuVO webMenuVO = new WebMenuVO();
 		Meta meta = new Meta();
 		webMenuVO.setMeta(meta);
-		webMenuVO.getMeta().setLevel(level);
-		level++;
-		final int levelTemp = level;
+		webMenuVO.getMeta().setLevel(menuVO.getLevel());
+//		level++;
+//		final int levelTemp = level;
 		//设置基础信息
 		webMenuVO.setPath(menuVO.getPath());
 		webMenuVO.setComponent(menuVO.getComponents());
 		webMenuVO.getMeta().setIcon(menuVO.getIconPath());
 		webMenuVO.getMeta().setTitle(menuVO.getName());
+		webMenuVO.setComponentPath(menuVO.getComponentPath());
 
+		if (Func.equals(menuVO.getHasSubMenu(),"1")){
+			webMenuVO.getMeta().setHasSubMenu(true);
+		}else {
+			webMenuVO.getMeta().setHasSubMenu(false);
+		}
 		if (menuVO.getChildren().size()>0){
 			//有子菜单
-			webMenuVO.getMeta().setHasSubMenu(true);
 			List<WebMenuVO> list = new ArrayList<>();
 			menuVO.getChildren().forEach(menu->{
-				WebMenuVO webMenuVO1 = buildWebMenuVO(menu,levelTemp);
+				WebMenuVO webMenuVO1 = buildWebMenuVO(menu);
 				list.add(webMenuVO1);
 			});
 			webMenuVO.setChildren(list);
-		}else {
-			//无子菜单
-			webMenuVO.getMeta().setHasSubMenu(false);
 		}
 
 		return webMenuVO;

--
Gitblit v1.9.3