feat: 解决通过routerParams里面的taskNo
找到taskOrder的情况
This commit is contained in:
parent
705366f49b
commit
c4b59d9574
@ -29,6 +29,7 @@ import com.google.common.collect.Sets;
|
||||
import lombok.*;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.commons.collections.CollectionUtils;
|
||||
import org.apache.commons.lang.StringUtils;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
import org.springframework.beans.factory.annotation.Value;
|
||||
@ -216,41 +217,49 @@ public class OuIdMigrateService {
|
||||
log.info("zeroOuId, record:{}, cooperateShip:{}", record.getId(), JSONObject.toJSONString(cooperateShip));
|
||||
if (cooperateShip == null) {
|
||||
|
||||
PendingMessageRecord.RouterParams routerParams = record.resolveRouterParams();
|
||||
|
||||
TaskOrderRsp taskOrderRsp = Optional.ofNullable(apolloWorkerTaskOrderApi.listTaskOrderInfo(Lists.newArrayList(record.getBizCode())).getData())
|
||||
String taskNo = Optional.ofNullable(routerParams.getTaskNo())
|
||||
.orElseGet(() -> routerParams.getTaskId());
|
||||
if (StringUtils.isBlank(taskNo)) {
|
||||
tryUpdate(record, null, "routerParams里面的taskNo不存在");
|
||||
return;
|
||||
}
|
||||
|
||||
TaskOrderRsp taskOrderRsp = Optional.ofNullable(apolloWorkerTaskOrderApi.listTaskOrderInfo(Lists.newArrayList(taskNo)).getData())
|
||||
.map(data -> data.stream()
|
||||
.findFirst()
|
||||
.orElse(null))
|
||||
.orElse(null);
|
||||
if (taskOrderRsp == null) {
|
||||
tryUpdate(record, null, "未通过bizCode找到对应的taskOrder");
|
||||
} else {
|
||||
Long orgNodeId = null;
|
||||
if (Sets.newHashSet("fdf662e201c945dba040fc54db50a702",
|
||||
"b8115314233d478ca70e9f50ca0b0dc3",
|
||||
"a97ff39e4d39484ab7fccc55d50ea714",
|
||||
"5791020e815741e4876328c98aa3bd34").contains(record.getTemplateCode())) {
|
||||
orgNodeId = taskOrderRsp.getDistributorOrgNodeId();
|
||||
} else if (Sets.newHashSet("f40eef2ee88e4a80a699389d009a1561",
|
||||
"d1d4793c84e14d20ae1cbc399338efa3").contains(record.getTemplateCode())) {
|
||||
orgNodeId = taskOrderRsp.getRecipientOrgNodeId();
|
||||
}
|
||||
return;
|
||||
}
|
||||
Long orgNodeId = null;
|
||||
if (Sets.newHashSet("fdf662e201c945dba040fc54db50a702",
|
||||
"b8115314233d478ca70e9f50ca0b0dc3",
|
||||
"a97ff39e4d39484ab7fccc55d50ea714",
|
||||
"5791020e815741e4876328c98aa3bd34").contains(record.getTemplateCode())) {
|
||||
orgNodeId = taskOrderRsp.getDistributorOrgNodeId();
|
||||
} else if (Sets.newHashSet("f40eef2ee88e4a80a699389d009a1561",
|
||||
"d1d4793c84e14d20ae1cbc399338efa3").contains(record.getTemplateCode())) {
|
||||
orgNodeId = taskOrderRsp.getRecipientOrgNodeId();
|
||||
}
|
||||
|
||||
if (orgNodeId == null) {
|
||||
tryUpdate(record, null, "模板code未找到对应的taskOrderNoderId");
|
||||
} else {
|
||||
OrganizationalNodeUserBasicQueryVO organizationalNodeUserBasicQueryVO = new OrganizationalNodeUserBasicQueryVO();
|
||||
organizationalNodeUserBasicQueryVO.setNodeIds(Lists.newArrayList(orgNodeId));
|
||||
organizationalNodeUserBasicQueryVO.setPersonIds(Sets.newHashSet(record.getExecutorPersonId()));
|
||||
Optional<OrganizationalNodeUserBasicVO> nodeUserBasic = organizationalNodeUserApi.queryUserBasic(organizationalNodeUserBasicQueryVO).getData()
|
||||
.stream()
|
||||
.findFirst();
|
||||
if (nodeUserBasic.isPresent()) {
|
||||
tryUpdate(record, nodeUserBasic.get().getOrganizationalUnitId(), "通过taskOrder的nodeId找到nodeUser的ouId");
|
||||
} else {
|
||||
tryUpdate(record, null, "未通过taskOrder的orgNodeId找到nodeUser");
|
||||
}
|
||||
}
|
||||
if (orgNodeId == null) {
|
||||
tryUpdate(record, null, "模板code未找到对应的taskOrderNoderId");
|
||||
return;
|
||||
}
|
||||
OrganizationalNodeUserBasicQueryVO organizationalNodeUserBasicQueryVO = new OrganizationalNodeUserBasicQueryVO();
|
||||
organizationalNodeUserBasicQueryVO.setNodeIds(Lists.newArrayList(orgNodeId));
|
||||
organizationalNodeUserBasicQueryVO.setPersonIds(Sets.newHashSet(record.getExecutorPersonId()));
|
||||
Optional<OrganizationalNodeUserBasicVO> nodeUserBasic = organizationalNodeUserApi.queryUserBasic(organizationalNodeUserBasicQueryVO).getData()
|
||||
.stream()
|
||||
.findFirst();
|
||||
if (nodeUserBasic.isPresent()) {
|
||||
tryUpdate(record, nodeUserBasic.get().getOrganizationalUnitId(), "通过taskOrder的nodeId找到nodeUser的ouId");
|
||||
} else {
|
||||
tryUpdate(record, null, "未通过taskOrder的orgNodeId找到nodeUser");
|
||||
}
|
||||
} else {
|
||||
tryUpdate(record, cooperateShip.getOrganizationalUnitId(), "通过cooperate ship找到对应的单位");
|
||||
|
||||
@ -186,5 +186,9 @@ public class PendingMessageRecord extends BaseEntityExt<PendingMessageRecord> im
|
||||
private String workspaceId;
|
||||
|
||||
private String ouId;
|
||||
|
||||
private String taskId;
|
||||
|
||||
private String taskNo;
|
||||
}
|
||||
}
|
||||
|
||||
Loading…
Reference in New Issue
Block a user