add 角色权限增加父子关系
This commit is contained in:
+16
-6
@@ -3,16 +3,13 @@ package com.jero.modules.system.controller;
|
||||
|
||||
import java.io.File;
|
||||
import java.io.IOException;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.Date;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.*;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import com.jero.common.exception.JeroBootException;
|
||||
import com.jero.common.system.vo.SysDepartTreeModel;
|
||||
import com.jero.common.system.vo.SysRoleTreeModel;
|
||||
@@ -35,6 +32,7 @@ import org.jeecgframework.poi.excel.entity.ImportParams;
|
||||
import org.jeecgframework.poi.excel.view.JeecgEntityExcelView;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.cache.annotation.CacheEvict;
|
||||
import org.springframework.util.CollectionUtils;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.PathVariable;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
@@ -422,6 +420,7 @@ public class SysRoleController {
|
||||
@RequiresPermissions("sys:role:list")
|
||||
@RequestMapping(value = "/queryTreeList", method = RequestMethod.GET)
|
||||
public Result<Map<String,Object>> queryTreeList(HttpServletRequest request) {
|
||||
|
||||
Result<Map<String,Object>> result = new Result<>();
|
||||
//全部权限ids
|
||||
List<String> ids = new ArrayList<>();
|
||||
@@ -433,6 +432,17 @@ public class SysRoleController {
|
||||
for(SysPermission sysPer : list) {
|
||||
ids.add(sysPer.getId());
|
||||
}
|
||||
String roleId = request.getParameter("roleId");
|
||||
if (StrUtil.isNotBlank(roleId)) {
|
||||
SysRole sysRole = sysRoleService.getById(roleId);
|
||||
String parentId = sysRole.getParentId();
|
||||
if (StrUtil.isNotBlank(parentId)) {
|
||||
List<SysRolePermission> sysRolePermissions = sysRolePermissionService.list(new QueryWrapper<SysRolePermission>().lambda().eq(SysRolePermission::getRoleId, parentId));
|
||||
List<String> collect = sysRolePermissions.stream().map(SysRolePermission -> String.valueOf(SysRolePermission.getPermissionId())).collect(Collectors.toList());
|
||||
list = list.stream().filter(p -> collect.contains(p.getId())).collect(Collectors.toList());
|
||||
}
|
||||
}
|
||||
|
||||
List<TreeModel> treeList = new ArrayList<>();
|
||||
getTreeModelList(treeList, list, null);
|
||||
Map<String,Object> resMap = new HashMap<String,Object>();
|
||||
|
||||
Reference in New Issue
Block a user