From ee6af8dff591418168d5104d281a6f0bf3c961e8 Mon Sep 17 00:00:00 2001
From: yangys <y_ys79@sina.com>
Date: 星期三, 17 九月 2025 20:48:48 +0800
Subject: [PATCH] 现场编制功能适配

---
 blade-service/blade-mdm/src/main/java/org/springblade/mdm/machinefile/service/ReceiveFileCheckService.java |    9 +++++++--
 1 files changed, 7 insertions(+), 2 deletions(-)

diff --git a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/machinefile/service/ReceiveFileCheckService.java b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/machinefile/service/ReceiveFileCheckService.java
index 0052fa3..fb4fa33 100644
--- a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/machinefile/service/ReceiveFileCheckService.java
+++ b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/machinefile/service/ReceiveFileCheckService.java
@@ -5,6 +5,7 @@
 import org.springblade.core.log.exception.ServiceException;
 import org.springblade.mdm.basesetting.machine.entity.Machine;
 import org.springblade.mdm.basesetting.machine.service.MachineService;
+import org.springblade.mdm.commons.contants.RegExpConstants;
 import org.springblade.mdm.commons.service.ParamService;
 import org.springblade.mdm.gkw.programnode.vo.ProgramNameVO;
 import org.springblade.mdm.machinefile.entity.FileSendRecord;
@@ -31,6 +32,7 @@
 import java.util.Date;
 import java.util.List;
 import java.util.Optional;
+import java.util.regex.Matcher;
 
 @Slf4j
 @Component
@@ -59,10 +61,13 @@
 				//闈炴枃鏈�
 				machineFile.setExceptionType(MachineFile.EXCEPTION_NOT_TEXT);
 			}else{
-				ProgramNameVO progNameVO =  ProgramFileNameParser.parseProgramName(machineFile.getName());
-				if(!progNameVO.isValidFilename()){
+				Matcher matcher = RegExpConstants.PROGRAM_FILE_PATTERN.matcher(machineFile.getName());
+
+				boolean filenameValid = matcher.find();
+				if(!filenameValid){
 					machineFile.setExceptionType(MachineFile.EXCEPTION_BAD_FILENAME);
 				}else {
+					ProgramNameVO progNameVO =  ProgramFileNameParser.parseProgramName(machineFile.getName());
 					String prefix = progNameVO.logicProgramName()+"-";
 					long matchCount = allFilesInDir.stream().filter(file -> file.getName().startsWith(prefix)).count();
 					if(matchCount != progNameVO.getSegmentCount()){//鏂囦欢娈垫暟缂哄け

--
Gitblit v1.9.3