From 3907579a69079b5ee462d17799e3995d9cd77fd4 Mon Sep 17 00:00:00 2001
From: yangys <y_ys79@sina.com>
Date: 星期三, 17 九月 2025 21:54:38 +0800
Subject: [PATCH] 延时问题

---
 blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/service/NcProgramExportDNCService.java |   15 ++++++++++++++-
 1 files changed, 14 insertions(+), 1 deletions(-)

diff --git a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/service/NcProgramExportDNCService.java b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/service/NcProgramExportDNCService.java
index d696db6..1248513 100644
--- a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/service/NcProgramExportDNCService.java
+++ b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/service/NcProgramExportDNCService.java
@@ -6,11 +6,14 @@
 import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.io.FilenameUtils;
 import org.apache.commons.lang3.StringUtils;
+import org.flowable.engine.HistoryService;
+import org.flowable.engine.history.HistoricProcessInstance;
 import org.springblade.core.log.exception.ServiceException;
 import org.springblade.core.mp.base.BizServiceImpl;
 import org.springblade.core.oss.OssTemplate;
 import org.springblade.mdm.basesetting.machine.service.MachineService;
 import org.springblade.mdm.basesetting.machine.entity.Machine;
+import org.springblade.mdm.flow.constants.FlowContants;
 import org.springblade.mdm.flow.entity.FlowProgramFile;
 import org.springblade.mdm.flow.service.FlowProgramFileService;
 import org.springblade.mdm.program.entity.NcNode;
@@ -48,7 +51,7 @@
 	private final NcNodeHisService ncNodeHisService;
 	private final OssTemplate ossTemplate;
 	private final FlowProgramFileService flowProgramFileService;
-	private final ProgramAnnotationService programAnnotationService;
+	private final HistoryService historyService;
 
 	private final MachineAnnotationConfig annotationConfig;
 	/**
@@ -65,6 +68,16 @@
 
 				approved.setStatus(NcProgramApproved.STATUS_EXPORTED);
 				approvedService.updateById(approved);
+
+				NcNode pkgNode = this.ncNodeService.getById(approved.getNcNodeId());
+				if(pkgNode.isDeviationProgram()){
+					//鍋忕鍗曠殑绋嬪簭锛屽鏋滃鎵瑰鍑鸿褰曟槸瑙i攣褰㈡垚鐨勶紝杩樻槸闇�瑕侀攣瀹氾紱鏅�氳瘯鍒囪繃鐨勶紝涓嶉攣瀹�
+					HistoricProcessInstance hisInst = historyService.createHistoricProcessInstanceQuery().processInstanceId(approved.getProcessInstanceId()).singleResult();
+					if(hisInst != null && hisInst.getProcessDefinitionKey().equals(FlowContants.UNLOCK_PROCESS_KEY)){
+						pkgNode.lock("涓嬪彂瀵煎嚭閿佸畾");
+						ncNodeService.updateById(pkgNode);
+					}
+				}
 			}
 
 		}catch(Exception e){

--
Gitblit v1.9.3