Browse Source

update pdf

deason 8 months ago
parent
commit
984a027168

+ 7 - 7
src/main/java/com/qmth/exam/reserve/service/impl/MaterialGenerateServiceImpl.java

@@ -27,15 +27,15 @@ public class MaterialGenerateServiceImpl implements MaterialGenerateService {
 
     private static final Logger log = LoggerFactory.getLogger(MaterialGenerateServiceImpl.class);
 
-    private static final int FIRST_PAGE_STUDENT_ROW_COUNT = 28;// 首页最多显示多少行学生
+    private static final int FIRST_PAGE_STUDENT_ROW_COUNT = 30;// 首页最多显示多少行学生
 
-    private static final int NOT_FIRST_PAGE_STUDENT_ROW_COUNT = 34;// 非首页最多显示多少行学生
+    private static final int NOT_FIRST_PAGE_STUDENT_ROW_COUNT = 35;// 非首页最多显示多少行学生
 
     private static final int STUDENT_GROUP_COUNT = 2;// 每行显示几组学生信息
 
     private static final int FONT_SIZE = 12;
 
-    private static final int LINE_HEIGHT = 22;
+    private static final int LINE_HEIGHT = 20;
 
     @Override
     public File generateSignInForm(MaterialTitleInfo title, List<StudentApplyVO> studentList) {
@@ -45,8 +45,8 @@ public class MaterialGenerateServiceImpl implements MaterialGenerateService {
         try {
             File file = File.createTempFile("Material" + FastUUID.get(), ".tmp");
             doc = pageModel.prepareDocument(file);
-            doc.setMargins(20, 20, 20, 20);
-            doc.add(new Paragraph("签到表").setFontSize(18).setBold().setTextAlignment(TextAlignment.CENTER).setMarginTop(-2));
+            doc.setMargins(2, 20, 2, 20);
+            doc.add(new Paragraph("签到表").setFontSize(18).setBold().setTextAlignment(TextAlignment.CENTER));
 
             int totalSize = studentList.size();
             doc.add(subHead(title, FONT_SIZE));
@@ -193,8 +193,8 @@ public class MaterialGenerateServiceImpl implements MaterialGenerateService {
         table.addCell(new Cell(1, 1).add(" ").setTextAlignment(TextAlignment.LEFT)
                 .setVerticalAlignment(VerticalAlignment.MIDDLE).setFontSize(fontSize).setMarginLeft(20f));
 
-        table.setMarginTop(10);
-        table.setMarginBottom(10);
+        table.setMarginTop(2);
+        table.setMarginBottom(2);
         return table;
     }
 

+ 22 - 17
src/test/java/com/qmth/exam/reserve/test/ServerTest.java

@@ -14,6 +14,7 @@ import com.qmth.exam.reserve.service.MaterialGenerateService;
 import com.qmth.exam.reserve.util.DateUtil;
 import com.qmth.exam.reserve.weixin.OauthAccessTokenRequest;
 import com.qmth.exam.reserve.weixin.response.OauthAccessTokenResponseJson;
+import org.apache.commons.io.FileUtils;
 import org.apache.commons.lang3.StringUtils;
 import org.junit.Test;
 import org.junit.runner.RunWith;
@@ -24,7 +25,6 @@ import org.springframework.boot.test.context.SpringBootTest;
 import org.springframework.test.context.junit4.SpringRunner;
 
 import java.io.File;
-import java.io.IOException;
 import java.util.*;
 import java.util.stream.Collectors;
 
@@ -44,7 +44,7 @@ public class ServerTest {
     @Autowired
     private RedisClient redisClient;
 
-    @Test
+    // @Test
     public void testRedisQueue() {
         RQueue<Object> queue = redisClient.getRedissonClient().getQueue("test", new JsonJacksonCodec());
         for (int i = 0; i < 10; i++) {
@@ -56,12 +56,12 @@ public class ServerTest {
         }
     }
 
-    @Test
+    // @Test
     public void updateTeachingCapacity() {
         categoryService.updateTeachingCapacity(5L);
     }
 
-    @Test
+    // @Test
     public void testTeaching() {
         LambdaQueryWrapper<CategoryEntity> lm = new LambdaQueryWrapper<>();
         lm.eq(CategoryEntity::getEnable, Boolean.TRUE);
@@ -71,7 +71,7 @@ public class ServerTest {
         System.out.println(map);
     }
 
-    @Test
+    // @Test
     public void testTimePeriod() {
         LambdaQueryWrapper<TimePeriodEntity> queryWrapper = new LambdaQueryWrapper<>();
         queryWrapper.eq(TimePeriodEntity::getApplyTaskId, 27);
@@ -85,7 +85,7 @@ public class ServerTest {
         System.out.println(list.size());
     }
 
-    @Test
+    // @Test
     public void testNoFinish() {
         OauthAccessTokenRequest request = new OauthAccessTokenRequest("1212121212121", "wxb501ca68bdeb52df",
                 "aca244f836a76bdfa498a26be93e30a1");
@@ -95,16 +95,18 @@ public class ServerTest {
         System.out.println(response.getErrcode() + ":" + response.getErrmsg());
     }
 
-    @Test
-    public void testTask() {
+    // @Test
+    public void testTask() throws Exception {
         MaterialTitleInfo title = new MaterialTitleInfo();
         title.setTaskName("广东开放大学2024年6月期末考试");
         title.setSiteName("东莞开放大学");
+        title.setRoomCode("A");
+        title.setRoomName("考场01");
         title.setAddress("11栋301教室");
         title.setTimePeriod("2024年6月1日8:00-11:30");
 
         List<StudentApplyVO> studentList = new ArrayList<>();
-        for (int i = 1; i <= 80; i++) {
+        for (int i = 1; i <= 200; i++) {
             StudentApplyVO vo = new StudentApplyVO();
             vo.setName("测试" + i);
             vo.setStudentCode("12345678901234");
@@ -115,15 +117,18 @@ public class ServerTest {
         if (!tempFolder.exists()) {
             tempFolder.mkdir();
         }
-        generateService.generateSignInForm(title, studentList);
-    }
-
-    public static void main(String[] args) throws IOException {
-        System.out.println(DateUtil.getLongTimeByDate("2024-10-23 09:00:00") + "**" + DateUtil.getLongTimeByDate("2024-10-23 12:00:00"));
-        System.out.println(DateUtil.getLongTimeByDate("2024-10-23 13:00:00") + "**" + DateUtil.getLongTimeByDate("2024-10-23 17:00:00"));
-        System.out.println(DateUtil.getLongTimeByDate("2024-10-24 09:00:00") + "**" + DateUtil.getLongTimeByDate("2024-10-24 12:00:00"));
-        System.out.println(DateUtil.getLongTimeByDate("2024-10-24 13:00:00") + "**" + DateUtil.getLongTimeByDate("2024-10-24 17:00:00"));
 
+        File file = generateService.generateSignInForm(title, studentList);
+        File toFile = new File("temp/" + System.currentTimeMillis() + ".pdf");
+        System.out.println(file.getAbsolutePath() + " " + toFile.getAbsolutePath());
+        FileUtils.moveFile(file, toFile);
     }
 
+    // public static void main(String[] args) throws IOException {
+    //     System.out.println(DateUtil.getLongTimeByDate("2024-10-23 09:00:00") + "**" + DateUtil.getLongTimeByDate("2024-10-23 12:00:00"));
+    //     System.out.println(DateUtil.getLongTimeByDate("2024-10-23 13:00:00") + "**" + DateUtil.getLongTimeByDate("2024-10-23 17:00:00"));
+    //     System.out.println(DateUtil.getLongTimeByDate("2024-10-24 09:00:00") + "**" + DateUtil.getLongTimeByDate("2024-10-24 12:00:00"));
+    //     System.out.println(DateUtil.getLongTimeByDate("2024-10-24 13:00:00") + "**" + DateUtil.getLongTimeByDate("2024-10-24 17:00:00"));
+    // }
+
 }