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)
|
||||
private Long roleId;
|
||||
|
||||
/**
|
||||
* 用户id(作为查询条件)
|
||||
*/
|
||||
@NotNull(message = "用户id不能为空", groups = userOrgScopeQuery.class)
|
||||
private Long userId;
|
||||
|
||||
/**
|
||||
* 组织机构树zTree形式
|
||||
*/
|
||||
public @interface orgZTree {
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询用户的数据范围
|
||||
*/
|
||||
public @interface userOrgScopeQuery {
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -35,6 +35,11 @@ public class OrganizationTreeNode implements AbstractTreeNode, AbstractXmSelectN
|
|||
*/
|
||||
private boolean spread = true;
|
||||
|
||||
/**
|
||||
* 是否选中
|
||||
*/
|
||||
private boolean selected = false;
|
||||
|
||||
/**
|
||||
* 子节点的集合
|
||||
*/
|
||||
|
@ -67,7 +72,7 @@ public class OrganizationTreeNode implements AbstractTreeNode, AbstractXmSelectN
|
|||
|
||||
@Override
|
||||
public Boolean getSelected() {
|
||||
return false;
|
||||
return this.selected;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -120,6 +120,17 @@ public class HrOrganizationController {
|
|||
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版本)
|
||||
*
|
||||
|
|
|
@ -176,6 +176,20 @@ public class HrOrganizationServiceImpl extends ServiceImpl<HrOrganizationMapper,
|
|||
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);
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue