|
@@ -27,6 +27,7 @@ import java.io.File;
|
|
|
import java.io.FileInputStream;
|
|
|
import java.io.IOException;
|
|
|
import java.util.*;
|
|
|
+import java.util.concurrent.atomic.AtomicInteger;
|
|
|
import java.util.stream.Collectors;
|
|
|
|
|
|
/**
|
|
@@ -459,14 +460,14 @@ public class CreatePdfUtil {
|
|
|
StringJoiner stringJoiner = new StringJoiner("").add(SystemConstant.PDF_TEMP_FILES_DIR).add(File.separator);
|
|
|
List<PdfDto> mergePdfList = new ArrayList<>();
|
|
|
List<PdfDto> mergePdfA4List = new ArrayList<>();
|
|
|
- int pageA3Count = 0;
|
|
|
- int pageA4Count = 0;
|
|
|
+ AtomicInteger pageA3Count = new AtomicInteger(0);
|
|
|
+ AtomicInteger pageA4Count = new AtomicInteger(0);
|
|
|
for (int i = 0; i < list.length; i++) {
|
|
|
if (list[i].size() > 0 && list[i].get(0).getPageSize() == PageSizeEnum.A4) {
|
|
|
- pageA4Count = pageA4Count + list[i].stream().mapToInt(PdfDto::getPageCount).sum();
|
|
|
+ pageA4Count.addAndGet(list[i].stream().mapToInt(PdfDto::getPageCount).sum());
|
|
|
mergePdfA4List.addAll(list[i]);
|
|
|
} else if (list[i].size() > 0 && list[i].get(0).getPageSize() == PageSizeEnum.A3) {
|
|
|
- pageA3Count = pageA3Count + list[i].stream().mapToInt(PdfDto::getPageCount).sum();
|
|
|
+ pageA3Count.addAndGet(list[i].stream().mapToInt(PdfDto::getPageCount).sum());
|
|
|
mergePdfList.addAll(list[i]);
|
|
|
}
|
|
|
}
|
|
@@ -479,8 +480,8 @@ public class CreatePdfUtil {
|
|
|
tbTask.setImportFileName(basicAttachment.getName());
|
|
|
tbTask.setImportFilePath(basicAttachment.getPath());
|
|
|
examDetail.setAttachmentId(basicAttachment.getId());
|
|
|
- examDetail.setPagesA3(pageA3Count);
|
|
|
- examDetail.setPagesA4(pageA4Count);
|
|
|
+ examDetail.setPagesA3(pageA3Count.get());
|
|
|
+ examDetail.setPagesA4(pageA4Count.get());
|
|
|
examDetail.setStatus(PrintMethodEnum.AUTO == basicExamRule.getPrintMethod() ? ExamDetailStatusEnum.WAITING : ExamDetailStatusEnum.READY);
|
|
|
detailService.saveOrUpdate(examDetail);
|
|
|
ossUtil.ossUpload(dirName, localPdfFile, DigestUtils.md5Hex(new FileInputStream(localPdfFile)));
|