From fe185a5eb4669e925af908153bdf21778551fdb4 Mon Sep 17 00:00:00 2001
From: yangys <y_ys79@sina.com>
Date: 星期三, 20 八月 2025 20:23:36 +0800
Subject: [PATCH] 增加固化流程文件内容比对接口

---
 blade-service/blade-mdm/src/main/java/org/springblade/mdm/gkw/programnode/controller/ProgramNodeController.java |    9 ----
 blade-service/blade-mdm/src/main/java/org/springblade/mdm/flow/controller/FlowFileController.java               |   62 +++++++++++++++++++++++++++++++
 blade-service/blade-mdm/src/main/java/org/springblade/mdm/flow/service/CureFlowService.java                     |    2 
 3 files changed, 63 insertions(+), 10 deletions(-)

diff --git a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/flow/controller/FlowFileController.java b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/flow/controller/FlowFileController.java
new file mode 100644
index 0000000..afca5c4
--- /dev/null
+++ b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/flow/controller/FlowFileController.java
@@ -0,0 +1,62 @@
+
+package org.springblade.mdm.flow.controller;
+
+import io.swagger.v3.oas.annotations.Operation;
+import io.swagger.v3.oas.annotations.Parameter;
+import io.swagger.v3.oas.annotations.tags.Tag;
+import lombok.AllArgsConstructor;
+import lombok.extern.slf4j.Slf4j;
+import org.apache.tika.utils.StringUtils;
+import org.springblade.core.tenant.annotation.NonDS;
+import org.springblade.core.tool.api.R;
+import org.springblade.core.tool.utils.Func;
+import org.springblade.mdm.flow.entity.FlowProgramFile;
+import org.springblade.mdm.flow.service.FlowProgramFileService;
+import org.springblade.mdm.program.entity.NcNode;
+import org.springblade.mdm.program.service.NcNodeService;
+import org.springblade.mdm.program.service.NcProgramService;
+import org.springblade.mdm.program.service.ProgramFlowStatusQueryService;
+import org.springblade.mdm.program.vo.CompareDataVO;
+import org.springblade.mdm.program.vo.NcNodeQueryVO;
+import org.springblade.mdm.program.vo.NcNodeVO;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.List;
+
+/**
+ * 绋嬪簭鑺傜偣
+ *
+ * @author yangys
+ */
+@NonDS
+@RestController
+@RequestMapping("/flow/file")
+@AllArgsConstructor
+@Tag(name = "娴佺▼鏂囦欢", description = "娴佺▼鏂囦欢")
+@Slf4j
+public class FlowFileController {
+	private final NcNodeService ncNodeService;
+	private final ProgramFlowStatusQueryService programFlowStatusQueryService;
+	private final FlowProgramFileService flowProgramFileService;
+
+	@GetMapping("/compare-with-try")
+	@Operation(summary = "瀵规瘮褰撳墠鏂囦欢涓庝箣鍓嶈瘯鍒囩増鏈殑鍐呭", description = "鏌ヨ瀵规瘮鍐呭鐨�2涓枃鏈暟鎹�")
+	public R<CompareDataVO> compareWithTry(@Parameter(description="鏂囦欢id)")Long fileId) {
+		CompareDataVO vo = new CompareDataVO();
+		FlowProgramFile flowFile = flowProgramFileService.getById(fileId);
+		try {
+			vo.setContent1(flowProgramFileService.getFileContent(fileId));
+
+			NcNode pkgNode = ncNodeService.getByProcessInstanceId(flowFile.getProcessInstanceId());
+			NcNode programNode = ncNodeService.getLastEditionProgramFile(flowFile.getName(), pkgNode.getId());
+			if (programNode != null && programNode.getFlowProgramFileId() != null) {
+				vo.setContent2(flowProgramFileService.getFileContent(programNode.getFlowProgramFileId()));
+			}else{
+				vo.setContent2(StringUtils.EMPTY);
+			}
+		}catch(Exception e) {
+			log.error("鑾峰彇姣斿鍐呭閿欒",e);
+		}
+		return R.data(vo);
+	}
+}
diff --git a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/flow/service/CureFlowService.java b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/flow/service/CureFlowService.java
index 0d495f4..f71268b 100644
--- a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/flow/service/CureFlowService.java
+++ b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/flow/service/CureFlowService.java
@@ -59,7 +59,7 @@
 	private void startOneNew(Long nodeId, List<FlowProgramFile> fileList) {
 		Map<String, Object> vars = new HashMap<>();
 		NcNode programPackage = this.ncNodeService.getById(nodeId);
-
+		vars.put(FlowContants.NODE_ID,programPackage.getId());
 		vars.put(FlowContants.MACHINE_CODE,programPackage.getMachineCode());
 		//鏈哄簥鍨嬪彿
 		//vars.put(FlowContants.MACHINE_MODE,programPackage.getm);
diff --git a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/gkw/programnode/controller/ProgramNodeController.java b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/gkw/programnode/controller/ProgramNodeController.java
index 9b22cd9..ebb15f1 100644
--- a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/gkw/programnode/controller/ProgramNodeController.java
+++ b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/gkw/programnode/controller/ProgramNodeController.java
@@ -8,17 +8,8 @@
 import lombok.extern.slf4j.Slf4j;
 import org.springblade.core.tenant.annotation.NonDS;
 import org.springblade.core.tool.api.R;
-import org.springblade.core.tool.utils.Func;
-import org.springblade.mdm.flow.service.FlowProgramFileService;
 import org.springblade.mdm.gkw.programnode.service.ProgramNodeService;
 import org.springblade.mdm.gkw.programnode.vo.ProgramNodeVO;
-import org.springblade.mdm.program.entity.NcNode;
-import org.springblade.mdm.program.service.NcNodeService;
-import org.springblade.mdm.program.service.NcProgramService;
-import org.springblade.mdm.program.service.ProgramFlowStatusQueryService;
-import org.springblade.mdm.program.vo.CompareDataVO;
-import org.springblade.mdm.program.vo.NcNodeQueryVO;
-import org.springblade.mdm.program.vo.NcNodeVO;
 import org.springframework.web.bind.annotation.*;
 
 import java.util.List;

--
Gitblit v1.9.3