Ver Fonte

只打题卡问题

xiaof há 3 anos atrás
pai
commit
88515569e4

+ 10 - 7
distributed-print-business/src/main/java/com/qmth/distributed/print/business/templete/service/impl/TaskLogicServiceImpl.java

@@ -313,6 +313,15 @@ public class TaskLogicServiceImpl implements TaskLogicService {
                             .eq(ExamStudent::getExamDetailCourseId, examDetailCourse.getId());
                     List<ExamStudent> examStudentList = examStudentService.list(examStudentQueryWrapper);
 
+                    List<String> paperTypes = Arrays.asList(paperType.split(",")).stream().sorted(Comparator.comparing(String::valueOf)).collect(Collectors.toList());
+                    int i1 = 0;
+                    for (ExamStudent t : examStudentList) {
+                        int mod = i1 % examTaskDetail.getDrawCount().intValue();
+                        String stuPaperType = paperTypes.get(mod);
+                        t.setPaperType(stuPaperType);
+                        i1++;
+                    }
+
                     List<PaperPdfDto> paperPdfDto = null;
                     if (printContent.contains("PAPER")) {
                         paperPdfDto = createPdfUtil.getPaperPdfFile(paperType, examTaskDetail);
@@ -327,16 +336,10 @@ public class TaskLogicServiceImpl implements TaskLogicService {
                         // 备用试卷
                         list[0].addAll(backupPaperTempPdfList);
 
-                        List<String> paperTypes = Arrays.asList(paperType.split(",")).stream().sorted(Comparator.comparing(String::valueOf)).collect(Collectors.toList());
-                        int i = 0;
                         for (ExamStudent t : examStudentList) {
-                            int mod = i % examTaskDetail.getDrawCount().intValue();
-                            String stuPaperType = paperTypes.get(mod);
                             if (Objects.nonNull(pdfDto)) {
-                                createPdfUtil.getExamStudentPaperPdf(stuPaperType, paperPdfDto, paperPdfTempList);
+                                createPdfUtil.getExamStudentPaperPdf(t.getPaperType(), paperPdfDto, paperPdfTempList);
                             }
-                            t.setPaperType(stuPaperType);
-                            i++;
                         }
                         // 试卷
                         list[2].addAll(paperPdfTempList);

+ 3 - 1
distributed-print-business/src/main/java/com/qmth/distributed/print/business/util/CreatePdfUtil.java

@@ -815,7 +815,9 @@ public class CreatePdfUtil {
         studentHtml = studentHtml.replaceAll("\\$\\{examTime\\}", examTime);
         studentHtml = studentHtml.replaceAll("\\$\\{ticketNumber\\}", t.getTicketNumber());
         studentHtml = studentHtml.replaceAll("\\$\\{siteNumber\\}", t.getSiteNumber());
-        studentHtml = studentHtml.replaceAll("\\$\\{paperTypeName\\}", t.getPaperType());
+        if(StringUtils.isNotEmpty(t.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());