From 87895ab581b2f44e3492e4395dce5fc7e8341363 Mon Sep 17 00:00:00 2001
From: yangys <y_ys79@sina.com>
Date: 星期六, 16 八月 2025 17:00:48 +0800
Subject: [PATCH] 替换注化
---
blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/service/ProgramAnnotationService.java | 40 ++++++++++++++++++++++++++++++++++++++++
1 files changed, 40 insertions(+), 0 deletions(-)
diff --git a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/service/ProgramAnnotationService.java b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/service/ProgramAnnotationService.java
index 6bf350d..0bab27e 100644
--- a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/service/ProgramAnnotationService.java
+++ b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/service/ProgramAnnotationService.java
@@ -2,13 +2,20 @@
package org.springblade.mdm.program.service;
import lombok.extern.slf4j.Slf4j;
+import org.apache.commons.io.IOUtils;
import org.apache.commons.lang3.StringUtils;
+import org.springblade.core.oss.model.BladeFile;
import org.springblade.core.tool.api.R;
+import org.springblade.mdm.flow.entity.FlowProgramFile;
+import org.springblade.mdm.utils.FileContentUtil;
import org.springblade.system.feign.IDictClient;
import org.springblade.system.pojo.entity.Dict;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
+import java.io.ByteArrayInputStream;
+import java.io.IOException;
+import java.io.InputStream;
import java.util.Collections;
import java.util.List;
import java.util.Optional;
@@ -125,5 +132,38 @@
String temp = StringUtils.removeEnd(StringUtils.removeStart(text,begin),end);
return temp;
}
+
+ /**
+ * 涓虹▼搴忔枃浠跺鍔犳敞閲�
+ * @param oriText 鍘熷鏂囨湰
+ * @param lineIndex 琛岀储寮� 0 based
+ * @param inputStream 鏂囦欢鐨勮緭鍏ユ祦
+ * @param machineGroup 鏈哄簥缁� 鐢熸垚娉ㄩ噴鐢�
+ * @return 鍔犳敞閲婂悗鐨勬祦
+ * @throws IOException
+ */
+ public InputStream setAnnotation(String oriText,int lineIndex,InputStream inputStream, String machineGroup) throws IOException {
+ List<Dict> annoDicts = getAnnotionList();
+ //
+ InputStream finishedStream;
+ try(inputStream){
+ ByteArrayInputStream byteInputStream = new ByteArrayInputStream(IOUtils.toByteArray(inputStream));
+
+ String annoTxt = generateAnnotation(oriText,machineGroup,annoDicts);//鍔犱簡娉ㄩ噴涔嬪悗鐨勬枃鏈�
+
+ String lineText = FileContentUtil.readLineAt(byteInputStream,lineIndex);//绗笁琛屽簲璇ユ槸鐘舵�佹敞閲�
+ byteInputStream.reset();
+
+ if(isAnnotation(lineText,machineGroup,annoDicts)){
+ finishedStream = FileContentUtil.replaceAtLine(byteInputStream,lineIndex,annoTxt);
+ }else{
+ finishedStream = FileContentUtil.insertLine(byteInputStream,lineIndex,annoTxt);
+ }
+ finishedStream.reset();
+
+ }
+
+ return finishedStream;
+ }
}
--
Gitblit v1.9.3