From 7bc1d0f521c1d59246f29bcadcc4343f88ceef1c Mon Sep 17 00:00:00 2001
From: yangys <y_ys79@sina.com>
Date: 星期一, 15 九月 2025 11:29:30 +0800
Subject: [PATCH] 性能优化+bug调整
---
blade-service/blade-mdm/src/main/java/org/springblade/mdm/flow/service/execute/TryFlowCompleteService.java | 34 +++++++++++++++++++---------------
1 files changed, 19 insertions(+), 15 deletions(-)
diff --git a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/flow/service/execute/TryFlowCompleteService.java b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/flow/service/execute/TryFlowCompleteService.java
index 7fb183e..acd1439 100644
--- a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/flow/service/execute/TryFlowCompleteService.java
+++ b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/flow/service/execute/TryFlowCompleteService.java
@@ -17,8 +17,6 @@
import org.springblade.mdm.flow.service.FlowCommonService;
import org.springblade.mdm.flow.service.FlowProgramFileService;
import org.springblade.mdm.flow.service.FlowProgramProperties;
-import org.springblade.system.feign.IUserClient;
-import org.springblade.system.pojo.entity.User;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
@@ -46,6 +44,11 @@
@Override
public void completeTask(String taskId, String processInstanceId, String comment, Map<String, Object> variables) {
Task task = currentTask(taskId);
+
+ // 闈炵┖鍒ゆ柇
+ if (Func.isEmpty(variables)) {
+ variables = Kv.create();
+ }
String operateResult = this.getApproveResult(variables);
FlowProgramProperties props = flowCommonService.getProgramProperties(processInstanceId);
@@ -53,37 +56,38 @@
throw new ServiceException("璇锋寚瀹氭祦绋嬩笅涓�姝ュ鐞嗕汉");
}
- // 闈炵┖鍒ゆ柇
- if (Func.isEmpty(variables)) {
- variables = Kv.create();
- }
-
if(task.getTaskDefinitionKey().equals("programmingTask") ) {//缂栧埗鑺傜偣
//璁板綍瀹為檯缂栫▼鍛�
variables.put(FlowVariableContants.ACT_PROGRAMMER,Func.toStr(AuthUtil.getUserId()));
-
- if(this.needUploadProgramFile(props.getMachineCode())) {
+ String programOnMachine = Func.toStr(variables.getOrDefault("programOnMachine",FlowContants.N));//鏄惁鐜板満缂栫▼
+ if(this.needUploadProgramFile(props.getMachineCode()) && programOnMachine.equals(FlowContants.N)) {
flowProgramFileService.checkProgramFiles(processInstanceId, FlowContants.Y.equals(operateResult));
}
}else if(task.getTaskDefinitionKey().equals("teamLeaderTask")){
if(FlowContants.Y.equals(operateResult)) {
runtimeService.setVariable(task.getExecutionId(),FlowContants.PROGRAMMER_NAME,userCommonService.getUserNameById(Func.toLong(variables.get("assignee"))));
}
-
+ }else if(task.getTaskDefinitionKey().equals("check")){
+ variables.put(FlowVariableContants.ACT_CHECKER,Func.toStr(AuthUtil.getUserId()));
+ }else if(task.getTaskDefinitionKey().equals("approveTask")){
+ variables.put(FlowVariableContants.ACT_SENIOR,Func.toStr(AuthUtil.getUserId()));
}
+ variables.remove("programOnMachine");//鍏朵粬鑺傜偣锛屽拷鐣ョ幇鍦虹紪绋嬫爣璁�
if (StringUtil.isNoneBlank(processInstanceId, comment)) {
taskService.addComment(taskId, processInstanceId, comment);
}
- variables.put(FlowContants.LAST_STEP_USER_NICKNAME, AuthUtil.getNickName());
+ variables.put(FlowVariableContants.LAST_STEP_USER_NICKNAME, AuthUtil.getNickName());
-
- addApproveRecord(taskId,comment,variables);
-
- variables.remove(FlowContants.PROCESS_EDITION);//涓嶈鍗囩増浜�
+ variables.remove(FlowVariableContants.PROCESS_EDITION);//涓嶈鍗囩増浜�
if("confirmIsUseableTask".equals(task.getTaskDefinitionKey())){
variables.put(FlowContants.CURE_PROGRAM_USEABLE,operateResult);
+
+ if(FlowContants.Y.equals(operateResult)) {
+ //鍒ゅ畾鍙敤锛岃褰曚负瀹為檯缂栫▼鍛�
+ variables.put(FlowVariableContants.ACT_PROGRAMMER,Func.toStr(AuthUtil.getUserId()));
+ }
}
taskService.complete(taskId, variables);
}
--
Gitblit v1.9.3