From a638cb450abb78346ecf19754b639fc945bc486b Mon Sep 17 00:00:00 2001
From: yangys <y_ys79@sina.com>
Date: 星期日, 10 八月 2025 19:21:16 +0800
Subject: [PATCH] zip包判断修复
---
blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/service/NcNodeAutoCreateService.java | 51 ++++++++++++++++++++++++++++++++++-----------------
1 files changed, 34 insertions(+), 17 deletions(-)
diff --git a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/service/NcNodeAutoCreateService.java b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/service/NcNodeAutoCreateService.java
index 8bdaa71..a5f6008 100644
--- a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/service/NcNodeAutoCreateService.java
+++ b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/service/NcNodeAutoCreateService.java
@@ -3,6 +3,8 @@
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
+import org.springblade.core.log.exception.ServiceException;
+import org.springblade.core.tool.utils.Func;
import org.springblade.mdm.flow.constants.FlowContants;
import org.springblade.mdm.flow.entity.FlowProgramFile;
import org.springblade.mdm.flow.service.FlowCommonService;
@@ -30,21 +32,29 @@
private final ProgramSeqService programSeqService;
public static final String TRY_NAME = "璇曞垏";
public static final String CURE_NAME = "鍥哄寲";
- public static final String PIANLI_NAME = "鍋忕";
+ public static final String DEVIATION_NAME = "鍋忕";
/**
* 鍒涘缓鏍戝埌鏈哄簥绾у埆
- * @param programProperties
+ * @param programProperties 绋嬪簭灞炴��
*/
@Transactional
public NcNode createNodeTreeToMachine(FlowProgramProperties programProperties) {
NcNode root;
if(programProperties.getProcessDefinitionKey().equals(FlowContants.TRY_PROCESS_KEY)){
- //璇曞垏
- root = rootNodeByName(TRY_NAME);
- if(root == null){
- root = createTryNode();
+ if(Func.isEmpty(programProperties.getDeviation())){
+ //璇曞垏
+ root = rootNodeByName(TRY_NAME);
+ if (root == null) {
+ root = createTryNode();
+ }
+ }else{
+ //鏈夊亸绂�
+ root = rootNodeByName(DEVIATION_NAME);
+ if(root == null){
+ root = createDeviationNode();
+ }
}
}else if(programProperties.getProcessDefinitionKey().equals(FlowContants.CURE_PROCESS_KEY)){
root = rootNodeByName(CURE_NAME);
@@ -52,13 +62,8 @@
root = createCureNode();
}
}else{
- root = rootNodeByName(PIANLI_NAME);
- if(root == null){
- root = createPianliNode();
- }
+ throw new ServiceException("娴佺▼瀹氫箟涓嶅湪鑼冨洿鍐�");
}
-
- NcNode lastNode = null;
//鍒涘缓浜у搧鍨嬪彿鑺傜偣
NcNode productModelNode = createNodeIfNotExists(programProperties.getProductModel(),NcNode.TYPE_PRODUCT_MODEL, root,programProperties);
//闆剁粍浠跺彿鑺傜偣
@@ -81,7 +86,8 @@
//,int rootNodeCatgory = 1:璇曞垏锛�2鍥哄寲锛�3鍋忕
NcNode programPkdNode = createTreeToPackage(programProperties);
//鍒犻櫎涔嬪墠鍒涘缓杩囩殑绋嬪簭鏂囦欢鑺傜偣(鍥犱负閲嶅鍦ㄧ紪鍒惰妭鐐瑰鎵�)锛岄伩鍏嶉噸澶嶆暟鎹�
- this.ncNodeService.lambdaUpdate().eq(NcNode::getParentId, programPkdNode.getId()).remove();
+ //this.ncNodeService.lambdaUpdate().eq(NcNode::getParentId, programPkdNode.getId()).remove();
+ ncNodeService.deleteSubNodes(programPkdNode.getId());
List<FlowProgramFile> programFiles = flowProgramFileService.lambdaQuery().eq(FlowProgramFile::getProcessInstanceId, programProperties.getProcessInstanceId()).list();
for (FlowProgramFile programFile : programFiles) {
@@ -90,6 +96,12 @@
}
+ /**
+ * 寤虹珛绋嬪簭鏂囦欢鑺傜偣
+ * @param programFile 娴佺▼鏂囦欢
+ * @param programPkdNode 绋嬪簭鍖呭悕 鑺傜偣锛岀▼搴忚妭鐐圭殑 涓婄骇
+ * @param programProperties 娴佺▼鍙戣捣鐨勭▼搴忕殑灞炴��
+ */
private void createProgramFileNode(FlowProgramFile programFile, NcNode programPkdNode, FlowProgramProperties programProperties) {
//姝ゅ搴旈伩鍏嶉噸澶嶅垱寤�
@@ -114,9 +126,10 @@
/**
* 鍒涘缓鑺傜偣鍒扮▼搴忓寘绾у埆
- * @param programProperties
- * @return
+ * @param programProperties 绋嬪簭灞炴��
+ * @return 绋嬪簭鍖呭悕鑺傜偣锛堟渶鏈骇锛�
*/
+ @Transactional
public NcNode createTreeToPackage(FlowProgramProperties programProperties) {
NcNode machineCodeNode = createNodeTreeToMachine(programProperties);
String programPkgName = NcNodeService.genProgramName(programProperties.getDrawingNo(),programProperties.getProcessNo());
@@ -160,6 +173,8 @@
ncNode.setMachineCode(programProperties.getMachineCode());
ncNode.setProductModel(programProperties.getProductModel());
+ ncNode.setDeviation(programProperties.getDeviation());
+ //ncNode.setMachineMode(programProperties.getMachineMode());
}
ncNode.setIsLastEdition(1);
@@ -207,10 +222,10 @@
return ncNode;
}
- NcNode createPianliNode() {
+ NcNode createDeviationNode() {
NcNode ncNode = new NcNode();
ncNode.setId(3L);
- ncNode.setName(PIANLI_NAME);
+ ncNode.setName(DEVIATION_NAME);
ncNode.setParentId(0L);
ncNode.setParentIds("0");
ncNode.setNodeType("10");
@@ -219,4 +234,6 @@
return ncNode;
}
+
+
}
--
Gitblit v1.9.3