From 33e6270d2d3a40591e58d45fd8435d2f3eaf66b2 Mon Sep 17 00:00:00 2001
From: yangys <y_ys79@sina.com>
Date: 星期四, 14 八月 2025 11:02:56 +0800
Subject: [PATCH] 启动固化流程优化
---
blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/service/NcNodeService.java | 45 +++++++++++++++++++++++++++++++++++++++++++--
1 files changed, 43 insertions(+), 2 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 05f5f1f..4255df9 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
@@ -158,7 +158,9 @@
* @return 绋嬪簭鎶ュ寘鍚嶇殑鑺傜偣
*/
public NcNode getProgramPackageByName(String programName) {
- List<NcNode> pkgs = this.lambdaQuery().eq(NcNode::getName, programName).eq(NcNode::getNodeType,NcNode.TYPE_PROGRAM_PACKAGE).list();
+ List<NcNode> pkgs = this.lambdaQuery().eq(NcNode::getName, programName)
+ .eq(NcNode::getIsLastEdition,1)
+ .eq(NcNode::getNodeType,NcNode.TYPE_PROGRAM_PACKAGE).list();
if(pkgs.isEmpty()){
return null;
}else{
@@ -242,7 +244,24 @@
*/
public NcNode getLastEditionCuredProgramPackage(String programPkgName) {
List<NcNode> nodes = lambdaQuery().eq(NcNode::getNodeType,NcNode.TYPE_PROGRAM_PACKAGE)
- .eq(NcNode::getName, programPkgName).eq(NcNode::getIsCured,1)
+ .eq(NcNode::getName, programPkgName).likeRight(NcNode::getParentIds,"0,2,").eq(NcNode::getIsCured,1)
+ .eq(NcNode::getIsLastEdition,1).list();
+
+ if(nodes.isEmpty()){
+ return null;
+ }else {
+ return nodes.get(0);
+ }
+ }
+
+ /**
+ * 鑾峰彇鏈�鏂扮増鏈殑 鍋忕鑺傜偣
+ * @param programPkgName 绋嬪簭鍖呭悕
+ * @return 鍋忕鐨勭▼搴忚妭鐐�
+ */
+ public NcNode getLastEditionDeviationProgramPackage(String programPkgName) {
+ List<NcNode> nodes = lambdaQuery().eq(NcNode::getNodeType,NcNode.TYPE_PROGRAM_PACKAGE)
+ .eq(NcNode::getName, programPkgName).likeRight(NcNode::getParentIds,"0,3,")
.eq(NcNode::getIsLastEdition,1).list();
if(nodes.isEmpty()){
@@ -269,4 +288,26 @@
public void deleteSubNodes(Long nodeId) {
this.baseMapper.deleteSubNodes(nodeId);
}
+
+ /**
+ * 鑾峰彇绋嬪簭鍖呬笅鎵�鏈夊眰搴忔枃浠惰妭鐐�
+ * @param packageNodeId 绋嬪簭鍖呭悕 鑺傜偣id
+ * @return 鍖呬笅灞炵殑绋嬪簭鏂囦欢
+ */
+ public List<NcNode> getProgramFilesByPackageId(Long packageNodeId) {
+ return this.lambdaQuery().eq(NcNode::getNodeType,NcNode.TYPE_PROGRAM_FILE)
+ .eq(NcNode::getParentId,packageNodeId).eq(NcNode::getIsLastEdition,1).list();
+ }
+
+ /**
+ * 鍗囩骇鐗堟湰鍙凤紙+1锛�
+ * @param nodeId 鑺傜偣id
+ */
+ @Transactional
+ public void upgradeVersionNumber(Long nodeId) {
+ NcNode node = this.getById(nodeId);
+ node.upgradeVersionNUmber();
+ this.updateById(node);
+
+ }
}
--
Gitblit v1.9.3