diff --git a/introduction.md b/introduction.md index 6d81077262bfc9c11c5f831877ad59ab523618eb..cfa7377509af3f2bfcfd9e0c45b72c5df6f5fe52 100644 --- a/introduction.md +++ b/introduction.md @@ -78,7 +78,9 @@ http://127.0.0.1:5011/ ### 2.6. 导入数据 -本配置页可以导入获奖数据,文件基于导出模板进行填充。文件上传后保存配置。 +本配置页可以导入获奖数据,Excel文件基于导出模板进行填充,可以先在【2.3. 证书图片配置】导出。文件上传后保存配置。 + +Excel文件导入数据时,数值和时间可以设置为文本格式,避免有问题。 ![](./images/config_import.png) diff --git a/src/main/java/com/certapp/service/CertificateService.java b/src/main/java/com/certapp/service/CertificateService.java index e1e864f820337677f4da9b2f3c58925b7c1f65ae..05b7cb25a7022ad0753e186db04fc82fd96c5ea6 100644 --- a/src/main/java/com/certapp/service/CertificateService.java +++ b/src/main/java/com/certapp/service/CertificateService.java @@ -37,6 +37,8 @@ import java.util.concurrent.atomic.AtomicInteger; import javax.imageio.ImageIO; import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.lang3.StringUtils; +import org.apache.poi.ss.usermodel.Cell; +import org.apache.poi.ss.usermodel.DataFormatter; import org.apache.poi.xssf.usermodel.XSSFRow; import org.apache.poi.xssf.usermodel.XSSFSheet; import org.apache.poi.xssf.usermodel.XSSFWorkbook; @@ -388,15 +390,15 @@ public class CertificateService { } } } - if (req.getFields() != null && req.getFields().size()>0) { + if (req.getFields() != null && req.getFields().size() > 0) { FiledInfoVo filedInfoVo = req.getFields().get(0); - if (filedInfoVo.getShowEnable() == 1 && filedInfoVo.getFiledName().equals("certificatID")) { + if (filedInfoVo.getShowEnable() == 1 + && filedInfoVo.getFiledName().equals("certificatID")) { Font fontNum = new Font("宋体", Font.PLAIN, Integer.parseInt(req.getNumFont())); int[] contentSize = getContentSize(fontNum, filedInfoVo.getFiledDemo()); g.setFont(fontNum); g.drawString(filedInfoVo.getFiledDemo(), - filedInfoVo.getX() + filedInfoVo.getW() / 2 - - contentSize[0] / 2, + filedInfoVo.getX() + filedInfoVo.getW() / 2 - contentSize[0] / 2, filedInfoVo.getY() + contentSize[1]); } } @@ -841,8 +843,10 @@ public class CertificateService { certHashInfo.setCertConfigId(certConfigId); StringBuffer sb = new StringBuffer(); for (int j = 0; j < columnNum; j++) { - sb.append(StringUtils.isNotEmpty(row.getCell(j).toString()) - ? row.getCell(j).toString() + ";" : null + ";"); + Cell cell = row.getCell(j); + DataFormatter formatter = new DataFormatter(); + String cellValue = formatter.formatCellValue(cell); + sb.append(StringUtils.isNotBlank(cellValue) ? cellValue + ";" : null + ";"); } sb.deleteCharAt(sb.length() - 1); certHashInfo.setFiledInfo(sb.toString());