Commit 7ba084bc4dfafeb0475ef04a4e1b9e7deef3abf6

Authored by YunaiV
1 parent fb6771aa

fix:【BPM 工作流】子流程返回的 processInstanceId 不正确的问题

yudao-module-bpm/src/main/java/cn/iocoder/yudao/module/bpm/controller/admin/task/vo/instance/BpmApprovalDetailRespVO.java
@@ -73,7 +73,7 @@ public class BpmApprovalDetailRespVO { @@ -73,7 +73,7 @@ public class BpmApprovalDetailRespVO {
73 private List<UserSimpleBaseVO> candidateUsers; // 只包含未生成 ApprovalTaskInfo 的用户列表 73 private List<UserSimpleBaseVO> candidateUsers; // 只包含未生成 ApprovalTaskInfo 的用户列表
74 74
75 @Schema(description = "流程编号", example = "8761d8e0-0922-11f0-bd37-00ff1db677bf") 75 @Schema(description = "流程编号", example = "8761d8e0-0922-11f0-bd37-00ff1db677bf")
76 - private String processInstanceId; // 当且仅当,该节点是子流程节点时,才会有值(CallActivity 的 processInstanceId 字段) 76 + private String processInstanceId; // 当且仅当,该节点是子流程节点时,才会有值(CallActivity 的 calledProcessInstanceId 字段)
77 77
78 } 78 }
79 79
yudao-module-bpm/src/main/java/cn/iocoder/yudao/module/bpm/service/task/BpmProcessInstanceServiceImpl.java
@@ -244,7 +244,7 @@ public class BpmProcessInstanceServiceImpl implements BpmProcessInstanceService @@ -244,7 +244,7 @@ public class BpmProcessInstanceServiceImpl implements BpmProcessInstanceService
244 if (historicProcessInstance == null) { 244 if (historicProcessInstance == null) {
245 throw exception(ErrorCodeConstants.PROCESS_INSTANCE_NOT_EXISTS); 245 throw exception(ErrorCodeConstants.PROCESS_INSTANCE_NOT_EXISTS);
246 } 246 }
247 - // 1.3 校验BpmnModel 247 + // 1.3 校验 BpmnModel
248 BpmnModel bpmnModel = processDefinitionService.getProcessDefinitionBpmnModel(task.getProcessDefinitionId()); 248 BpmnModel bpmnModel = processDefinitionService.getProcessDefinitionBpmnModel(task.getProcessDefinitionId());
249 if (bpmnModel == null) { 249 if (bpmnModel == null) {
250 return null; 250 return null;
@@ -449,7 +449,7 @@ public class BpmProcessInstanceServiceImpl implements BpmProcessInstanceService @@ -449,7 +449,7 @@ public class BpmProcessInstanceServiceImpl implements BpmProcessInstanceService
449 .setNodeType(BpmSimpleModelNodeTypeEnum.CHILD_PROCESS.getType()).setStatus(processInstanceStatus) 449 .setNodeType(BpmSimpleModelNodeTypeEnum.CHILD_PROCESS.getType()).setStatus(processInstanceStatus)
450 .setStartTime(DateUtils.of(activity.getStartTime())) 450 .setStartTime(DateUtils.of(activity.getStartTime()))
451 .setEndTime(DateUtils.of(activity.getEndTime())) 451 .setEndTime(DateUtils.of(activity.getEndTime()))
452 - .setProcessInstanceId(activity.getProcessInstanceId()); 452 + .setProcessInstanceId(activity.getCalledProcessInstanceId());
453 approvalNodes.add(callActivity); 453 approvalNodes.add(callActivity);
454 } 454 }
455 }); 455 });
@@ -521,7 +521,7 @@ public class BpmProcessInstanceServiceImpl implements BpmProcessInstanceService @@ -521,7 +521,7 @@ public class BpmProcessInstanceServiceImpl implements BpmProcessInstanceService
521 activityNode.setCandidateUserIds(CollUtil.sub(candidateUserIds, index + 1, candidateUserIds.size())); 521 activityNode.setCandidateUserIds(CollUtil.sub(candidateUserIds, index + 1, candidateUserIds.size()));
522 } 522 }
523 if (BpmSimpleModelNodeTypeEnum.CHILD_PROCESS.getType().equals(activityNode.getNodeType())) { 523 if (BpmSimpleModelNodeTypeEnum.CHILD_PROCESS.getType().equals(activityNode.getNodeType())) {
524 - activityNode.setProcessInstanceId(firstActivity.getProcessInstanceId()); 524 + activityNode.setProcessInstanceId(firstActivity.getCalledProcessInstanceId());
525 } 525 }
526 return activityNode; 526 return activityNode;
527 }); 527 });