From ddafa0375398053baaafdee8612f68c1b75ff7cb Mon Sep 17 00:00:00 2001
From: yangys <y_ys79@sina.com>
Date: 星期五, 22 八月 2025 13:37:54 +0800
Subject: [PATCH] 机床导入1
---
blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/service/NcNodeAutoCreateService.java | 43 ++++++++++++++++++++++++++++++++-----------
1 files changed, 32 insertions(+), 11 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 a5f6008..9f93f02 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
@@ -40,7 +40,6 @@
*/
@Transactional
public NcNode createNodeTreeToMachine(FlowProgramProperties programProperties) {
-
NcNode root;
if(programProperties.getProcessDefinitionKey().equals(FlowContants.TRY_PROCESS_KEY)){
if(Func.isEmpty(programProperties.getDeviation())){
@@ -69,9 +68,9 @@
//闆剁粍浠跺彿鑺傜偣
NcNode drawingNoNode = createNodeIfNotExists(programProperties.getDrawingNo(),NcNode.TYPE_DRAWING_NO, productModelNode,programProperties);
//宸ヨ壓鐗堟鑺傜偣
- NcNode craftEditionNode = createNodeIfNotExists(programProperties.getCraftEdition(),NcNode.TYPE_CRAFT_EDITION, drawingNoNode,programProperties);
+ //NcNode craftEditionNode = createNodeIfNotExists(programProperties.getCraftEdition(),NcNode.TYPE_CRAFT_EDITION, drawingNoNode,programProperties);
//宸ュ簭鍙疯妭
- NcNode processNoNode = createNodeIfNotExists(programProperties.getProcessNo(),NcNode.TYPE_PROCESS_NO, craftEditionNode,programProperties);
+ NcNode processNoNode = createNodeIfNotExists(programProperties.getProcessNo(),NcNode.TYPE_PROCESS_NO, drawingNoNode,programProperties);
//宸ュ簭鐗堟鑺傜偣
NcNode processEditionNode = createNodeIfNotExists(programProperties.getProcessEdition(),NcNode.TYPE_PROCESS_EDITION, processNoNode,programProperties);
//鍔犲伐鏈哄簥鑺傜偣
@@ -91,11 +90,16 @@
List<FlowProgramFile> programFiles = flowProgramFileService.lambdaQuery().eq(FlowProgramFile::getProcessInstanceId, programProperties.getProcessInstanceId()).list();
for (FlowProgramFile programFile : programFiles) {
- createProgramFileNode(programFile, programPkdNode, programProperties);
+ createProgramFileNode(programFile, programPkdNode, programProperties);//鎵�鏈夋枃浠跺寘鎷▼搴忓拰鍏朵粬锛岄兘闇�瑕佸缓绔嬭妭鐐�
+ //if(programFile.isProgram()) {
+
+ //}
}
-
+ createOtherNode(programFiles);
}
-
+ void createOtherNode(List<FlowProgramFile> programFiles){
+//111mqita 鑺傜偣
+ }
/**
* 寤虹珛绋嬪簭鏂囦欢鑺傜偣
* @param programFile 娴佺▼鏂囦欢
@@ -108,8 +112,7 @@
NcNode node = new NcNode();
node.setNodeType(NcNode.TYPE_PROGRAM_FILE);
node.setName(programFile.getName());//鏂囦欢鍚嶏紝
- node.setParentId(programPkdNode.getId());
- node.setParentIds(programPkdNode.getParentIds()+","+programPkdNode.getId());
+
node.setIsLastEdition(1);
node.setDrawingNo(programPkdNode.getDrawingNo());
node.setDrawingNoEdition(programProperties.getDrawingNoEdition());
@@ -121,6 +124,16 @@
node.setProductModel(programProperties.getProductModel());
node.setFlowProgramFileId(programFile.getId());
node.setVersionNumber(1);
+ node.setParentId(programPkdNode.getId());
+ node.setParentIds(programPkdNode.getParentIds()+","+programPkdNode.getId());
+ /*
+ if("program".equals(programFile.getFileType())){
+
+ }else{
+ //鍏朵粬鏂囦欢锛屽拰绋嬪簭鍖呭悕鍚岀骇骞跺垪
+
+ }*/
+
ncNodeService.save(node);
}
@@ -132,8 +145,17 @@
@Transactional
public NcNode createTreeToPackage(FlowProgramProperties programProperties) {
NcNode machineCodeNode = createNodeTreeToMachine(programProperties);
+ NcNode processEditionNode = this.ncNodeService.getById(machineCodeNode.getParentId());
+ //鑾峰彇宸ュ簭鐗堟涓嬪叾浠栨満搴婂悕锛屽瓨鍦ㄥ垯鍒犻櫎
+ ncNodeService.lambdaUpdate().eq(NcNode::getNodeType,NcNode.TYPE_MACHINE_CODE)
+ .eq(NcNode::getParentId,processEditionNode.getId()).eq(NcNode::getIsLastEdition,1)
+ .ne(NcNode::getName,machineCodeNode.getName()).remove();
+
+ //淇濇寔鍔犲伐鏈哄簥鏄渶鏂颁笅鍙戜换鍔$殑鏈哄簥锛屼笉鏄柊寤轰竴涓満搴婅妭鐐癸紝鎻掑彊宸ュ簭鐗堟涓嬫槸鍚︽湁鍏朵粬鐨勬満搴婏紙闆朵欢鍙蜂竴鑷达紝宸ュ簭鍙凤紝宸ュ簭鐗堟涓�鑷达級
+ //鑾峰彇
+ //鍔犲伐鏈哄簥鍜岀▼搴忓寘鍚嶅湪鍚屼竴绾ц妭鐐�,鍚屽湪宸ュ簭鐗堟涓嬬骇
String programPkgName = NcNodeService.genProgramName(programProperties.getDrawingNo(),programProperties.getProcessNo());
- return createNodeIfNotExists(programPkgName ,NcNode.TYPE_PROGRAM_PACKAGE, machineCodeNode,programProperties);
+ return createNodeIfNotExists(programPkgName ,NcNode.TYPE_PROGRAM_PACKAGE, processEditionNode,programProperties);
}
@@ -143,7 +165,7 @@
* @param nodeType 鑺傜偣绫诲瀷
* @param parentNode 鐖惰妭鐐�
* @param programProperties 娴佺▼绋嬪簭灞炴��
- * @return
+ * @return 鍒涘缓鎴栧凡瀛樺湪鐨勮妭鐐规垨
*/
NcNode createNodeIfNotExists(String name,String nodeType,NcNode parentNode,FlowProgramProperties programProperties) {
Optional<NcNode> nodeOpt = this.ncNodeService.lambdaQuery().eq(NcNode::getName,name).eq(NcNode::getNodeType,nodeType)
@@ -174,7 +196,6 @@
ncNode.setProductModel(programProperties.getProductModel());
ncNode.setDeviation(programProperties.getDeviation());
- //ncNode.setMachineMode(programProperties.getMachineMode());
}
ncNode.setIsLastEdition(1);
--
Gitblit v1.9.3