feat(REQ-3714): 不过滤当前操作人
This commit is contained in:
parent
04bf864e93
commit
cae7d05157
@ -199,17 +199,17 @@ public class NodeUserCheckServiceImpl implements NodeUserCheckService {
|
||||
// 协同节点关联的顶级部门节点列表
|
||||
List<Long> nodeIds = cooperateShipRespList.stream().map(OrgCooperateShipDTO::getOrganizationalNodeId).distinct().collect(Collectors.toList());
|
||||
List<Long> nodePersonIds = Lists.newArrayList(req.getPersonIds());
|
||||
nodePersonIds.add(personId);
|
||||
ListNodeUserReq query = ListNodeUserReq.builder()
|
||||
.topNodeIds(nodeIds)
|
||||
.personIds(nodePersonIds)
|
||||
.needs(ListNodeUserReq.Needs.builder().job(true).build())
|
||||
.findByAncestorNodeId(true)
|
||||
.build();
|
||||
// 查询当前登录及待删除人员在当前项目中的参与记录(仅限当前登录单位)
|
||||
// 查询待删除人员在当前项目中的参与记录(仅限当前登录单位)
|
||||
List<NodeUserDTO> nodeUsers = nodeUserService.list(query);
|
||||
// 校验当前入参
|
||||
checkPermission(nodeUsers);
|
||||
|
||||
// 校验当前操作人
|
||||
checkPermission(nodeUsers, personId, nodePersonIds);
|
||||
|
||||
if (CollUtil.isEmpty(nodeUsers)) {
|
||||
req.getPersonIds().forEach(e -> {
|
||||
@ -217,10 +217,12 @@ public class NodeUserCheckServiceImpl implements NodeUserCheckService {
|
||||
checkFailInfo.setType(CheckInfoTypeEnum.NOT_IN_JURISDICTION);
|
||||
addFailInfo(failInfoMap, e, checkFailInfo);
|
||||
});
|
||||
}
|
||||
|
||||
if (CollUtil.isEmpty(nodeUsers)) {
|
||||
transformFailMap(failInfoMap, resultList);
|
||||
return resultList;
|
||||
}
|
||||
|
||||
nodeUsers.stream().filter(e -> e.getIdentityType().equals(IdentityType.WORKER_LEADER.getCode())).findAny().ifPresent(e -> {
|
||||
BatchDeleteNodeUserCheckResp.CheckFailInfo checkFailInfo = new BatchDeleteNodeUserCheckResp.CheckFailInfo();
|
||||
checkFailInfo.setType(CheckInfoTypeEnum.TEAM_LEADER);
|
||||
@ -323,9 +325,11 @@ public class NodeUserCheckServiceImpl implements NodeUserCheckService {
|
||||
}
|
||||
}
|
||||
|
||||
private void checkPermission(List<NodeUserDTO> nodeUsers) {
|
||||
private void checkPermission(List<NodeUserDTO> nodeUsers, Long personId, List<Long> nodePersonIds) {
|
||||
if (CollUtil.isEmpty(nodeUsers)) {
|
||||
throw ResultCode.INVALID_PARAMS.toException("你已被移除当前项目,请刷新后重试当前操作!");
|
||||
if (nodePersonIds.size() == 1 && Objects.equals(personId, nodePersonIds.get(0))) {
|
||||
throw ResultCode.INVALID_PARAMS.toException("你已被移除当前项目,请刷新后重试当前操作!");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user