From a5f944c2bc0107e5df936937f1c33e5e03eb8fed Mon Sep 17 00:00:00 2001
From: yangys <y_ys79@sina.com>
Date: 星期六, 06 九月 2025 19:15:48 +0800
Subject: [PATCH] 解锁增加解锁原因和展示

---
 blade-service/blade-mdm/src/main/java/org/springblade/mdm/flow/service/execute/TryFlowCompleteService.java |   25 ++++++++++++++++++++-----
 1 files changed, 20 insertions(+), 5 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 0884332..3ff7c54 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
@@ -4,12 +4,14 @@
 import org.flowable.task.api.Task;
 import org.springblade.core.log.exception.ServiceException;
 import org.springblade.core.secure.utils.AuthUtil;
+import org.springblade.core.tool.api.R;
 import org.springblade.core.tool.support.Kv;
 import org.springblade.core.tool.utils.Func;
 import org.springblade.core.tool.utils.StringUtil;
 import org.springblade.mdm.basesetting.machine.entity.Machine;
 import org.springblade.mdm.basesetting.machine.service.MachineService;
 import org.springblade.mdm.commons.service.ParamService;
+import org.springblade.mdm.commons.service.UserCommonService;
 import org.springblade.mdm.flow.constants.FlowContants;
 import org.springblade.mdm.flow.constants.FlowVariableContants;
 import org.springblade.mdm.flow.service.FlowCommonService;
@@ -34,6 +36,8 @@
 	@Autowired
 	private FlowCommonService flowCommonService;
 	@Autowired
+	private UserCommonService userCommonService;
+	@Autowired
 	private MachineService machineService;
 
 	@Transactional
@@ -47,6 +51,11 @@
 			throw new ServiceException("璇锋寚瀹氭祦绋嬩笅涓�姝ュ鐞嗕汉");
 		}
 
+		// 闈炵┖鍒ゆ柇
+		if (Func.isEmpty(variables)) {
+			variables = Kv.create();
+		}
+
 		if(task.getTaskDefinitionKey().equals("programmingTask") ) {//缂栧埗鑺傜偣
 			//璁板綍瀹為檯缂栫▼鍛�
 			variables.put(FlowVariableContants.ACT_PROGRAMMER,Func.toStr(AuthUtil.getUserId()));
@@ -54,14 +63,16 @@
 			if(this.needUploadProgramFile(props.getMachineCode())) {
 				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"))));
+			}
+
 		}
 		if (StringUtil.isNoneBlank(processInstanceId, comment)) {
 			taskService.addComment(taskId, processInstanceId, comment);
 		}
-		// 闈炵┖鍒ゆ柇
-		if (Func.isEmpty(variables)) {
-			variables = Kv.create();
-		}
+
 		variables.put(FlowContants.LAST_STEP_USER_NICKNAME, AuthUtil.getNickName());
 
 
@@ -70,13 +81,17 @@
 		variables.remove(FlowContants.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);
 	}
 
+
 	/**
 	 * 鏄惁闇�瑕佷笂浼犳枃浠讹紙杞﹀簥涓嶉渶瑕侊級
 	 * @param machineCode 鏈哄簥缂栫爜

--
Gitblit v1.9.3