mirror of https://gitee.com/stylefeng/roses
【7.2.5】【resource】更新查询资源列表增加条件筛选
parent
6b71c6505a
commit
b4d7d6a6b7
|
@ -181,6 +181,12 @@ public class SysRoleRequest extends BaseRequest {
|
|||
@NotNull(message = "绑定标识不能为空", groups = {grantMenusAndButtons.class, grantRoleMenus.class})
|
||||
private Boolean selectBindFlag;
|
||||
|
||||
/**
|
||||
* 资源的业务类型:1-业务类型,2-系统类型
|
||||
*/
|
||||
@ChineseDescription("资源的业务类型:1-业务类型,2-系统类型")
|
||||
private Integer resourceBizType;
|
||||
|
||||
/**
|
||||
* 参数校验分组:授权菜单和按钮
|
||||
*/
|
||||
|
|
|
@ -61,7 +61,7 @@ public class SysMenuResourceServiceImpl extends ServiceImpl<SysMenuResourceMappe
|
|||
List<SysMenuResource> list = this.list(wrapper);
|
||||
|
||||
List<String> resourceCodes = list.stream().map(SysMenuResource::getResourceCode).collect(Collectors.toList());
|
||||
return sysResourceService.getResourceList(resourceCodes, true);
|
||||
return sysResourceService.getResourceList(resourceCodes, true, null);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -85,7 +85,7 @@ public class ResourceController {
|
|||
*/
|
||||
@GetResource(name = "Layui版本--获取资源树列表,用于角色分配接口权限", path = "/resource/getRoleResourceTree")
|
||||
public List<ResourceTreeNode> getLateralTree(SysRoleRequest sysRoleRequest) {
|
||||
return sysResourceService.getRoleResourceTree(sysRoleRequest.getRoleId(), false);
|
||||
return sysResourceService.getRoleResourceTree(sysRoleRequest.getRoleId(), false, null);
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -96,7 +96,7 @@ public class ResourceController {
|
|||
*/
|
||||
@GetResource(name = "AntdVue版本--获取资源树列表,用于角色分配接口权限", path = "/resource/getRoleResourceTreeAntdv")
|
||||
public ResponseData<List<ResourceTreeNode>> getLateralTreeChildren(SysRoleRequest sysRoleRequest) {
|
||||
List<ResourceTreeNode> resourceLateralTree = sysResourceService.getRoleResourceTree(sysRoleRequest.getRoleId(), true);
|
||||
List<ResourceTreeNode> resourceLateralTree = sysResourceService.getRoleResourceTree(sysRoleRequest.getRoleId(), true, sysRoleRequest.getResourceBizType());
|
||||
return new SuccessResponseData<>(resourceLateralTree);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -67,22 +67,24 @@ public interface SysResourceService extends IService<SysResource> {
|
|||
/**
|
||||
* 获取角色绑定的资源树列表,用于分配接口权限
|
||||
*
|
||||
* @param roleId 角色id
|
||||
* @param treeBuildFlag true-带树形结构,false-不组装树形结构的
|
||||
* @author majianguo
|
||||
* @date 2021/1/9 15:08
|
||||
* @param roleId 角色id
|
||||
* @param treeBuildFlag true-带树形结构,false-不组装树形结构的
|
||||
* @param resourceBizType 资源的类型,1-业务类,2-系统类
|
||||
* @author fengshuonan
|
||||
* @date 2022/9/28 23:46
|
||||
*/
|
||||
List<ResourceTreeNode> getRoleResourceTree(Long roleId, Boolean treeBuildFlag);
|
||||
List<ResourceTreeNode> getRoleResourceTree(Long roleId, Boolean treeBuildFlag, Integer resourceBizType);
|
||||
|
||||
/**
|
||||
* 获取资源绑定列表(业务通用)
|
||||
*
|
||||
* @param resourceCodes 业务已经绑定的资源的编码集合
|
||||
* @param treeBuildFlag 是否要构建成树
|
||||
* @param resourceCodes 业务已经绑定的资源的编码集合
|
||||
* @param treeBuildFlag 是否要构建成树
|
||||
* @param resourceBizType 资源的类型,1-业务类,2-系统类
|
||||
* @author fengshuonan
|
||||
* @date 2021/8/8 22:24
|
||||
*/
|
||||
List<ResourceTreeNode> getResourceList(List<String> resourceCodes, Boolean treeBuildFlag);
|
||||
List<ResourceTreeNode> getResourceList(List<String> resourceCodes, Boolean treeBuildFlag, Integer resourceBizType);
|
||||
|
||||
/**
|
||||
* 获取资源树列表,用于生成api接口
|
||||
|
|
|
@ -117,7 +117,7 @@ public class SysResourceServiceImpl extends ServiceImpl<SysResourceMapper, SysRe
|
|||
}
|
||||
|
||||
@Override
|
||||
public List<ResourceTreeNode> getRoleResourceTree(Long roleId, Boolean treeBuildFlag) {
|
||||
public List<ResourceTreeNode> getRoleResourceTree(Long roleId, Boolean treeBuildFlag, Integer resourceBizType) {
|
||||
|
||||
// 查询当前角色已有的接口
|
||||
List<SysRoleResourceDTO> resourceList = roleServiceApi.getRoleResourceList(Collections.singletonList(roleId));
|
||||
|
@ -128,11 +128,11 @@ public class SysResourceServiceImpl extends ServiceImpl<SysResourceMapper, SysRe
|
|||
alreadyList.add(sysRoleResponse.getResourceCode());
|
||||
}
|
||||
|
||||
return this.getResourceList(alreadyList, treeBuildFlag);
|
||||
return this.getResourceList(alreadyList, treeBuildFlag, resourceBizType);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<ResourceTreeNode> getResourceList(List<String> resourceCodes, Boolean treeBuildFlag) {
|
||||
public List<ResourceTreeNode> getResourceList(List<String> resourceCodes, Boolean treeBuildFlag, Integer resourceBizType) {
|
||||
List<ResourceTreeNode> res = new ArrayList<>();
|
||||
|
||||
// 获取所有的资源
|
||||
|
@ -143,6 +143,9 @@ public class SysResourceServiceImpl extends ServiceImpl<SysResourceMapper, SysRe
|
|||
// 只查询需要授权的接口
|
||||
sysResourceLambdaQueryWrapper.eq(SysResource::getRequiredPermissionFlag, YesOrNotEnum.Y.getCode());
|
||||
|
||||
// 查询指定范围的资源
|
||||
sysResourceLambdaQueryWrapper.eq(ObjectUtil.isNotEmpty(resourceBizType), SysResource::getResourceBizType, resourceBizType);
|
||||
|
||||
LoginUserApi loginUserApi = LoginContext.me();
|
||||
if (!loginUserApi.getSuperAdminFlag()) {
|
||||
// 获取权限列表
|
||||
|
|
Loading…
Reference in New Issue