From f77951077aa87daae6460c0161868bd5661efb2f Mon Sep 17 00:00:00 2001
From: yangys <y_ys79@sina.com>
Date: 星期六, 16 八月 2025 14:16:52 +0800
Subject: [PATCH] bug修复

---
 blade-service/blade-mdm/src/main/java/org/springblade/mdm/flow/service/ReplaceFlowService.java |   17 +++++++++++++++++
 1 files changed, 17 insertions(+), 0 deletions(-)

diff --git a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/flow/service/ReplaceFlowService.java b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/flow/service/ReplaceFlowService.java
index a44762d..e3c53f1 100644
--- a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/flow/service/ReplaceFlowService.java
+++ b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/flow/service/ReplaceFlowService.java
@@ -23,6 +23,7 @@
 import org.springblade.mdm.program.entity.NcNode;
 import org.springblade.mdm.program.service.NcNodeService;
 import org.springblade.mdm.program.service.NodeDeptQueryService;
+import org.springblade.mdm.program.service.ProgramFlowStatusQueryService;
 import org.springblade.mdm.program.vo.NcNodeVO;
 import org.springblade.mdm.utils.EntityUtil;
 import org.springblade.mdm.utils.ProgramFileNameCheckUtil;
@@ -47,6 +48,7 @@
 	private final IdentityService identityService;
 	private final FlowProgramFileService flowProgramFileService;
 	private final ReplaceProgramFileService replaceProgramFileService;
+	private final ProgramFlowStatusQueryService flowStatusQueryService;
 	private final NodeDeptQueryService nodeDeptQueryService;
 	private OssTemplate ossTemplate;
 	public static final String NODE_ID = "nodeId";
@@ -79,8 +81,15 @@
 
 	 */
 
+	/**
+	 * 鍑嗗鏇挎崲娴佺▼闇�瑕佺殑鏁版嵁
+	 * @param nodeId 瑕佹浛鎹㈢殑绋嬪簭鍖呭悕鑺傜偣id
+	 * @param tempInstanceId 涓存椂娴佺▼瀹炰緥id锛岀敤浜庢柊鐨勬枃浠�
+	 * @return 鍚姩鏁版嵁
+	 */
 	@Transactional
 	public NcNodeVO pre(long nodeId, String tempInstanceId) {
+		checkFlowStatus(nodeId);
 
 		List<NcNode> fileNodes = nodeService.lambdaQuery()
 			.eq(NcNode::getParentId, nodeId)
@@ -113,6 +122,14 @@
 		return vo;
 	}
 
+	void checkFlowStatus(long nodeId) {
+		NcNode packageNode = nodeService.getById(nodeId);
+		int status = flowStatusQueryService.queryFlowStatus(packageNode.getProcessInstanceId());
+		if (status == 1) {
+			throw new ServiceException("绋嬪簭鐨勬祦绋嬫鍦ㄨ繘琛屼腑锛屼笉鑳借繘琛屾浛鎹�");
+		}
+	}
+
 	/**
 	 * 鍚姩鏇挎崲娴佺▼
 	 */

--
Gitblit v1.9.3