From 46a2436778fbde103150a7bd9ca4c18868831efe Mon Sep 17 00:00:00 2001 From: 许鹏程 <1821349743@qq.com> Date: 星期四, 01 八月 2024 16:09:37 +0800 Subject: [PATCH] commit --- src/main/java/com/product/print/util/DynamicTableRenderPolicy.java | 60 +++++++++++++++++++++++++++++++++++++++--------------------- 1 files changed, 39 insertions(+), 21 deletions(-) diff --git a/src/main/java/com/product/print/util/DynamicTableRenderPolicy.java b/src/main/java/com/product/print/util/DynamicTableRenderPolicy.java index daa0044..1dd73db 100644 --- a/src/main/java/com/product/print/util/DynamicTableRenderPolicy.java +++ b/src/main/java/com/product/print/util/DynamicTableRenderPolicy.java @@ -32,13 +32,12 @@ private final String indexKey = "~index~"; - public DynamicTableRenderPolicy(String replaceKey) { + public DynamicTableRenderPolicy(String replaceKey) { this.replaceKey = replaceKey; } private List<MetaTemplate> metaTemplateList; - @Override @@ -134,8 +133,9 @@ if (i == 0) { row = fieldRow; } else { + int fieldRowIndex = xwpfTable.getRows().indexOf(fieldRow); //鍒涘缓涓�琛屽湪fieldRowIndex涓嬮潰 - row = xwpfTable.insertNewTableRow(xwpfTable.getRows().size()); + row = xwpfTable.insertNewTableRow(fieldRowIndex + i); PrintPoiUtil.copyTableRow(row, fieldRow); } //閬嶅巻瀛楁姣忎釜瀛楁鍒涘缓涓�涓崟鍏冩牸 @@ -146,6 +146,8 @@ XWPFParagraph xwpfParagraph = cell.addParagraph(); int index = cell.getParagraphs().indexOf(xwpfParagraph); PrintPoiUtil.copyParagraph(xwpfParagraph, cell.getParagraphs().get(0)); + //璁剧疆娈佃惤鏂囧瓧瀵归綈鏂瑰紡 + xwpfParagraph.setAlignment(cell.getParagraphs().get(0).getAlignment()); //鍒犻櫎鎵�鏈夌殑run for (int k = xwpfParagraph.getRuns().size() - 1; k >= 0; k--) { xwpfParagraph.removeRun(k); @@ -167,26 +169,42 @@ if (value == null) { value = ""; } +// if ("lx_flow_opinion".equals(this.replaceKey) && "opinion".equals(fieldNames[j])) { +// //灏嗘祦绋嬭妭鐐瑰鐞嗕汉鍔犲埌鎰忚鏍忎腑 +// value = "[" + map.get("actual_person") + "] " + value; +// } xwpfRun.setText(value.toString(), 0); - if ("lx_flow_opinion".equals(this.replaceKey) && "opinion".equals(fieldNames[j]) && !StringUtils.isEmpty(map.get("sign_attachment_uuid"))) { - //鎰忚妗� 鎻掑叆绛惧悕鍥剧墖鍒板崟鍏冩牸鍙充笅瑙掍綅缃� - xwpfParagraph = cell.addParagraph(); - xwpfParagraph.setAlignment(ParagraphAlignment.RIGHT); - XWPFRun run = xwpfParagraph.createRun(); - String signAttachmentBase64 = map.get("sign_attachment_uuid").toString(); - //灏哹ase64杞崲瀛楄妭娴� - byte[] bytes = Base64.getDecoder().decode(signAttachmentBase64.split(",")[1]); - //灏嗗瓧鑺傛祦杞崲涓鸿緭鍏ユ祦 - InputStream inputStream = new ByteArrayInputStream(bytes); - try { - //鎹㈣鎻掑叆鍥剧墖 - run.addPicture(inputStream, XWPFDocument.PICTURE_TYPE_PNG, "sign.png", Units.toEMU(50), Units.toEMU(20)); - inputStream.close(); - } catch (InvalidFormatException e) { - e.printStackTrace(); - } catch (IOException e) { - e.printStackTrace(); + if ("lx_flow_opinion".equals(this.replaceKey) && "opinion".equals(fieldNames[j])) { + if (!StringUtils.isEmpty(map.get("sign_attachment_uuid"))) { + //鎰忚妗� 鎻掑叆绛惧悕鍥剧墖鍒板崟鍏冩牸鍙充笅瑙掍綅缃� + xwpfParagraph = cell.addParagraph(); + xwpfParagraph.setAlignment(ParagraphAlignment.RIGHT); + XWPFRun run = xwpfParagraph.createRun(); + String signAttachmentBase64 = map.get("sign_attachment_uuid").toString(); + //灏哹ase64杞崲瀛楄妭娴� + byte[] bytes = Base64.getDecoder().decode(signAttachmentBase64.split(",")[1]); + //灏嗗瓧鑺傛祦杞崲涓鸿緭鍏ユ祦 + InputStream inputStream = new ByteArrayInputStream(bytes); + try { + //鎹㈣鎻掑叆鍥剧墖 + run.addPicture(inputStream, XWPFDocument.PICTURE_TYPE_PNG, "sign.png", Units.toEMU(50), Units.toEMU(20)); + run.addBreak(); + run.setText("" + map.get("deal_time").toString().substring(0, 16)); + inputStream.close(); + } catch (InvalidFormatException e) { + e.printStackTrace(); + } catch (IOException e) { + e.printStackTrace(); + } + } else { + xwpfParagraph = cell.addParagraph(); + xwpfParagraph.setAlignment(ParagraphAlignment.RIGHT); + XWPFRun run = xwpfParagraph.createRun(); + run.setText((String) map.get("actual_person")); + run.addBreak(); + run.setText(map.get("deal_time").toString().substring(0, 16)); } + } } -- Gitblit v1.9.2