From a3048fa6fa72fa3cc5da2c43c59bd000e00c9599 Mon Sep 17 00:00:00 2001
From: yangys <y_ys79@sina.com>
Date: 星期四, 18 九月 2025 23:13:32 +0800
Subject: [PATCH] 工控网分析程序状态问题修复
---
blade-service/blade-mdm/src/main/java/org/springblade/mdm/machinefile/service/ReceiveFileCheckService.java | 22 ++++++++++++----------
1 files changed, 12 insertions(+), 10 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 fb4fa33..937aca5 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
@@ -51,27 +51,30 @@
*/
@Transactional(rollbackFor = Exception.class)
public void check(MachineFile machineFile,List<MachineFile> allFilesInDir,Machine machine) throws IOException {
+
String srcFilepath = MachineFileService.getBasePath(machine,machineFile.getDirType())+ File.separator+machineFile.getName();
- Path source = Paths.get(srcFilepath);
- if(!source.toFile().exists()){
+ log.info("寮�濮嬫鏌ユ枃浠秢}",srcFilepath);
+ Path checkFilePath = Paths.get(srcFilepath);
+ if(!checkFilePath.toFile().exists()){
return;
}
- try(InputStream fileIns = Files.newInputStream(Paths.get(srcFilepath));) {
+ try(InputStream fileIns = Files.newInputStream(checkFilePath);) {
+ int excepType = MachineFile.EXCEPTION_OK;
if(!FileContentUtil.isTextFile(fileIns)){
//闈炴枃鏈�
- machineFile.setExceptionType(MachineFile.EXCEPTION_NOT_TEXT);
+ excepType = MachineFile.EXCEPTION_NOT_TEXT;
}else{
Matcher matcher = RegExpConstants.PROGRAM_FILE_PATTERN.matcher(machineFile.getName());
boolean filenameValid = matcher.find();
if(!filenameValid){
- machineFile.setExceptionType(MachineFile.EXCEPTION_BAD_FILENAME);
+ excepType = 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()){//鏂囦欢娈垫暟缂哄け
- machineFile.setExceptionType(MachineFile.EXCEPTION_LOST_FILES);
+ excepType = MachineFile.EXCEPTION_LOST_FILES;
}else{
//妫�鏌ユ槸鍚﹀尮閰嶄笅鍙戣褰曠殑娈垫暟
//姝h礋3绉掍綔涓烘煡璇㈡椂闂�
@@ -87,15 +90,14 @@
ProgramNameVO sendProgNameVO = ProgramFileNameParser.parseProgramName(sendFile.getName());
if(progNameVO.getSegmentCount() != sendProgNameVO.getSegmentCount()){
//娈垫暟涓嶅尮閰�
- machineFile.setExceptionType(MachineFile.EXCEPTION_NOT_MATCH_SEND);
- }else{
- machineFile.setExceptionType(MachineFile.EXCEPTION_OK);
+ excepType = MachineFile.EXCEPTION_NOT_MATCH_SEND;
}
}
}
}
}
-
+ machineFile.setExceptionType(excepType);
+ log.info("妫�鏌ユ枃浠剁粨鏉焮}",srcFilepath);
machineFileService.updateById(machineFile);
}
}
--
Gitblit v1.9.3