mirror of https://gitee.com/stylefeng/roses
【7.0.2】整理获取组织机构树接口
parent
ceadea43f8
commit
748454e4e2
|
@ -80,10 +80,22 @@ public class HrOrganizationRequest extends BaseRequest {
|
||||||
@NotNull(message = "角色id不能为空", groups = orgZTree.class)
|
@NotNull(message = "角色id不能为空", groups = orgZTree.class)
|
||||||
private Long roleId;
|
private Long roleId;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 用户id(作为查询条件)
|
||||||
|
*/
|
||||||
|
@NotNull(message = "用户id不能为空", groups = userOrgScopeQuery.class)
|
||||||
|
private Long userId;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 组织机构树zTree形式
|
* 组织机构树zTree形式
|
||||||
*/
|
*/
|
||||||
public @interface orgZTree {
|
public @interface orgZTree {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询用户的数据范围
|
||||||
|
*/
|
||||||
|
public @interface userOrgScopeQuery {
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -35,6 +35,11 @@ public class OrganizationTreeNode implements AbstractTreeNode, AbstractXmSelectN
|
||||||
*/
|
*/
|
||||||
private boolean spread = true;
|
private boolean spread = true;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 是否选中
|
||||||
|
*/
|
||||||
|
private boolean selected = false;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 子节点的集合
|
* 子节点的集合
|
||||||
*/
|
*/
|
||||||
|
@ -67,7 +72,7 @@ public class OrganizationTreeNode implements AbstractTreeNode, AbstractXmSelectN
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Boolean getSelected() {
|
public Boolean getSelected() {
|
||||||
return false;
|
return this.selected;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -120,6 +120,17 @@ public class HrOrganizationController {
|
||||||
return new SuccessResponseData(hrOrganizationService.organizationTree(hrOrganizationRequest));
|
return new SuccessResponseData(hrOrganizationService.organizationTree(hrOrganizationRequest));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取组织机构树(用于用户绑定数据范围,可以渲染是否选中信息)
|
||||||
|
*
|
||||||
|
* @author fengshuonan
|
||||||
|
* @date 2021/3/19 22:20
|
||||||
|
*/
|
||||||
|
@GetResource(name = "获取组织机构树(用于用户绑定数据范围)", path = "/hrOrganization/treeOrgScope")
|
||||||
|
public ResponseData organizationTreeOrgScope(@Validated(value = HrOrganizationRequest.userOrgScopeQuery.class) HrOrganizationRequest hrOrganizationRequest) {
|
||||||
|
return new SuccessResponseData(hrOrganizationService.organizationTree(hrOrganizationRequest));
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 获取组织机构树(用于角色配置数据范围类型,并且数据范围类型是指定组织机构时)(layui版本)
|
* 获取组织机构树(用于角色配置数据范围类型,并且数据范围类型是指定组织机构时)(layui版本)
|
||||||
*
|
*
|
||||||
|
|
|
@ -176,6 +176,20 @@ public class HrOrganizationServiceImpl extends ServiceImpl<HrOrganizationMapper,
|
||||||
treeNodeList.add(treeNode);
|
treeNodeList.add(treeNode);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 设置树节点上,用户绑定的组织机构数据范围
|
||||||
|
if (hrOrganizationRequest.getUserId() != null) {
|
||||||
|
List<Long> orgIds = userServiceApi.getUserBindDataScope(hrOrganizationRequest.getUserId());
|
||||||
|
if (ObjectUtil.isNotEmpty(orgIds)) {
|
||||||
|
for (OrganizationTreeNode organizationTreeNode : treeNodeList) {
|
||||||
|
for (Long orgId : orgIds) {
|
||||||
|
if (organizationTreeNode.getId().equals(orgId)) {
|
||||||
|
organizationTreeNode.setSelected(true);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// 构建树并返回
|
// 构建树并返回
|
||||||
return new DefaultTreeBuildFactory<OrganizationTreeNode>().doTreeBuild(treeNodeList);
|
return new DefaultTreeBuildFactory<OrganizationTreeNode>().doTreeBuild(treeNodeList);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue