From a78216b8655bbfd4d70577d21729e9741eb021d5 Mon Sep 17 00:00:00 2001 From: weidy <lastanimals@163.com> Date: 星期三, 05 七月 2023 17:25:15 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- Source/UBCS/ubcs-ops/ubcs-flow/src/main/java/com/vci/ubcs/flow/engine/service/impl/VCIFlowserviceImpl.java | 19 ++++++++++++++++++- 1 files changed, 18 insertions(+), 1 deletions(-) diff --git a/Source/UBCS/ubcs-ops/ubcs-flow/src/main/java/com/vci/ubcs/flow/engine/service/impl/VCIFlowserviceImpl.java b/Source/UBCS/ubcs-ops/ubcs-flow/src/main/java/com/vci/ubcs/flow/engine/service/impl/VCIFlowserviceImpl.java index 0fde0f7..b01bb9d 100644 --- a/Source/UBCS/ubcs-ops/ubcs-flow/src/main/java/com/vci/ubcs/flow/engine/service/impl/VCIFlowserviceImpl.java +++ b/Source/UBCS/ubcs-ops/ubcs-flow/src/main/java/com/vci/ubcs/flow/engine/service/impl/VCIFlowserviceImpl.java @@ -16,12 +16,14 @@ */ package com.vci.ubcs.flow.engine.service.impl; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.vci.ubcs.flow.core.constant.ProcessConstant; import com.vci.ubcs.flow.core.entity.BladeFlow; import com.vci.ubcs.flow.core.utils.TaskUtil; import com.vci.ubcs.flow.engine.entity.*; import com.vci.ubcs.flow.engine.service.FlowEngineService; import com.vci.ubcs.flow.engine.service.FlowTaskUserService; +import com.vci.ubcs.flow.engine.service.ProcessStageAttrService; import com.vci.ubcs.flow.engine.service.VICFlowService; import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; @@ -33,6 +35,7 @@ import org.flowable.engine.runtime.ProcessInstance; import org.flowable.task.api.Task; import org.springblade.core.log.exception.ServiceException; +import org.springblade.core.mp.support.Condition; import org.springblade.core.secure.utils.AuthUtil; import org.springblade.core.tool.api.R; import org.springblade.core.tool.support.Kv; @@ -56,8 +59,11 @@ private final FlowTaskUserService flowTaskUserService; private final FlowEngineService flowEngineService; private final HistoryService historyService; + private final ProcessStageAttrService processStageAttrService; private static String MODELKEY = "modelKey";//鍓嶇浼犺繃鏉ョ殑妯″瀷key + private static String TASKID = "taskId";//鍓嶇浼犺繃鏉ョ殑妯″瀷key + private static String PROCESSINSTANCEID = "processInstanceId";//鍓嶇浼犺繃鏉ョ殑妯″瀷key @Override public R<BladeFlow> startProcess(FlowTaskDTO flowTaskUserC){ Map<String, Object> kvv = flowTaskUserC.getVariables(); @@ -192,7 +198,7 @@ for (FlowTaskDTO flowTaskUserCi:mis){ if(taskId.equals(flowTaskUserCi.getTaskId())){ flowTaskUserCi.setCondition(conditionExpression); - if(conditionExpression.split("=").length>1) { + if(conditionExpression.contains("=")||conditionExpression.contains("<")||conditionExpression.contains(">")) { conditionExpression = conditionExpression.replace("${","").replace("}","").replaceAll("\"",""); String[] conditionExpressionStr = conditionExpression.split("=="); if(conditionExpression.contains("<")){ @@ -217,6 +223,17 @@ } } } + + //娴佺▼甯搁噺 + Map<String,Object> variables = runtimeService.getVariables(processInstanceId); + if(!variables.isEmpty()){ + flowTaskDTO.setVariables(variables); + } + + + //鏀惧叆娴佺▼闃舵銆佹祦绋媘odelkey + variables.put(TASKID,crruentActivityId); + variables.put(PROCESSINSTANCEID,processInstanceId); return flowTaskDTO; } } -- Gitblit v1.9.3