|
@@ -1,11 +1,5 @@
|
|
|
package com.qmth.exam.reserve.service.impl;
|
|
|
|
|
|
-import java.io.File;
|
|
|
-import java.util.ArrayList;
|
|
|
-import java.util.List;
|
|
|
-
|
|
|
-import org.springframework.stereotype.Service;
|
|
|
-
|
|
|
import com.itextpdf.layout.Document;
|
|
|
import com.itextpdf.layout.element.AreaBreak;
|
|
|
import com.itextpdf.layout.element.Cell;
|
|
@@ -20,13 +14,25 @@ import com.qmth.exam.reserve.bean.stdapply.MaterialTitleInfo;
|
|
|
import com.qmth.exam.reserve.bean.stdapply.StudentApplyVO;
|
|
|
import com.qmth.exam.reserve.service.MaterialGenerateService;
|
|
|
import com.qmth.exam.reserve.util.ItextPdfUtil;
|
|
|
+import org.slf4j.Logger;
|
|
|
+import org.slf4j.LoggerFactory;
|
|
|
+import org.springframework.stereotype.Service;
|
|
|
+
|
|
|
+import java.io.File;
|
|
|
+import java.util.ArrayList;
|
|
|
+import java.util.List;
|
|
|
|
|
|
@Service
|
|
|
public class MaterialGenerateServiceImpl implements MaterialGenerateService {
|
|
|
|
|
|
+ private static final Logger log = LoggerFactory.getLogger(MaterialGenerateServiceImpl.class);
|
|
|
+
|
|
|
private static final int LINE_NUMBER = 30;
|
|
|
+
|
|
|
private static final int STUDENT_NUMBER_ROW = 2;
|
|
|
+
|
|
|
private static final int FONT_SIZE = 12;
|
|
|
+
|
|
|
private static final int LINE_HEIGHT = 22;
|
|
|
|
|
|
@Override
|
|
@@ -38,7 +44,7 @@ public class MaterialGenerateServiceImpl implements MaterialGenerateService {
|
|
|
File file = File.createTempFile("Material" + FastUUID.get(), ".tmp");
|
|
|
doc = pageModel.prepareDocument(file);
|
|
|
doc.setMargins(20, 20, 20, 20);
|
|
|
-// title.getTaskName()
|
|
|
+ // title.getTaskName()
|
|
|
Paragraph p1 = new Paragraph("签到表").setFontSize(18).setBold()
|
|
|
.setTextAlignment(TextAlignment.CENTER).setMarginTop(-2);
|
|
|
doc.add(p1);
|
|
@@ -56,7 +62,7 @@ public class MaterialGenerateServiceImpl implements MaterialGenerateService {
|
|
|
}
|
|
|
return file;
|
|
|
} catch (Exception e) {
|
|
|
- e.printStackTrace();
|
|
|
+ log.error(e.getMessage(), e);
|
|
|
ItextPdfUtil.closePdf(doc);
|
|
|
throw new StatusException("无法生成pdf");
|
|
|
} finally {
|
|
@@ -132,10 +138,10 @@ public class MaterialGenerateServiceImpl implements MaterialGenerateService {
|
|
|
}
|
|
|
|
|
|
private Table subHead(MaterialTitleInfo title, int studentSize, int titleFontSize) {
|
|
|
- Table table = new Table(new float[] { 1.2f, 1f }).setWidthPercent(100);
|
|
|
+ Table table = new Table(new float[]{1.2f, 1f}).setWidthPercent(100);
|
|
|
String address = title.getRoomName();
|
|
|
int fontSize = titleFontSize;
|
|
|
- if(address != null && address.length()>18) {
|
|
|
+ if (address != null && address.length() > 18) {
|
|
|
fontSize = 10;
|
|
|
}
|
|
|
table.addCell(new Cell(1, 1).add("考点名称:" + title.getSiteName()).setTextAlignment(TextAlignment.LEFT)
|
|
@@ -151,7 +157,7 @@ public class MaterialGenerateServiceImpl implements MaterialGenerateService {
|
|
|
}
|
|
|
|
|
|
private Table tableTitle() {
|
|
|
- Table signTable = new Table(new float[] { 1f, 1.3f, 0.5f, 1f, 1f, 1.3f, 0.5f, 1f }).setWidthPercent(100);
|
|
|
+ Table signTable = new Table(new float[]{1f, 1.3f, 0.5f, 1f, 1f, 1.3f, 0.5f, 1f}).setWidthPercent(100);
|
|
|
for (int i = 0; i < STUDENT_NUMBER_ROW; i++) {
|
|
|
signTable.addCell(
|
|
|
new Cell(1, 1).add("姓名").setTextAlignment(TextAlignment.CENTER).setVerticalAlignment(VerticalAlignment.MIDDLE)
|