From 1911be8941e5fe2705c2c56e74e52bd426468793 Mon Sep 17 00:00:00 2001
From: yangys <y_ys79@sina.com>
Date: 星期三, 06 八月 2025 15:26:34 +0800
Subject: [PATCH] 固化流程,建立node;

---
 blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/service/NcNodeService.java |   50 +++++++++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 49 insertions(+), 1 deletions(-)

diff --git a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/service/NcNodeService.java b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/service/NcNodeService.java
index 7ef1b53..cc66a8f 100644
--- a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/service/NcNodeService.java
+++ b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/service/NcNodeService.java
@@ -170,9 +170,57 @@
 
 	}
 
+	/**
+	 * 鏌ヨ鑺傜偣鐨勫巻鍙插垪琛紙鑺傜偣鐨勪笂绾ц妭鐐光�濈▼搴忓寘鍚嶁�滃洜涓哄瓨鍦ㄥ涓増鏈紝鎵�浠ュ巻鍙茶褰曚篃闇�瑕佹牴鎹笉鍚岀増鏈▼搴忓寘鍚嶈繘琛屾煡璇級
+	 * @param id
+	 * @return
+	 */
 	@Transactional(readOnly = true)
     public List<NcNodeVO> historyByNodeId(Long id) {
 		NcNode node = this.getById(id);
-		return this.baseMapper.historyByParentIdAndName(node.getParentId(),node.getName());
+		NcNode parentNode = this.getById(node.getParentId());
+		return this.baseMapper.historyByParentIdAndName(node.getName(),parentNode);
+    }
+
+	/**
+	 * 鑾峰彇鈥滅▼搴忓寘鍚嶁�濈殑鏈�鏂扮増鏈�
+	 * @param name 鑺傜偣鍚嶇О
+	 * @return 鏈�鏂扮増鏈▼搴忔姤鍚嶈妭鐐�
+	 */
+	public NcNode getLastEditionProgramPackage(String name){
+		List<NcNode> pkgList = lambdaQuery().eq(NcNode::getNodeType,NcNode.TYPE_PROGRAM_PACKAGE)
+			.eq(NcNode::getName, name).eq(NcNode::getIsLastEdition,1).orderByDesc(NcNode::getCreateTime).list();
+
+		if(pkgList.isEmpty()){
+			return null;
+		}else{
+			return pkgList.get(0);
+		}
+	}
+
+	/**
+	 * 鏍规嵁鐖惰妭鐐瑰拰鍚嶇О锛屾煡璇㈡枃浠剁晫鑺傜偣鍒楄〃
+	 * @param name 鑺傜偣/鏂囦欢鍚嶇О
+	 * @param parentId 鐖惰妭鐐筰d
+	 */
+    public NcNode getLastEditionProgramFile(String name,Long parentId) {
+		List<NcNode> nodes = lambdaQuery().eq(NcNode::getNodeType,NcNode.TYPE_PROGRAM_FILE)
+			.eq(NcNode::getName, name).eq(NcNode::getParentId,parentId)
+			.eq(NcNode::getIsLastEdition,1).list();
+		if(nodes.isEmpty()){
+			return null;
+		}else {
+			return nodes.get(0);
+		}
+	}
+
+	/**
+	 * 鑾峰彇node鐨勫巻鍙插垪琛�(鍚屼竴涓埗鑺傜偣涓嬶紝鍚屽悕鐨勬墍鏈夎妭鐐癸級
+	 * @param pkgNode node
+	 * @return 鍘嗗彶鍒楄〃锛屾姤閿欒妭鐐规湰韬�
+	 */
+    public List<NcNode> getNodeHistorys(NcNode pkgNode) {
+		return this.lambdaQuery().eq(NcNode::getParentId,pkgNode.getParentId())
+			.eq(NcNode::getName,pkgNode.getName()).list();
     }
 }

--
Gitblit v1.9.3