gaoluyang
5 天以前 defe1e1c3ade87de0a7990f565f08f93aeb2decc
yudao-module-bpm/src/main/java/cn/iocoder/yudao/module/bpm/service/task/BpmProcessInstanceServiceImpl.java
@@ -5,6 +5,7 @@
import cn.hutool.core.convert.Convert;
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.lang.Assert;
import cn.hutool.core.map.MapUtil;
import cn.hutool.core.util.*;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.common.util.date.DateUtils;
@@ -844,10 +845,8 @@
        validateStartUserSelectAssignees(userId, definition, startUserSelectAssignees, variables);
        // 2. 创建流程实例
        if (variables == null) {
            variables = new HashMap<>();
        }
        FlowableUtils.filterProcessInstanceFormVariable(variables); // 过滤一下,避免 ProcessInstance 系统级的变量被占用
        variables = FlowableUtils.filterProcessInstanceFormVariable(
                variables == null ? new HashMap<>() : variables); // 复制并过滤,避免修改调用方的变量
        variables.put(BpmnVariableConstants.PROCESS_INSTANCE_VARIABLE_START_USER_ID, userId); // 设置流程变量,发起人 ID
        variables.put(BpmnVariableConstants.PROCESS_INSTANCE_VARIABLE_STATUS, // 流程实例状态:审批中
                BpmProcessInstanceStatusEnum.RUNNING.getStatus());
@@ -914,6 +913,11 @@
        }
        BpmModelMetaInfoVO.TitleSetting titleSetting = definitionInfo.getTitleSetting();
        if (titleSetting == null || !BooleanUtil.isTrue(titleSetting.getEnable())) {
            String businessNo = MapUtil.getStr(variables,
                    BpmnVariableConstants.PROCESS_INSTANCE_VARIABLE_BUSINESS_NO);
            if (StrUtil.isNotBlank(businessNo)) {
                return definition.getName() + "-" + businessNo;
            }
            return definition.getName();
        }
        AdminUserRespDTO user = adminUserApi.getUser(userId);