|
@@ -96,6 +96,7 @@ import java.util.*;
|
|
|
import java.util.List;
|
|
|
import java.util.concurrent.ExecutorService;
|
|
|
import java.util.concurrent.TimeUnit;
|
|
|
+import java.util.concurrent.atomic.AtomicInteger;
|
|
|
import java.util.stream.Collectors;
|
|
|
|
|
|
/**
|
|
@@ -383,43 +384,34 @@ public class ArchivesAutoServiceImpl extends BaseServiceImpl<ArchivesAutoMapper,
|
|
|
vo.setSecretLevelValue("1".equals(vo.getSecretLevel()) ? "机密" : ("2".equals(vo.getSecretLevel()) ? "绝密" : "秘密"));
|
|
|
}
|
|
|
List<ArchivesAutoVO.ApprovalFile> approvalFiles = vo.getApprovalFileList();
|
|
|
- ArchivesAutoVO.ApprovalFile front = null;
|
|
|
- ArchivesAutoVO.ApprovalFile cataLog = null;
|
|
|
- ArchivesAutoVO.ApprovalFile spare = null;
|
|
|
- ArchivesAutoVO.ApprovalFile back = null;
|
|
|
+ ArchivesAutoVO.ApprovalFile[] elementFiles = new ArchivesAutoVO.ApprovalFile[4];
|
|
|
+ AtomicInteger pageSize = new AtomicInteger(0);
|
|
|
if (approvalFiles != null && !approvalFiles.isEmpty()) {
|
|
|
- // todo 四要素 使用名称判断
|
|
|
- Map<String, List<ArchivesAutoVO.ApprovalFile>> collect = approvalFiles.stream().collect(Collectors.groupingBy(approvalFile -> {
|
|
|
- if (approvalFile != null &&
|
|
|
- (approvalFile.getFileName().equals("封面") || approvalFile.getFileName().equals("卷内目录") || approvalFile.getFileName().equals("卷内备考表") || approvalFile.getFileName().equals("备考表") || approvalFile.getFileName().equals("背脊"))) {
|
|
|
- if (approvalFile.getFileName().equals("卷内备考表")) {
|
|
|
- return "备考表";
|
|
|
- }
|
|
|
- return approvalFile.getFileName();
|
|
|
+ // 四要素 使用名称判断
|
|
|
+ approvalFiles.removeIf(approvalFile -> {
|
|
|
+ if ("封面".equals(approvalFile.getFileName()) || "封面表".equals(approvalFile.getFileName())) {
|
|
|
+ elementFiles[0] = approvalFile;
|
|
|
+ return true;
|
|
|
+ } else if ("卷内目录".equals(approvalFile.getFileName()) || "卷内目录表".equals(approvalFile.getFileName()) || "目录表".equals(approvalFile.getFileName()) || "目录".equals(approvalFile.getFileName())) {
|
|
|
+ elementFiles[1] = approvalFile;
|
|
|
+ return true;
|
|
|
+ } else if ("备考表".equals(approvalFile.getFileName()) || "卷内备考表".equals(approvalFile.getFileName())) {
|
|
|
+ elementFiles[2] = approvalFile;
|
|
|
+ return true;
|
|
|
+ } else if ("背脊".equals(approvalFile.getFileName()) || "背脊表".equals(approvalFile.getFileName())) {
|
|
|
+ elementFiles[3] = approvalFile;
|
|
|
+ return true;
|
|
|
}
|
|
|
- return "0";
|
|
|
- }, Collectors.toList()));
|
|
|
- List<ArchivesAutoVO.ApprovalFile> approvalFiles1 = collect.get("0");
|
|
|
- if (approvalFiles1 == null) {
|
|
|
- approvalFiles1 = new ArrayList<>();
|
|
|
- }
|
|
|
- vo.setPageNumber(approvalFiles1.size());
|
|
|
- vo.setApprovalFileList(approvalFiles1);
|
|
|
- if (collect.containsKey("封面")) {
|
|
|
- front = collect.get("封面").stream().max(Comparator.comparing(ArchivesAutoVO.ApprovalFile::getId)).orElse(null);
|
|
|
- }
|
|
|
- if (collect.containsKey("卷内目录")) {
|
|
|
- cataLog = collect.get("卷内目录").stream().max(Comparator.comparing(ArchivesAutoVO.ApprovalFile::getId)).orElse(null);
|
|
|
- }
|
|
|
- if (collect.containsKey("备考表")) {
|
|
|
- spare = collect.get("备考表").stream().max(Comparator.comparing(ArchivesAutoVO.ApprovalFile::getId)).orElse(null);
|
|
|
- }
|
|
|
- if (collect.containsKey("背脊")) {
|
|
|
- back = collect.get("背脊").stream().max(Comparator.comparing(ArchivesAutoVO.ApprovalFile::getId)).orElse(null);
|
|
|
- }
|
|
|
+ pageSize.addAndGet(approvalFile.getFilePage() == null ? 1 : approvalFile.getFilePage());
|
|
|
+ return false;
|
|
|
+ });
|
|
|
} else {
|
|
|
vo.setPageNumber(0);
|
|
|
}
|
|
|
+ ArchivesAutoVO.ApprovalFile front = elementFiles[0];
|
|
|
+ ArchivesAutoVO.ApprovalFile cataLog = elementFiles[1];
|
|
|
+ ArchivesAutoVO.ApprovalFile spare = elementFiles[2];
|
|
|
+ ArchivesAutoVO.ApprovalFile back = elementFiles[3];
|
|
|
String outUrl = vo.getOutUrl();
|
|
|
if (StringUtils.isNotBlank(outUrl)) {
|
|
|
// 根据 factorType 字符串生成档案号码字符串链表
|