|
|
@@ -21,6 +21,7 @@ import org.springblade.archive.service.IArchiveExaminingReportDetailService;
|
|
|
import org.springblade.archive.service.IArchiveExaminingReportService;
|
|
|
import org.springblade.archive.socket.WebSocketServer;
|
|
|
import org.springblade.archive.utils.FileUtils;
|
|
|
+import org.springblade.archive.utils.RemoteFileExtension;
|
|
|
import org.springblade.archive.utils.RemoteFileMD5Calculator;
|
|
|
import org.springblade.archive.vo.ArchiveExaminingSocketVo;
|
|
|
import org.springblade.archive.vo.ArchiveExaminingVo;
|
|
|
@@ -41,7 +42,6 @@ import org.springframework.stereotype.Service;
|
|
|
|
|
|
import java.io.FileOutputStream;
|
|
|
import java.io.IOException;
|
|
|
-import java.security.NoSuchAlgorithmException;
|
|
|
import java.util.*;
|
|
|
import java.util.List;
|
|
|
import java.util.stream.Collectors;
|
|
|
@@ -154,7 +154,12 @@ public class ArchiveExaminingReportImpl extends BaseServiceImpl<ArchiveExamining
|
|
|
//根据组件id查询文件数据
|
|
|
files = archiveFileClient.getAllArchiveFileByArchiveIds(strings);
|
|
|
}
|
|
|
-
|
|
|
+ //文件类型范围
|
|
|
+ List<String> strings = new ArrayList<>();
|
|
|
+ strings.add("pdf");
|
|
|
+ strings.add("dwg");
|
|
|
+ strings.add("jpg");
|
|
|
+ strings.add("png");
|
|
|
//不合格对象
|
|
|
List<Map<String, String>> mapList = new ArrayList<>();
|
|
|
//1-1 电签验证
|
|
|
@@ -162,6 +167,8 @@ public class ArchiveExaminingReportImpl extends BaseServiceImpl<ArchiveExamining
|
|
|
//1-2 一致性检测
|
|
|
int consistency = 0;
|
|
|
|
|
|
+ //3-1 文件格式
|
|
|
+ int fileType = 0;
|
|
|
//3-2 文件是否能够访问
|
|
|
int fileIsAccess = 0;
|
|
|
//检测中
|
|
|
@@ -181,8 +188,6 @@ public class ArchiveExaminingReportImpl extends BaseServiceImpl<ArchiveExamining
|
|
|
}
|
|
|
//真实性
|
|
|
if (StringUtils.isNotBlank(vo.getAuthenticity()) && "1".equals(vo.getAuthenticity())) {
|
|
|
- //获取pdf
|
|
|
- //加密pdf
|
|
|
//获取文件数字摘要
|
|
|
RemoteFileMD5Calculator.MD5Result remoteFileMD5FromHeaders = RemoteFileMD5Calculator.getRemoteFileMD5FromHeaders(file.getPdfFileUrl());
|
|
|
String md5Hash = remoteFileMD5FromHeaders.getMd5Hash();
|
|
|
@@ -277,8 +282,17 @@ public class ArchiveExaminingReportImpl extends BaseServiceImpl<ArchiveExamining
|
|
|
if (StringUtils.isNotBlank(vo.getUsability()) && "1".equals(vo.getUsability())) {
|
|
|
Thread.sleep(5000L);
|
|
|
if(vo.getAuthenticityList().contains("1")){
|
|
|
+ //获取文件后缀,后缀为
|
|
|
+ String fileExtensionFromUrl = RemoteFileExtension.getFileExtensionFromUrl(file.getPdfFileUrl());
|
|
|
+ if(StringUtils.isEmpty(fileExtensionFromUrl) || !strings.contains(fileExtensionFromUrl)){
|
|
|
+ Map<String, String> map = new HashMap<>();
|
|
|
+ map.put("examiningItem", ArchiveConstant.ARCHIVE_EXAMINING_STANDARD + "对电子文件格式检测");
|
|
|
+ map.put("unqualifiedObject", file.getFileName());
|
|
|
+ mapList.add(map);
|
|
|
+ fileType++;
|
|
|
+ }
|
|
|
detailService.save(new ArchiveExaminingReportDetail(vo.getProjectId(), id, ArchiveConstant.ARCHIVE_EXAMINING_USABILITY,
|
|
|
- ArchiveConstant.ARCHIVE_EXAMINING_STANDARD + "对电子文件格式检测", 0, "无", 0));
|
|
|
+ ArchiveConstant.ARCHIVE_EXAMINING_STANDARD + "对电子文件格式检测", fileType, fileType == 0 ? "无" : "详见附件", fileType == 0 ? 0 : 1));
|
|
|
}
|
|
|
//3-2 放在最开始
|
|
|
if(vo.getAuthenticityList().contains("3")){
|