|
@@ -3,16 +3,15 @@ package com.ruoyi.system.service.impl;
|
|
|
import java.text.MessageFormat;
|
|
|
import java.util.ArrayList;
|
|
|
import java.util.Arrays;
|
|
|
-import java.util.HashMap;
|
|
|
import java.util.HashSet;
|
|
|
import java.util.Iterator;
|
|
|
import java.util.LinkedHashMap;
|
|
|
import java.util.LinkedList;
|
|
|
import java.util.List;
|
|
|
-import java.util.Map;
|
|
|
import java.util.Set;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
+import com.ruoyi.common.base.Ztree;
|
|
|
import com.ruoyi.common.constant.UserConstants;
|
|
|
import com.ruoyi.common.utils.StringUtils;
|
|
|
import com.ruoyi.system.domain.SysMenu;
|
|
@@ -110,21 +109,21 @@ public class SysMenuServiceImpl implements ISysMenuService
|
|
|
* @return 菜单列表
|
|
|
*/
|
|
|
@Override
|
|
|
- public List<Map<String, Object>> roleMenuTreeData(SysRole role)
|
|
|
+ public List<Ztree> roleMenuTreeData(SysRole role)
|
|
|
{
|
|
|
Long roleId = role.getRoleId();
|
|
|
- List<Map<String, Object>> trees = new ArrayList<Map<String, Object>>();
|
|
|
+ List<Ztree> ztrees = new ArrayList<Ztree>();
|
|
|
List<SysMenu> menuList = menuMapper.selectMenuAll();
|
|
|
if (StringUtils.isNotNull(roleId))
|
|
|
{
|
|
|
List<String> roleMenuList = menuMapper.selectMenuTree(roleId);
|
|
|
- trees = getTrees(menuList, true, roleMenuList, true);
|
|
|
+ ztrees = initZtree(menuList, roleMenuList, true);
|
|
|
}
|
|
|
else
|
|
|
{
|
|
|
- trees = getTrees(menuList, false, null, true);
|
|
|
+ ztrees = initZtree(menuList, null, true);
|
|
|
}
|
|
|
- return trees;
|
|
|
+ return ztrees;
|
|
|
}
|
|
|
|
|
|
/**
|
|
@@ -133,12 +132,11 @@ public class SysMenuServiceImpl implements ISysMenuService
|
|
|
* @return 菜单列表
|
|
|
*/
|
|
|
@Override
|
|
|
- public List<Map<String, Object>> menuTreeData()
|
|
|
+ public List<Ztree> menuTreeData()
|
|
|
{
|
|
|
- List<Map<String, Object>> trees = new ArrayList<Map<String, Object>>();
|
|
|
List<SysMenu> menuList = menuMapper.selectMenuAll();
|
|
|
- trees = getTrees(menuList, false, null, false);
|
|
|
- return trees;
|
|
|
+ List<Ztree> ztrees = initZtree(menuList);
|
|
|
+ return ztrees;
|
|
|
}
|
|
|
|
|
|
/**
|
|
@@ -165,33 +163,39 @@ public class SysMenuServiceImpl implements ISysMenuService
|
|
|
* 对象转菜单树
|
|
|
*
|
|
|
* @param menuList 菜单列表
|
|
|
- * @param isCheck 是否需要选中
|
|
|
+ * @return 树结构列表
|
|
|
+ */
|
|
|
+ public List<Ztree> initZtree(List<SysMenu> menuList)
|
|
|
+ {
|
|
|
+ return initZtree(menuList, null, false);
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 对象转菜单树
|
|
|
+ *
|
|
|
+ * @param menuList 菜单列表
|
|
|
* @param roleMenuList 角色已存在菜单列表
|
|
|
* @param permsFlag 是否需要显示权限标识
|
|
|
- * @return
|
|
|
+ * @return 树结构列表
|
|
|
*/
|
|
|
- public List<Map<String, Object>> getTrees(List<SysMenu> menuList, boolean isCheck, List<String> roleMenuList,
|
|
|
- boolean permsFlag)
|
|
|
+ public List<Ztree> initZtree(List<SysMenu> menuList, List<String> roleMenuList, boolean permsFlag)
|
|
|
{
|
|
|
- List<Map<String, Object>> trees = new ArrayList<Map<String, Object>>();
|
|
|
+ List<Ztree> ztrees = new ArrayList<Ztree>();
|
|
|
+ boolean isCheck = StringUtils.isNotNull(roleMenuList);
|
|
|
for (SysMenu menu : menuList)
|
|
|
{
|
|
|
- Map<String, Object> deptMap = new HashMap<String, Object>();
|
|
|
- deptMap.put("id", menu.getMenuId());
|
|
|
- deptMap.put("pId", menu.getParentId());
|
|
|
- deptMap.put("name", transMenuName(menu, roleMenuList, permsFlag));
|
|
|
- deptMap.put("title", menu.getMenuName());
|
|
|
+ Ztree ztree = new Ztree();
|
|
|
+ ztree.setId(menu.getMenuId());
|
|
|
+ ztree.setpId(menu.getParentId());
|
|
|
+ ztree.setName(transMenuName(menu, roleMenuList, permsFlag));
|
|
|
+ ztree.setTitle(menu.getMenuName());
|
|
|
if (isCheck)
|
|
|
{
|
|
|
- deptMap.put("checked", roleMenuList.contains(menu.getMenuId() + menu.getPerms()));
|
|
|
- }
|
|
|
- else
|
|
|
- {
|
|
|
- deptMap.put("checked", false);
|
|
|
+ ztree.setChecked(roleMenuList.contains(menu.getMenuId() + menu.getPerms()));
|
|
|
}
|
|
|
- trees.add(deptMap);
|
|
|
+ ztrees.add(ztree);
|
|
|
}
|
|
|
- return trees;
|
|
|
+ return ztrees;
|
|
|
}
|
|
|
|
|
|
public String transMenuName(SysMenu menu, List<String> roleMenuList, boolean permsFlag)
|