mirror of https://gitee.com/stylefeng/roses
【8.3.3】【org】增加获取指定机构指定层级的机构
parent
f1c5c0b8ac
commit
c8792f193d
|
@ -95,4 +95,17 @@ public interface OrganizationServiceApi {
|
|||
*/
|
||||
Long getParentOrgLevel(Long orgId, String orgLevelCode);
|
||||
|
||||
/**
|
||||
* 获取指定机构的,指定层级编码的机构信息
|
||||
* <p>
|
||||
* 例如:获取北京公司/信息中心/技术部,获取技术部的一级机构信息(北京公司),二级机构信息(信息中心)
|
||||
* <p>
|
||||
*
|
||||
* @param hrOrganizationDTO 指定的机构信息
|
||||
* @param levelCode 指定的层级编码,对应的sys_hr_organization_level表的levelCode
|
||||
* @author fengshuonan
|
||||
* @since 2025/2/6 16:39
|
||||
*/
|
||||
HrOrganizationDTO getParentOrgByDataScopeType(HrOrganizationDTO hrOrganizationDTO, String levelCode);
|
||||
|
||||
}
|
||||
|
|
|
@ -481,6 +481,31 @@ public class HrOrganizationServiceImpl extends ServiceImpl<HrOrganizationMapper,
|
|||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public HrOrganizationDTO getParentOrgByDataScopeType(HrOrganizationDTO hrOrganizationDTO, String levelCode) {
|
||||
if (hrOrganizationDTO == null) {
|
||||
return null;
|
||||
}
|
||||
// 查询父级单位
|
||||
String orgPids = hrOrganizationDTO.getOrgPids();
|
||||
if (StrUtil.isBlank(orgPids)) {
|
||||
return null;
|
||||
}
|
||||
List<Long> parentIdList = ParentIdParseUtil.parseToPidList(orgPids);
|
||||
LambdaQueryWrapper<HrOrganization> wrapper = new LambdaQueryWrapper<>();
|
||||
wrapper.in(HrOrganization::getOrgId, parentIdList);
|
||||
List<HrOrganization> list = this.list(wrapper);
|
||||
|
||||
// 遍历父级单位,找到指定参数层级对应的机构
|
||||
for (HrOrganization hrOrganization : list) {
|
||||
String orgLevelCode = hrOrganization.getLevelCode();
|
||||
if (orgLevelCode.equals(levelCode)) {
|
||||
return BeanUtil.copyProperties(hrOrganization, HrOrganizationDTO.class);
|
||||
}
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public HomeCompanyInfo orgStatInfo() {
|
||||
|
||||
|
|
Loading…
Reference in New Issue