|
@@ -399,12 +399,16 @@ public class CreatePdfUtil {
|
|
|
* @return
|
|
|
* @throws IOException
|
|
|
*/
|
|
|
- public PdfDto getExamStudentPaperPdf(PaperPdfDto paperPdfDto, List<PdfDto> pdfList) throws IOException {
|
|
|
- if (Objects.nonNull(paperPdfDto)) {
|
|
|
- int pages = paperPdfDto.getPages();
|
|
|
- PdfDto pdfDto = PdfUtil.addPdfPage(paperPdfDto.getFile());
|
|
|
- pdfList.add(new PdfDto(paperPdfDto.getFile().getPath(), PageSizeEnum.A3, pdfDto.getPageCount()));
|
|
|
- return new PdfDto(PageSizeEnum.A3, pages);
|
|
|
+ public PdfDto getExamStudentPaperPdf(List<PaperPdfDto> paperPdfDto, List<PdfDto> pdfList) throws IOException {
|
|
|
+ Set<String> pagesList = new HashSet<>();
|
|
|
+ if (!CollectionUtils.isEmpty(paperPdfDto)) {
|
|
|
+ for (PaperPdfDto dto : paperPdfDto) {
|
|
|
+ int pages = dto.getPages();
|
|
|
+ pagesList.add(String.valueOf(pages));
|
|
|
+ PdfDto pdfDto = PdfUtil.addPdfPage(dto.getFile());
|
|
|
+ pdfList.add(new PdfDto(dto.getFile().getPath(), PageSizeEnum.A3, pdfDto.getPageCount()));
|
|
|
+ }
|
|
|
+ return new PdfDto(PageSizeEnum.A3, String.join(",", pagesList));
|
|
|
} else {
|
|
|
return null;
|
|
|
}
|
|
@@ -419,15 +423,21 @@ public class CreatePdfUtil {
|
|
|
* @return
|
|
|
* @throws IOException
|
|
|
*/
|
|
|
- public PdfDto getPaperPdf(PaperPdfDto paperPdfDto, Integer backupCount, List<PdfDto> pdfList) throws IOException {
|
|
|
- if (Objects.nonNull(paperPdfDto)) {
|
|
|
- int pages = paperPdfDto.getPages();
|
|
|
- boolean tag = pages > 2 ? true : false;
|
|
|
- PdfDto pdfDto = PdfUtil.addPdfPage(paperPdfDto.getFile());
|
|
|
- for (int j = 1; j <= backupCount; j++) {
|
|
|
- pdfList.add(new PdfDto(paperPdfDto.getFile().getPath(), PageSizeEnum.A3, pdfDto.getPageCount()));
|
|
|
+ public PdfDto getPaperPdf(List<PaperPdfDto> paperPdfDto, Integer backupCount, List<PdfDto> pdfList) throws IOException {
|
|
|
+ Set<String> pagesList = new HashSet<>();
|
|
|
+ boolean tag = false;
|
|
|
+ if (!CollectionUtils.isEmpty(paperPdfDto)) {
|
|
|
+ for (PaperPdfDto dto : paperPdfDto) {
|
|
|
+ int pages = dto.getPages();
|
|
|
+ pagesList.add(String.valueOf(pages));
|
|
|
+ tag = pages > 2;
|
|
|
+ PdfDto pdfDto = PdfUtil.addPdfPage(dto.getFile());
|
|
|
+ for (int j = 1; j <= backupCount; j++) {
|
|
|
+ pdfList.add(new PdfDto(dto.getFile().getPath(), PageSizeEnum.A3, pdfDto.getPageCount()));
|
|
|
+ }
|
|
|
}
|
|
|
- return new PdfDto(PageSizeEnum.A3, pages, tag);
|
|
|
+
|
|
|
+ return new PdfDto(PageSizeEnum.A3, String.join(",", pagesList), tag);
|
|
|
} else {
|
|
|
return null;
|
|
|
}
|
|
@@ -441,7 +451,7 @@ public class CreatePdfUtil {
|
|
|
* @return
|
|
|
* @throws IOException
|
|
|
*/
|
|
|
- public PaperPdfDto getPaperPdfFile(String paperType, ExamTaskDetail examTaskDetail) throws IOException {
|
|
|
+ public List<PaperPdfDto> getPaperPdfFile(String paperType, ExamTaskDetail examTaskDetail) throws IOException {
|
|
|
String[] paperTypes = paperType.split(",");
|
|
|
List<PaperPdfDto> paperPdfDtoList = new ArrayList<>();
|
|
|
PaperPdfDto paperPdfDto = null;
|
|
@@ -467,7 +477,7 @@ public class CreatePdfUtil {
|
|
|
|
|
|
}
|
|
|
}
|
|
|
- return paperPdfDto;
|
|
|
+ return paperPdfDtoList;
|
|
|
}
|
|
|
|
|
|
/**
|
|
@@ -726,8 +736,8 @@ public class CreatePdfUtil {
|
|
|
}
|
|
|
studentHtml = studentHtml.replaceAll("\\$\\{examNumberStr\\}", t.getTicketNumber());
|
|
|
//随机生成学生试卷条码并将图片转成base64
|
|
|
- if (Objects.nonNull(examDetailCourse.getPaperType())) {
|
|
|
- studentHtml = studentHtml.replaceAll("\\$\\{paperType\\}", GoogleBarCodeUtil.createBarCode(SystemConstant.convertPaperType(examDetailCourse.getPaperType()), false));
|
|
|
+ if (Objects.nonNull(t.getPaperType())) {
|
|
|
+ studentHtml = studentHtml.replaceAll("\\$\\{paperType\\}", GoogleBarCodeUtil.createBarCode(SystemConstant.convertPaperType(t.getPaperType()), false));
|
|
|
}
|
|
|
Map<String, Object> map = ConvertUtil.analyzeDateAndTime(examDetail.getExamStartTime(), examDetail.getExamEndTime());
|
|
|
String examDate = Objects.nonNull(map.get("date")) ? (String) map.get("date") : "";
|
|
@@ -736,7 +746,7 @@ public class CreatePdfUtil {
|
|
|
studentHtml = studentHtml.replaceAll("\\$\\{examTime\\}", examTime);
|
|
|
studentHtml = studentHtml.replaceAll("\\$\\{ticketNumber\\}", t.getTicketNumber());
|
|
|
studentHtml = studentHtml.replaceAll("\\$\\{siteNumber\\}", t.getSiteNumber());
|
|
|
- studentHtml = studentHtml.replaceAll("\\$\\{paperTypeName\\}", examDetailCourse.getPaperType());
|
|
|
+ studentHtml = studentHtml.replaceAll("\\$\\{paperTypeName\\}", t.getPaperType());
|
|
|
studentHtml = studentHtml.replaceAll("\\$\\{studentCode\\}", t.getStudentCode());
|
|
|
studentHtml = studentHtml.replaceAll("\\$\\{studentName\\}", t.getStudentName());
|
|
|
studentHtml = studentHtml.replaceAll("\\$\\{courseName\\}", examDetailCourse.getCourseName());
|
|
@@ -748,7 +758,6 @@ public class CreatePdfUtil {
|
|
|
//学生题卡
|
|
|
BasicAttachment examStudentAttachment = printCommonService.saveAttachmentHtml(examDetail.getSchoolId() + "|" + examDetailCourse.getCourseCode() + "|" + t.getTicketNumber(), studentHtml, userId, examStudentPdfList);
|
|
|
t.setAttachmentId(examStudentAttachment.getId());
|
|
|
- t.setPaperType(examDetailCourse.getPaperType());
|
|
|
return examStudentAttachment;
|
|
|
}
|
|
|
|