|
@@ -111,7 +111,9 @@ public class CreatePdfUtil {
|
|
|
htmlMap.put("startTime", DateUtil.format(new Date(examDetail.getExamStartTime()), SystemConstant.DEFAULT_DATE_PATTERN));
|
|
|
htmlMap.put("endTime", DateUtil.format(new Date(examDetail.getExamEndTime()), SystemConstant.DEFAULT_DATE_PATTERN));
|
|
|
htmlMap.put("paperCode", examDetailCourse.getPaperNumber());
|
|
|
- htmlMap.put("paperCodeImg", GoogleBarCodeUtil.createBarCode(examDetailCourse.getPaperNumber(), false));
|
|
|
+ if (Objects.nonNull(examDetailCourse.getPaperNumber())) {
|
|
|
+ htmlMap.put("paperCodeImg", GoogleBarCodeUtil.createBarCode(examDetailCourse.getPaperNumber(), false));
|
|
|
+ }
|
|
|
|
|
|
List<String> extendColumnList = examStudentList.stream().map(m -> m.getExtendFields()).distinct().collect(Collectors.toList());
|
|
|
Set<String> startCollege = new HashSet();
|
|
@@ -144,8 +146,12 @@ public class CreatePdfUtil {
|
|
|
htmlMap.put("proctorCollege", String.join(",", proctorCollege));
|
|
|
htmlMap.put("examManager", String.join(",", examManager));
|
|
|
|
|
|
- String minSite = examStudentList.stream().min((a, b) -> a.getSiteNumber().compareTo(b.getSiteNumber())).get().getSiteNumber();
|
|
|
- String maxSite = examStudentList.stream().max((a, b) -> a.getSiteNumber().compareTo(b.getSiteNumber())).get().getSiteNumber();
|
|
|
+ List<ExamStudent> tempList = examStudentList.stream().filter(s -> (Objects.nonNull(s.getSiteNumber()) && !Objects.equals("", s.getSiteNumber().trim()))).collect(Collectors.toList());
|
|
|
+ String minSite = "", maxSite = "";
|
|
|
+ if (Objects.nonNull(tempList) && tempList.size() > 0) {
|
|
|
+ minSite = tempList.stream().min((a, b) -> a.getSiteNumber().compareTo(b.getSiteNumber())).get().getSiteNumber();
|
|
|
+ maxSite = tempList.stream().max((a, b) -> a.getSiteNumber().compareTo(b.getSiteNumber())).get().getSiteNumber();
|
|
|
+ }
|
|
|
|
|
|
htmlMap.put("minSite", minSite);
|
|
|
htmlMap.put("maxSite", maxSite);
|
|
@@ -200,7 +206,9 @@ public class CreatePdfUtil {
|
|
|
htmlMap.put("startTime", DateUtil.format(new Date(examDetail.getExamStartTime()), SystemConstant.DEFAULT_DATE_PATTERN));
|
|
|
htmlMap.put("endTime", DateUtil.format(new Date(examDetail.getExamEndTime()), SystemConstant.DEFAULT_DATE_PATTERN));
|
|
|
htmlMap.put("paperCode", examDetailCourse.getPaperNumber());
|
|
|
- htmlMap.put("paperCodeImg", GoogleBarCodeUtil.createBarCode(examDetailCourse.getPaperNumber(), false));
|
|
|
+ if (Objects.nonNull(examDetailCourse.getPaperNumber())) {
|
|
|
+ htmlMap.put("paperCodeImg", GoogleBarCodeUtil.createBarCode(examDetailCourse.getPaperNumber(), false));
|
|
|
+ }
|
|
|
|
|
|
int totalCount = examStudentList.size();
|
|
|
if (totalCount > 0) {
|
|
@@ -483,7 +491,7 @@ public class CreatePdfUtil {
|
|
|
examDetail.setStatus(PrintMethodEnum.AUTO == basicExamRule.getPrintMethod() ? ExamDetailStatusEnum.WAITING : ExamDetailStatusEnum.READY);
|
|
|
detailService.saveOrUpdate(examDetail);
|
|
|
ossUtil.ossUpload(dirName, localPdfFile, DigestUtils.md5Hex(new FileInputStream(localPdfFile)));
|
|
|
- localPdfFile.delete();
|
|
|
+// localPdfFile.delete();
|
|
|
// for (PdfDto pdfDto : mergePdfList) {
|
|
|
// new File(pdfDto.getPath()).delete();
|
|
|
// }
|
|
@@ -541,10 +549,14 @@ public class CreatePdfUtil {
|
|
|
}
|
|
|
}
|
|
|
//生成学生考号条码并将图片转成base64
|
|
|
- studentHtml = studentHtml.replaceAll("\\$\\{examNumber\\}", GoogleBarCodeUtil.createBarCode(t.getTicketNumber(), false));
|
|
|
+ if (Objects.nonNull(t.getTicketNumber())) {
|
|
|
+ studentHtml = studentHtml.replaceAll("\\$\\{examNumber\\}", GoogleBarCodeUtil.createBarCode(t.getTicketNumber(), false));
|
|
|
+ }
|
|
|
studentHtml = studentHtml.replaceAll("\\$\\{examNumberStr\\}", t.getTicketNumber());
|
|
|
//随机生成学生试卷条码并将图片转成base64
|
|
|
- studentHtml = studentHtml.replaceAll("\\$\\{paperType\\}", GoogleBarCodeUtil.createBarCode(SystemConstant.convertPaperType(paperType), false));
|
|
|
+ if (Objects.nonNull(paperType)) {
|
|
|
+ studentHtml = studentHtml.replaceAll("\\$\\{paperType\\}", GoogleBarCodeUtil.createBarCode(SystemConstant.convertPaperType(paperType), false));
|
|
|
+ }
|
|
|
studentHtml = studentHtml.replaceAll("\\$\\{paperTypeName\\}", paperType);
|
|
|
studentHtml = studentHtml.replaceAll("\\$\\{studentCode\\}", t.getStudentCode());
|
|
|
studentHtml = studentHtml.replaceAll("\\$\\{studentName\\}", t.getStudentName());
|
|
@@ -574,10 +586,15 @@ public class CreatePdfUtil {
|
|
|
String cardTemp = cardContent;
|
|
|
cardTemp = cardTemp.replaceAll("\\$\\{paperTypeName\\}", examDetailCourse.getPaperType());
|
|
|
//随机生成试卷条码并将图片转成base64
|
|
|
- cardTemp = cardTemp.replaceAll("\\$\\{paperType\\}", GoogleBarCodeUtil.createBarCode(SystemConstant.convertPaperType(examDetailCourse.getPaperType()), false));
|
|
|
+ if (Objects.nonNull(examDetailCourse.getPaperType())) {
|
|
|
+ cardTemp = cardTemp.replaceAll("\\$\\{paperType\\}", GoogleBarCodeUtil.createBarCode(SystemConstant.convertPaperType(examDetailCourse.getPaperType()), false));
|
|
|
+ }
|
|
|
//通用题卡生成卷袋贴条码
|
|
|
String packageCode = examDetail.getPackageCode() + sequence;
|
|
|
- String packageCodeImg = GoogleBarCodeUtil.createBarCode(packageCode, false);
|
|
|
+ String packageCodeImg = null;
|
|
|
+ if (Objects.nonNull(packageCode)) {
|
|
|
+ packageCodeImg = GoogleBarCodeUtil.createBarCode(packageCode, false);
|
|
|
+ }
|
|
|
String packageCodeDiv = "<div class=\"page-box page-box-0\"><div class=\"package-number\" style=\"position: absolute;width: 200px;height: 40px;top: 80px;right: 35px;transform: rotate(-90deg);transform-origin: center right;text-align: center;z-index: 99;\"><img src=\"data:image/png;base64," + packageCodeImg + "\" style=\"display: block; height: 28px; width: 100%\" /><p style=\"line-height: 1; font-size: 12px; margin: 0;\">" + packageCode + "</p></div>";
|
|
|
cardTemp = cardTemp.replaceAll("<div class=\"page-box page-box-0\">", packageCodeDiv);
|
|
|
BasicAttachment cardAttachment = basicAttachmentService.saveAttachmentHtml(examCard.getSchoolId() + "|" + examCard.getCourseCode(), cardTemp, userId, cardPdfList);
|