feat:[REQ-3488] 过滤入参中集合类型中可能有null值的元素
This commit is contained in:
parent
7f329ee8c8
commit
7a22e944c4
@ -152,15 +152,15 @@ public class CooperateShipServiceImpl implements CooperateShipService {
|
||||
|
||||
// 构建查询条件
|
||||
CooperateShipQueryRepository.ListReq listReq = CooperateShipQueryRepository.ListReq.builder()
|
||||
.ids(req.getIds())
|
||||
.workspaceIds(req.getWorkspaceIds())
|
||||
.workspaceTypes(req.getWorkspaceTypes())
|
||||
.ouIds(req.getOuIds())
|
||||
.includeCooperateTypes(req.getIncludeCooperateTypes())
|
||||
.excludeCooperateTypes(req.getExcludeCooperateTypes())
|
||||
.organizationNodeIds(req.getOrganizationNodeIds())
|
||||
.partnerShips(req.getPartnerShips())
|
||||
.statuses(req.getStatuses())
|
||||
.ids(filterNullValues(req.getIds()))
|
||||
.workspaceIds(filterNullValues(req.getWorkspaceIds()))
|
||||
.workspaceTypes(filterNullValues(req.getWorkspaceTypes()))
|
||||
.ouIds(filterNullValues(req.getOuIds()))
|
||||
.includeCooperateTypes(filterNullValues(req.getIncludeCooperateTypes()))
|
||||
.excludeCooperateTypes(filterNullValues(req.getExcludeCooperateTypes()))
|
||||
.organizationNodeIds(filterNullValues(req.getOrganizationNodeIds()))
|
||||
.partnerShips(filterNullValues(req.getPartnerShips()))
|
||||
.statuses(filterNullValues(req.getStatuses()))
|
||||
.build();
|
||||
// 根据入参查询数据
|
||||
List<SaasCooperateShip> currentNodeList = cooperateShipQueryRepository.list(listReq);
|
||||
@ -225,4 +225,17 @@ public class CooperateShipServiceImpl implements CooperateShipService {
|
||||
resultNodeList.sort(Comparator.comparing(SaasCooperateShip::getPath));
|
||||
return BeanUtil.copyToList(CollUtil.distinct(resultNodeList, SaasCooperateShip::getId, true), OrgCooperateShipDTO.class);
|
||||
}
|
||||
|
||||
/**
|
||||
* 过滤空值
|
||||
* @param collection
|
||||
* @return
|
||||
* @param <T>
|
||||
*/
|
||||
private <T> Collection<T> filterNullValues(Collection<T> collection) {
|
||||
if (CollUtil.isEmpty(collection)) {
|
||||
return collection;
|
||||
}
|
||||
return CollUtil.filter(collection, Objects::nonNull);
|
||||
}
|
||||
}
|
||||
|
||||
@ -59,7 +59,7 @@ public class ListNodeCmdExe {
|
||||
// 条件: 当入参传入岗位标签,并且组织用户有数据时
|
||||
// 场景:查询指定人员所在的组织节点,并且岗位标签匹配
|
||||
if (CollUtil.isNotEmpty(req.getJobCodes()) && CollUtil.isNotEmpty(nodeUsers)) {
|
||||
nodeUserFoundationService.filterByJobs(nodeUsers, req.getJobCodes());
|
||||
nodeUserFoundationService.filterByJobs(nodeUsers, filterNullValues(req.getJobCodes()));
|
||||
if (CollUtil.isEmpty(nodeUsers)) {
|
||||
return emptyPageResp;
|
||||
}
|
||||
@ -71,8 +71,8 @@ public class ListNodeCmdExe {
|
||||
if (CollUtil.isNotEmpty(req.getWorkspaceIds()) || CollUtil.isNotEmpty(req.getWorkspaceOuPairs())) {
|
||||
List<Long> topNodeIds = CollUtil.map(cooperateShipQueryRepository.list(CooperateShipQueryRepository.ListReq
|
||||
.builder()
|
||||
.workspaceIds(req.getWorkspaceIds())
|
||||
.workspaceOuPairs(req.getWorkspaceOuPairs())
|
||||
.workspaceIds(filterNullValues((req.getWorkspaceIds())))
|
||||
.workspaceOuPairs(filterNullValues((req.getWorkspaceOuPairs())))
|
||||
.build()), SaasCooperateShip::getOrganizationalNodeId, true);
|
||||
if (CollUtil.isEmpty(topNodeIds)) {
|
||||
return emptyPageResp;
|
||||
@ -269,4 +269,17 @@ public class ListNodeCmdExe {
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* 过滤空值
|
||||
* @param collection
|
||||
* @return
|
||||
* @param <T>
|
||||
*/
|
||||
private <T> Collection<T> filterNullValues(Collection<T> collection) {
|
||||
if (CollUtil.isEmpty(collection)) {
|
||||
return collection;
|
||||
}
|
||||
return CollUtil.filter(collection, Objects::nonNull);
|
||||
}
|
||||
|
||||
}
|
||||
Loading…
Reference in New Issue
Block a user