feat(REQ-2752) - 完善旧版本实例中,发起人名称可能为空的情况

This commit is contained in:
wangli 2024-10-15 22:21:52 +08:00
parent 7f3d00187e
commit fb691ff7b4

View File

@ -11,6 +11,7 @@ import cn.axzo.workflow.core.service.BpmnProcessInstanceForEsService;
import cn.axzo.workflow.es.model.ProcessInstanceDocument;
import cn.axzo.workflow.es.model.ProcessTaskDocument;
import cn.axzo.workflow.es.service.EsProcessInstanceService;
import cn.hutool.core.util.NumberUtil;
import com.google.common.collect.Lists;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
@ -80,7 +81,11 @@ public class AggregateProcessInstanceService {
BpmnTaskDelegateAssigner initiator = BpmnTaskDelegateAssigner.toObjectCompatible(variables.getOrDefault(INTERNAL_INITIATOR, variables.getOrDefault(OLD_INTERNAL_INITIATOR, null)));
if (Objects.nonNull(initiator)) {
processInstanceDocument.setInitiatorName(initiator.getAssignerName());
BpmnTaskDelegateAssigner fullAssigner = null;
if (Objects.nonNull(function) && !StringUtils.hasText(initiator.getAssignerName()) && NumberUtil.isNumber(initiator.getPersonId())) {
fullAssigner = function.apply(Lists.newArrayList(initiator)).getOrDefault(Long.parseLong(initiator.getPersonId()), null);
}
processInstanceDocument.setInitiatorName(Objects.nonNull(fullAssigner) ? fullAssigner.getAssignerName() : StringUtils.hasText(initiator.getAssignerName()) ? initiator.getAssignerName() : "未知");
}
processInstanceDocument.setWorkflowEngineVersion(String.valueOf(variables.getOrDefault(WORKFLOW_ENGINE_VERSION, FLOW_SERVER_VERSION_121)));
processInstanceDocument.setProcessCategoryType(WorkspaceType.getType((Integer) variables.getOrDefault(INTERNAL_PROCESS_WORKSPACE_TYPE, WorkspaceType.UN_KNOW.getCode())).getDesc());