Merge remote-tracking branch 'refs/remotes/origin/feature/REQ-3282' into feature/REQ-3282-zhh
This commit is contained in:
commit
926c0c86b1
@ -3,6 +3,8 @@ package cn.axzo.orgmanax.server.cooperateship.foundation.impl;
|
|||||||
import cn.axzo.orgmanax.dto.nodeuser.dto.NodeUserDTO;
|
import cn.axzo.orgmanax.dto.nodeuser.dto.NodeUserDTO;
|
||||||
import cn.axzo.orgmanax.dto.nodeuser.req.ListNodeUserReq;
|
import cn.axzo.orgmanax.dto.nodeuser.req.ListNodeUserReq;
|
||||||
import cn.axzo.orgmanax.infra.dao.cooperateship.entity.SaasCooperateShip;
|
import cn.axzo.orgmanax.infra.dao.cooperateship.entity.SaasCooperateShip;
|
||||||
|
import cn.axzo.orgmanax.infra.dao.nodeuser.entity.OrganizationalNodeUser;
|
||||||
|
import cn.axzo.orgmanax.infra.dao.nodeuser.repository.NodeUserQueryRepository;
|
||||||
import cn.axzo.orgmanax.server.cooperateship.foundation.CooperateShipFoundationService;
|
import cn.axzo.orgmanax.server.cooperateship.foundation.CooperateShipFoundationService;
|
||||||
import cn.axzo.orgmanax.server.nodeuser.service.NodeUserService;
|
import cn.axzo.orgmanax.server.nodeuser.service.NodeUserService;
|
||||||
import cn.hutool.core.util.StrUtil;
|
import cn.hutool.core.util.StrUtil;
|
||||||
@ -18,8 +20,7 @@ import org.springframework.stereotype.Service;
|
|||||||
@Service
|
@Service
|
||||||
public class CooperateShipFoundationServiceImpl implements CooperateShipFoundationService {
|
public class CooperateShipFoundationServiceImpl implements CooperateShipFoundationService {
|
||||||
|
|
||||||
@Autowired
|
private NodeUserQueryRepository nodeUserQueryRepository;
|
||||||
private NodeUserService nodeUserService;
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void filterByPerson(Long filterPersonId, List<SaasCooperateShip> list) {
|
public void filterByPerson(Long filterPersonId, List<SaasCooperateShip> list) {
|
||||||
@ -28,11 +29,11 @@ public class CooperateShipFoundationServiceImpl implements CooperateShipFoundati
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
Set<Long> organizationalNodeIds = list.stream().map(SaasCooperateShip::getOrganizationalNodeId).collect(Collectors.toSet());
|
Set<Long> organizationalNodeIds = list.stream().map(SaasCooperateShip::getOrganizationalNodeId).collect(Collectors.toSet());
|
||||||
Set<Long> personInNodeIds = nodeUserService.list(ListNodeUserReq.builder()
|
Set<Long> personInNodeIds = nodeUserQueryRepository.list(NodeUserQueryRepository.ListReq.builder()
|
||||||
.personId(filterPersonId)
|
.personId(filterPersonId)
|
||||||
.organizationalNodeIds(organizationalNodeIds)
|
.organizationalNodeIds(organizationalNodeIds)
|
||||||
.build())
|
.build())
|
||||||
.stream().map(NodeUserDTO::getTopNodeId).collect(Collectors.toSet());
|
.stream().map(OrganizationalNodeUser::getTopNodeId).collect(Collectors.toSet());
|
||||||
list.removeIf(t -> !personInNodeIds.contains(t.getOrganizationalNodeId()));
|
list.removeIf(t -> !personInNodeIds.contains(t.getOrganizationalNodeId()));
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -28,7 +28,6 @@ import cn.hutool.core.util.ObjectUtil;
|
|||||||
import com.google.common.collect.ImmutableSet;
|
import com.google.common.collect.ImmutableSet;
|
||||||
import lombok.RequiredArgsConstructor;
|
import lombok.RequiredArgsConstructor;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
@ -55,9 +54,7 @@ public class CooperateShipServiceImpl implements CooperateShipService {
|
|||||||
private final UnitQueryRepository unitQueryRepository;
|
private final UnitQueryRepository unitQueryRepository;
|
||||||
private final WorkspaceGateway workspaceGateway;
|
private final WorkspaceGateway workspaceGateway;
|
||||||
private final EventProducer eventProducer;
|
private final EventProducer eventProducer;
|
||||||
@Autowired
|
private final CooperateShipFoundationService cooperateShipFoundationService;
|
||||||
private CooperateShipFoundationService cooperateShipFoundationService;
|
|
||||||
private final NodeUserQueryRepository nodeUserQueryRepository;
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public SaasCooperateShip create(CreateReq req) {
|
public SaasCooperateShip create(CreateReq req) {
|
||||||
|
|||||||
@ -11,6 +11,7 @@ import cn.axzo.orgmanax.dto.nodeuser.req.ListNodeUserReq;
|
|||||||
import cn.axzo.orgmanax.infra.dao.cooperateship.entity.SaasCooperateShip;
|
import cn.axzo.orgmanax.infra.dao.cooperateship.entity.SaasCooperateShip;
|
||||||
import cn.axzo.orgmanax.infra.dao.cooperateship.repository.CooperateShipQueryRepository;
|
import cn.axzo.orgmanax.infra.dao.cooperateship.repository.CooperateShipQueryRepository;
|
||||||
import cn.axzo.orgmanax.infra.dao.node.repository.NodeQueryRepository;
|
import cn.axzo.orgmanax.infra.dao.node.repository.NodeQueryRepository;
|
||||||
|
import cn.axzo.orgmanax.infra.dao.nodeuser.entity.OrganizationalNodeUser;
|
||||||
import cn.axzo.orgmanax.infra.dao.nodeuser.repository.NodeUserQueryRepository;
|
import cn.axzo.orgmanax.infra.dao.nodeuser.repository.NodeUserQueryRepository;
|
||||||
import cn.axzo.orgmanax.infra.dao.orgjob.repository.OrgJobQueryRepository;
|
import cn.axzo.orgmanax.infra.dao.orgjob.repository.OrgJobQueryRepository;
|
||||||
import cn.axzo.orgmanax.server.node.foundation.NodeFoundationService;
|
import cn.axzo.orgmanax.server.node.foundation.NodeFoundationService;
|
||||||
@ -32,6 +33,8 @@ import java.util.stream.Collectors;
|
|||||||
import lombok.RequiredArgsConstructor;
|
import lombok.RequiredArgsConstructor;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.apache.commons.lang3.StringUtils;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.context.ApplicationContext;
|
import org.springframework.context.ApplicationContext;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
@ -47,8 +50,6 @@ public class NodeServiceImpl implements NodeService {
|
|||||||
private final NodeUserFoundationService nodeUserFoundationService;
|
private final NodeUserFoundationService nodeUserFoundationService;
|
||||||
private final CooperateShipQueryRepository cooperateShipQueryRepository;
|
private final CooperateShipQueryRepository cooperateShipQueryRepository;
|
||||||
private final NodeFoundationService nodeFoundationService;
|
private final NodeFoundationService nodeFoundationService;
|
||||||
@Autowired
|
|
||||||
private NodeUserService nodeUserService;
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public NodeProcessor.ProcessResult process(ProcessNodeReq req) {
|
public NodeProcessor.ProcessResult process(ProcessNodeReq req) {
|
||||||
@ -95,7 +96,7 @@ public class NodeServiceImpl implements NodeService {
|
|||||||
|
|
||||||
// 获取部门用户信息, 若获取不到直接返回
|
// 获取部门用户信息, 若获取不到直接返回
|
||||||
if (Objects.nonNull(req.getPersonId())) {
|
if (Objects.nonNull(req.getPersonId())) {
|
||||||
List<NodeUserDTO> nodeUsers = nodeUserService.list(ListNodeUserReq
|
List<NodeUserQueryRepository.NodeUserResp> nodeUsers = nodeUserQueryRepository.list(NodeUserQueryRepository.ListReq
|
||||||
.builder().personId(req.getPersonId()).build());
|
.builder().personId(req.getPersonId()).build());
|
||||||
if (CollUtil.isEmpty(nodeUsers)) {
|
if (CollUtil.isEmpty(nodeUsers)) {
|
||||||
return emptyPageResp;
|
return emptyPageResp;
|
||||||
@ -104,7 +105,7 @@ public class NodeServiceImpl implements NodeService {
|
|||||||
// 获取岗位信息
|
// 获取岗位信息
|
||||||
if (CollUtil.isNotEmpty(req.getJobCodes())) {
|
if (CollUtil.isNotEmpty(req.getJobCodes())) {
|
||||||
List<OrgJobQueryRepository.JobResp> orgJobs = orgJobQueryRepository.list(OrgJobQueryRepository.ListReq.builder()
|
List<OrgJobQueryRepository.JobResp> orgJobs = orgJobQueryRepository.list(OrgJobQueryRepository.ListReq.builder()
|
||||||
.ids(CollUtil.map(nodeUsers, NodeUserDTO::getOrganizationalJobId, true))
|
.ids(CollUtil.map(nodeUsers, OrganizationalNodeUser::getOrganizationalJobId, true))
|
||||||
.codes(req.getJobCodes())
|
.codes(req.getJobCodes())
|
||||||
.build());
|
.build());
|
||||||
nodeUserFoundationService.filterByJobs(nodeUsers, orgJobs);
|
nodeUserFoundationService.filterByJobs(nodeUsers, orgJobs);
|
||||||
@ -113,7 +114,7 @@ public class NodeServiceImpl implements NodeService {
|
|||||||
if (CollUtil.isEmpty(nodeUsers)) {
|
if (CollUtil.isEmpty(nodeUsers)) {
|
||||||
return emptyPageResp;
|
return emptyPageResp;
|
||||||
}
|
}
|
||||||
reqListBuilder.ids(nodeUsers.stream().map(NodeUserDTO::getOrganizationalNodeId).collect(Collectors.toSet()));
|
reqListBuilder.ids(nodeUsers.stream().map(OrganizationalNodeUser::getOrganizationalNodeId).collect(Collectors.toSet()));
|
||||||
}
|
}
|
||||||
|
|
||||||
// 根据项目ID获取topNodeId进行组织节点过滤
|
// 根据项目ID获取topNodeId进行组织节点过滤
|
||||||
|
|||||||
@ -34,5 +34,5 @@ public interface NodeUserFoundationService {
|
|||||||
* @param nodeUsers
|
* @param nodeUsers
|
||||||
* @param orgJobs
|
* @param orgJobs
|
||||||
*/
|
*/
|
||||||
<T extends NodeUserDTO, Job extends OrgJob> void filterByJobs(List<T> nodeUsers, List<Job> orgJobs);
|
<T extends NodeUserQueryRepository.NodeUserResp, Job extends OrgJob> void filterByJobs(List<T> nodeUsers, List<Job> orgJobs);
|
||||||
}
|
}
|
||||||
|
|||||||
@ -136,7 +136,7 @@ public class NodeUserFoundationServiceImpl implements NodeUserFoundationService
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public <T extends NodeUserDTO, Job extends OrgJob> void filterByJobs(List<T> nodeUsers, List<Job> orgJobs) {
|
public <T extends NodeUserQueryRepository.NodeUserResp, Job extends OrgJob> void filterByJobs(List<T> nodeUsers, List<Job> orgJobs) {
|
||||||
List<Long> jobIds = CollUtil.map(orgJobs, OrgJob::getId, true);
|
List<Long> jobIds = CollUtil.map(orgJobs, OrgJob::getId, true);
|
||||||
nodeUsers.removeIf(e -> !jobIds.contains(e.getOrganizationalJobId()));
|
nodeUsers.removeIf(e -> !jobIds.contains(e.getOrganizationalJobId()));
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user