xiaof 3 سال پیش
والد
کامیت
3242dd9db9

+ 8 - 8
distributed-print-business/src/main/java/com/qmth/distributed/print/business/bean/dto/PdfDto.java

@@ -16,7 +16,7 @@ public class PdfDto {
     String path;
 
     @ApiModelProperty(name = "页数")
-    String pageCount;
+    int pageCount = 0;
 
     @ApiModelProperty(name = "实际页数")
     int actualPageCount = 0;
@@ -39,31 +39,31 @@ public class PdfDto {
         this.pageSize = pageSize;
     }
 
-    public PdfDto(String path, PageSizeEnum pageSize, String pageCount) {
+    public PdfDto(String path, PageSizeEnum pageSize, int pageCount) {
         this.path = path;
         this.pageSize = pageSize;
         this.pageCount = pageCount;
     }
 
-    public PdfDto(String path, PageSizeEnum pageSize, String pageCount, int sequence) {
+    public PdfDto(String path, PageSizeEnum pageSize, int pageCount, int sequence) {
         this.path = path;
         this.pageSize = pageSize;
         this.pageCount = pageCount;
         this.sequence = sequence;
     }
 
-    public PdfDto(PageSizeEnum pageSize, String pageCount, boolean tag) {
+    public PdfDto(PageSizeEnum pageSize, int pageCount, boolean tag) {
         this.pageSize = pageSize;
         this.pageCount = pageCount;
         this.tag = tag;
     }
 
-    public PdfDto(PageSizeEnum pageSize, String pageCount) {
+    public PdfDto(PageSizeEnum pageSize, int pageCount) {
         this.pageSize = pageSize;
         this.pageCount = pageCount;
     }
 
-    public PdfDto(PageSizeEnum pageSize, String pageCount, int actualPageCount) {
+    public PdfDto(PageSizeEnum pageSize, int pageCount, int actualPageCount) {
         this.pageSize = pageSize;
         this.pageCount = pageCount;
         this.actualPageCount = actualPageCount;
@@ -85,11 +85,11 @@ public class PdfDto {
         this.path = path;
     }
 
-    public String getPageCount() {
+    public int getPageCount() {
         return pageCount;
     }
 
-    public void setPageCount(String pageCount) {
+    public void setPageCount(int pageCount) {
         this.pageCount = pageCount;
     }
 

+ 3 - 3
distributed-print-business/src/main/java/com/qmth/distributed/print/business/entity/ExamDetailCourse.java

@@ -50,7 +50,7 @@ public class ExamDetailCourse extends BaseEntity implements Serializable {
     private Integer totalSubjects;
 
     @TableField("paper_pages_a3")
-    private String paperPagesA3;
+    private Integer paperPagesA3;
 
     @TableField("card_pages_a3")
     private Integer cardPagesA3;
@@ -139,11 +139,11 @@ public class ExamDetailCourse extends BaseEntity implements Serializable {
         return serialVersionUID;
     }
 
-    public String getPaperPagesA3() {
+    public Integer getPaperPagesA3() {
         return paperPagesA3;
     }
 
-    public void setPaperPagesA3(String paperPagesA3) {
+    public void setPaperPagesA3(Integer paperPagesA3) {
         this.paperPagesA3 = paperPagesA3;
     }
 

+ 8 - 7
distributed-print-business/src/main/java/com/qmth/distributed/print/business/util/CreatePdfUtil.java

@@ -410,17 +410,18 @@ public class CreatePdfUtil {
      * @throws IOException
      */
     public PdfDto getExamStudentPaperPdf(String stuPaperType, List<PaperPdfDto> paperPdfDto, List<PdfDto> pdfList) throws IOException {
-        Set<String> pagesList = new HashSet<>();
+        Set<Integer> pagesList = new HashSet<>();
         if (!CollectionUtils.isEmpty(paperPdfDto)) {
             for (PaperPdfDto dto : paperPdfDto) {
                 if(stuPaperType.equals(dto.getType())){
                     int pages = dto.getPages();
-                    pagesList.add(String.valueOf(pages));
+                    pagesList.add(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));
+            int pageCount = pagesList.stream().mapToInt(Integer::intValue).sum();
+            return new PdfDto(PageSizeEnum.A3, pageCount);
         } else {
             return null;
         }
@@ -436,20 +437,20 @@ public class CreatePdfUtil {
      * @throws IOException
      */
     public PdfDto getPaperPdf(List<PaperPdfDto> paperPdfDto, Integer backupCount, List<PdfDto> pdfList) throws IOException {
-        Set<String> pagesList = new HashSet<>();
+        Set<Integer> pagesList = new HashSet<>();
         boolean tag = false;
         if (!CollectionUtils.isEmpty(paperPdfDto)) {
             for (PaperPdfDto dto : paperPdfDto) {
                 int pages = dto.getPages();
-                pagesList.add(String.valueOf(pages));
+                pagesList.add(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, String.join(",", pagesList), tag);
+            int pageCount = pagesList.stream().mapToInt(Integer::intValue).sum();
+            return new PdfDto(PageSizeEnum.A3, pageCount, tag);
         } else {
             return null;
         }

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

@@ -120,7 +120,7 @@ public class PdfUtil {
                 fileOutputStream.close();
             }
         }
-        return new PdfDto(PageSizeEnum.A3, String.valueOf(Objects.nonNull(reader) ? reader.getNumberOfPages() : 0), pageCount);
+        return new PdfDto(PageSizeEnum.A3, Objects.nonNull(reader) ? reader.getNumberOfPages() : 0, pageCount);
     }
 
     /**