From a5f944c2bc0107e5df936937f1c33e5e03eb8fed Mon Sep 17 00:00:00 2001
From: yangys <y_ys79@sina.com>
Date: 星期六, 06 九月 2025 19:15:48 +0800
Subject: [PATCH] 解锁增加解锁原因和展示

---
 blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/service/ProgramAnnotationService.java |  105 ++++++++++++++++------------------------------------
 1 files changed, 32 insertions(+), 73 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 5bcd37e..3d715fd 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
@@ -74,10 +74,8 @@
 	 * @param annotationList 娉ㄩ噴娉ㄩ噴瀛楀吀椤瑰垪琛�
 	 * @return
 	 */
-	public boolean isAnnotation(String line,String machineGroupCode,List<DictBiz> annotationList){
-		boolean isAnno = false;
-
-		ProgramAnnotation progAnnotation = this.getProgramAnnotationFormat(machineGroupCode,annotationList);
+	public boolean isAnnotation(String line,String systemDictVal,List<DictBiz> annotationList){
+		ProgramAnnotation progAnnotation = this.getProgramAnnotationFormat(systemDictVal,annotationList);
 
 		line = StringUtils.trim(line);//鍘婚灏剧┖鏍�
 		return progAnnotation.isAnnotation(line);
@@ -85,100 +83,62 @@
 
 
 
-	public String generateAnnotation(String oriTest,String machineGroupCode,List<DictBiz> annotationList) {
-		/*
-		String annotation = oriTest;
-		String begin = "(";
-		String end = ")";
-		Optional<DictBiz> dictOpt = annotationList.stream().filter(dict -> {return dict.getDictKey().equals(machineGroupCode);}).findFirst();
-		String annotationSetting = DEFAULT_ANNOTATION_SETTING;
-		if(dictOpt.isPresent()) {
-			annotationSetting = dictOpt.get().getRemark();
-		}
-		String[] arr = StringUtils.split(annotationSetting,",");
-		if(arr.length == 2){
-			begin = arr[0];
-			end = arr[1];
-		}else if(arr.length == 1){
-			begin = arr[0];
-			end = "";
-		}
-		*/
-		ProgramAnnotation progAnnotation = this.getProgramAnnotationFormat(machineGroupCode,annotationList);
+	public String generateAnnotation(String oriTest,String systemDictVal,List<DictBiz> annotationList) {
+		ProgramAnnotation progAnnotation = this.getProgramAnnotationFormat(systemDictVal,annotationList);
 		return progAnnotation.addAnnotation(oriTest);
 	}
-	/*
-	public String[] getAnnotationStartAndEnd(String machineGroupCode,List<DictBiz> annotationList) {
-
-		String begin = "(";
-		String end = ")";
-
-		Optional<DictBiz> dictOpt = annotationList.stream().filter(dict -> {return dict.getDictKey().equals(machineGroupCode);}).findFirst();
-		String annotationSetting = DEFAULT_ANNOTATION_SETTING;
-		if(dictOpt.isPresent()) {
-			annotationSetting = dictOpt.get().getRemark();
-		}
-		String[] arr = StringUtils.split(annotationSetting,",");
-		if(arr.length == 2){
-			begin = arr[0];
-			end = arr[1];
-		}else if(arr.length == 1){
-			begin = arr[0];
-			end = "";
-		}
-		ProgramAnnotation progAnno = this.getProgramAnnotationFormat(machineGroupCode,annotationList);
-		return new String[]{begin,end};
-	}
-*/
 
 	/**
 	 * 鎻愬彇娉ㄩ噴涓殑鏂囨湰
-	 * @param machineGroupCode 鏈哄簥缁勪唬鐮�
+	 * @param systemDictVal 鏈哄簥缁勪唬鐮�
 	 * @param text 娓呴櫎娉ㄩ噴鏍囪
 	 * @return 娓呴櫎鍚庣殑鏂囨湰
 	 */
-		public String removeAnnotation(String machineGroupCode,String text){
-			List<DictBiz> annoDicts = getAnnotionDictList();
-			ProgramAnnotation panno = this.getProgramAnnotationFormat(machineGroupCode,annoDicts);
-			//String[] arr = getAnnotationStartAndEnd(machineGroupCode,annoDicts);
-			return panno.cleanAnnotation(text);
-		}
+	public String removeAnnotation(String systemDictVal,String text){
+		List<DictBiz> annoDicts = getAnnotionDictList();
+		return removeAnnotation(systemDictVal,text,annoDicts);
+	}
+
+	public String removeAnnotation(String systemDictVal,String text,List<DictBiz> annotatiionList){
+		ProgramAnnotation panno = this.getProgramAnnotationFormat(systemDictVal,annotatiionList);
+		return panno.cleanAnnotation(text);
+	}
 		/**
 		 * 璁剧疆鍥哄寲娉ㄩ噴琛�
 		 * @param inputStream 杈撳叆妗�
-		 * @param machineGroup 鏈哄簥缁勭紪鐮�
+		 * @param systemDictVal 鏈哄簥缁勭紪鐮�
 		 * @param annoDictList 娉ㄩ噴瀛楀吀閰嶇疆
 		 * @return 鍔犲ソ娉ㄩ噴鐨�
 		 * @throws IOException
 		 */
-	public InputStream setGHAnnotation(InputStream inputStream, String machineGroup,List<DictBiz> annoDictList) throws IOException {
-		return setAnnotationAndGetInputStream(inputStream, machineGroup, annoDictList, GH, STATUS_LINE_INDEX);
+	public InputStream setGHAnnotation(InputStream inputStream, String systemDictVal,List<DictBiz> annoDictList) throws IOException {
+		return setAnnotationAndGetInputStream(inputStream, systemDictVal, annoDictList, GH, STATUS_LINE_INDEX);
 	}
 
 	/**
 	 * 璁剧疆鍋忕鍗曟敞閲�
 	 * @param inputStream 鏂囨湰杈撳叆娴�
-	 * @param machineGroup 鏈哄簥缁勪唬鐮�
+	 * @param systemDictVal 鎺у埗绯荤粺瀛楀吀鍊�
 	 * @param annoDictList 娉ㄩ噴瀛楀吀閰嶇疆
 	 * @return 鍔犲ソ娉ㄩ噴鐨勮緭鍏ユ祦
 	 * @throws IOException 璁块棶娴佸彲鑳芥姏鍑哄紓甯�
 	 */
-	public InputStream setPldAnnotation(String deviation,InputStream inputStream,String machineGroup,List<DictBiz> annoDictList) throws IOException {
-		return setAnnotationAndGetInputStream(inputStream, machineGroup, annoDictList, deviation, STATUS_DEVIATION_INDEX);
+	public InputStream setPldAnnotation(String deviation,InputStream inputStream,String systemDictVal,List<DictBiz> annoDictList) throws IOException {
+		return setAnnotationAndGetInputStream(inputStream, systemDictVal, annoDictList, deviation, STATUS_DEVIATION_INDEX);
 	}
 
 	@NotNull
-	private InputStream setAnnotationAndGetInputStream(InputStream inputStream, String machineGroup, List<DictBiz> annoDictList, String text, int lineIndex) throws IOException {
+	private InputStream setAnnotationAndGetInputStream(InputStream inputStream, String systemDictVal, List<DictBiz> annoDictList, String text, int lineIndex) throws IOException {
 		InputStream finishedStream;
 		try(inputStream){
 			ByteArrayInputStream byteInputStream =  new ByteArrayInputStream(IOUtils.toByteArray(inputStream));
 
-			String annoTxt = generateAnnotation(text,machineGroup,annoDictList);//鍔犱簡娉ㄩ噴涔嬪悗鐨勬枃鏈�
+			String annoTxt = generateAnnotation(text,systemDictVal,annoDictList);//鍔犱簡娉ㄩ噴涔嬪悗鐨勬枃鏈�
 
 			String lineText = FileContentUtil.readLineAt(byteInputStream, lineIndex);
 			byteInputStream.reset();
 
-			if(isAnnotation(lineText,machineGroup,annoDictList)){
+			if(isAnnotation(lineText,systemDictVal,annoDictList)){
 				finishedStream = FileContentUtil.replaceAtLine(byteInputStream, lineIndex,annoTxt);
 			}else{
 				finishedStream = FileContentUtil.insertLine(byteInputStream, lineIndex,annoTxt);
@@ -195,11 +155,11 @@
 	 * @param sendPath 鍙戦�佽矾寰�
 	 * @param statusText 鐘舵�佹枃鏈�
 	 * @param inputStream 杈撳叆娴�
-	 * @param machineGroup 鏈哄簥缁勪唬鐮�
+	 * @param systemDictVal 鎺у埗绯荤粺浠g爜
 	 * @return 鍔犲ソ鍙戦�佽矾寰勫拰鐘舵�佹枃鏈殑杈撳叆娴�
 	 * @throws IOException
 	 */
-	public InputStream setSendDirAndStatusAnnotation(String sendPath,String statusText,InputStream inputStream, String machineGroup) throws IOException {
+	public InputStream setSendDirAndStatusAnnotation(String sendPath,String statusText,InputStream inputStream, String systemDictVal) throws IOException {
 		List<DictBiz> annoDicts = getAnnotionDictList();
 
 		InputStream finishedStream;
@@ -207,8 +167,7 @@
 			ByteArrayInputStream byteInputStream =  new ByteArrayInputStream(IOUtils.toByteArray(inputStream));
 
 			//1鍔犲叆鍙戦�佽矾寰勭殑娉ㄩ噴
-			String sendPathAnnotation = generateAnnotation(sendPath,machineGroup,annoDicts);//鍔犱簡娉ㄩ噴涔嬪悗鐨勬枃鏈�
-
+			String sendPathAnnotation = generateAnnotation(sendPath,systemDictVal,annoDicts);//鍔犱簡娉ㄩ噴涔嬪悗鐨勬枃鏈�
 
 			String sendDirLine = FileContentUtil.readLineAt(byteInputStream,SENDPATH_LINE_INDEX);//绗�2琛屾槸鍙戦�佽矾寰�
 			byteInputStream.reset();
@@ -216,7 +175,7 @@
 			byteInputStream.reset();
 
 			InputStream insAfterSetSendDir ;
-			if(isAnnotation(sendDirLine,machineGroup,annoDicts)){
+			if(isAnnotation(sendDirLine,systemDictVal,annoDicts)){
 				insAfterSetSendDir = FileContentUtil.replaceAtLine(byteInputStream,SENDPATH_LINE_INDEX,sendPathAnnotation);
 			}else{
 				insAfterSetSendDir = FileContentUtil.insertLine(byteInputStream,SENDPATH_LINE_INDEX,sendPathAnnotation);
@@ -224,8 +183,8 @@
 
 			insAfterSetSendDir.reset();
 			//鍔犲叆鐘舵�佹敞閲婅
-			String statusAnnotation = generateAnnotation(statusText,machineGroup,annoDicts);//娉ㄩ噴鍚庣殑鐘舵�佹枃鏈�
-			if(isAnnotation(statusLine,machineGroup,annoDicts)){
+			String statusAnnotation = generateAnnotation(statusText,systemDictVal,annoDicts);//娉ㄩ噴鍚庣殑鐘舵�佹枃鏈�
+			if(isAnnotation(statusLine,systemDictVal,annoDicts)){
 				finishedStream = FileContentUtil.replaceAtLine(insAfterSetSendDir,STATUS_LINE_INDEX,statusAnnotation);
 			}else{
 				finishedStream = FileContentUtil.insertLine(insAfterSetSendDir,STATUS_LINE_INDEX,statusAnnotation);
@@ -237,15 +196,15 @@
 
 	/**
 	 * 瑙f瀽鍑烘満搴婄▼搴忔敞閲婄殑鏍煎紡
-	 * @param machineGroupCode 鏈哄簥缁�
+	 * @param systemDictVal 鏁版帶绯荤粺瀛楀吀鍊�
 	 * @param annoDictList 閰嶇疆鐨勬敞閲婂瓧鍏告暟鎹�
 	 * @return
 	 */
-	ProgramAnnotation getProgramAnnotationFormat(String machineGroupCode,List<DictBiz> annoDictList){
+	ProgramAnnotation getProgramAnnotationFormat(String systemDictVal,List<DictBiz> annoDictList){
 		String begin;
 		String end;
 
-		Optional<DictBiz> dictOpt = annoDictList.stream().filter(dict -> {return dict.getDictKey().equals(machineGroupCode);}).findFirst();
+		Optional<DictBiz> dictOpt = annoDictList.stream().filter(dict -> {return dict.getDictKey().equals(systemDictVal);}).findFirst();
 		String annotationSetting = DEFAULT_ANNOTATION_SETTING;
 		if(dictOpt.isPresent()) {
 			annotationSetting = dictOpt.get().getRemark();

--
Gitblit v1.9.3