| | |
| | | // 备注默认文案 |
| | | assertTrue(tables.get(3).getRow(0).getCell(1).getText().contains("检验结果仅对样品本身或本批次负责")); |
| | | |
| | | // 签字行留空(打印后手写),不得出现姓名 |
| | | // 签字行带出姓名:检验=检测人、复核=复核人、批准=审核人 |
| | | String signLine = doc.getParagraphs().stream() |
| | | .filter(p -> p.getText().contains("批准:")) |
| | | .findFirst().orElseThrow().getText(); |
| | | assertTrue(signLine.contains("检验:") && signLine.contains("复核:")); |
| | | assertTrue(!signLine.contains("李博") && !signLine.contains("周亚洁") && !signLine.contains("包翠萍"), |
| | | "签字行应留空,不输出检验/复核/批准姓名"); |
| | | assertTrue(signLine.contains("检验:李博"), "检验应带出检测人姓名:" + signLine); |
| | | assertTrue(signLine.contains("复核:周亚洁"), "复核应带出复核人姓名:" + signLine); |
| | | assertTrue(signLine.contains("批准:包翠萍"), "批准应带出审核人姓名:" + signLine); |
| | | } |
| | | } |
| | | |
| | | @Test |
| | | public void testBuildWithoutSigners() throws IOException { |
| | | MesQcQcReportRespVO report = randomReport(); |
| | | report.setInspectorName(null).setAuditName("").setApproveName(null); |
| | | byte[] docx = MesQcProductReportWordBuilder.build(report); |
| | | try (InputStream in = new ByteArrayInputStream(docx); XWPFDocument doc = new XWPFDocument(in)) { |
| | | String signLine = doc.getParagraphs().stream() |
| | | .filter(p -> p.getText().contains("批准:")) |
| | | .findFirst().orElseThrow().getText(); |
| | | assertTrue(signLine.contains("检验:") && signLine.contains("复核:") && signLine.contains("批准:"), |
| | | "未指定人员时仍保留三个栏位供手写:" + signLine); |
| | | } |
| | | } |
| | | |