From 1f0a10ab714699acc85430b90bcb5a1eeaad1eec Mon Sep 17 00:00:00 2001
From: xiejun <xj@2023>
Date: 星期一, 17 七月 2023 10:14:45 +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 |   21 ++++++++++++++++++++-
 1 files changed, 20 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..4a1ea85 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,16 @@
  */
 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.dto.FlowTaskDTO;
 import com.vci.ubcs.flow.core.entity.BladeFlow;
+import com.vci.ubcs.flow.core.entity.FlowTaskUser;
 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 +37,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 +61,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 +200,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 +225,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