From 75d225e77d932a27a6fc50ad41786081fcd460d0 Mon Sep 17 00:00:00 2001
From: linzhijie <19970921lzj>
Date: 星期日, 25 四月 2021 15:58:49 +0800
Subject: [PATCH] 合并代码优化
---
src/main/java/com/ots/project/tool/ShellTool.java | 4 ++--
src/main/java/com/ots/common/utils/poi/WordUtil.java | 40 +++++++++++++++++++++++++++-------------
2 files changed, 29 insertions(+), 15 deletions(-)
diff --git a/src/main/java/com/ots/common/utils/poi/WordUtil.java b/src/main/java/com/ots/common/utils/poi/WordUtil.java
index 368610e..822094f 100644
--- a/src/main/java/com/ots/common/utils/poi/WordUtil.java
+++ b/src/main/java/com/ots/common/utils/poi/WordUtil.java
@@ -369,17 +369,19 @@
List<XWPFTableCell> cells = row.getTableCells();
for (XWPFTableCell cell : cells) {
-
+ //濡傛灉褰撳墠琛ㄦ牸鍖呭惈%灏变唬琛ㄩ渶瑕佹浛鎹�
if (checkText(cell.getText())) {
List<XWPFParagraph> paragraphs = cell.getParagraphs();
for (XWPFParagraph paragraph : paragraphs) {
-
+ //鑾峰彇鎵�鏈夎
List<IRunElement> iRunElements = paragraph.getIRuns();
List<XWPFRun> runs = new ArrayList<>();
+ //閬嶅巻鎵�鏈夎
for (IRunElement iRunElement : iRunElements) {
runs.add((XWPFRun) iRunElement);
}
int runPosition = 0;
+ //鏇挎崲鎵�鏈夎〃鏍肩殑鏂囧瓧
for (XWPFRun run : runs) {
setTextValue(textMap, document, paragraph, runPosition, run);
}
@@ -835,17 +837,22 @@
String filePath = getTemplateDownLoadPathByUpLoad(fileName);
XWPFDocument document = new XWPFDocument(POIXMLDocument.openPackage(getTemplateDownLoadPathByUpLoad(fileName)));
-
+
+ //璁剧疆鏂囨湰
changeText(document, textMap);
+ //鏇存敼鏂囨湰妗�
if (Objects.equals(reportType, ReportTypeEnum.MAQV2.getCode())) {
changeTextBox(document, textMap);
}
-
+
+ //鎻掑叆琛ㄦ牸
addTableValue(document, autoTableMap);
-
+
+ //鏇存敼琛ㄦ牸鐨勫��
changeTable(document, textMap);
-
+
+ //璁剧疆鍥捐〃鎺т欢
changChar(textMap, document, reportType, templateType);
document.write(out);
}
@@ -929,6 +936,14 @@
document.write(out);
out.flush();
}
+
+ /**
+ * 璁剧疆鍥炬爣鎺т欢
+ * @param textMap
+ * @param document
+ * @param reportType
+ * @param templateType
+ */
private static void changChar(Map<String, Object> textMap, XWPFDocument document, String reportType, String templateType) {
if (StringUtils.isEmpty(reportType) || StringUtils.isEmpty(templateType)) {
return;
@@ -937,20 +952,19 @@
if (ExamUtil.isListEmpty(charts)) {
return;
}
- if (StringUtils.equals(reportType, "MAQ")) {
-
+ if (StringUtils.equals(reportType, ReportTypeEnum.MAQ.getCode())) {
setMAQCompleteChars(textMap, charts);
} else if (StringUtils.equals(reportType, ReportTypeEnum.MAQV2.getCode())) {
setMAQ_V2CompleteChars(textMap, charts);
- } else if (StringUtils.equals(reportType, "RuiLin")) {
+ } else if (StringUtils.equals(reportType, ReportTypeEnum.RuiLin.getCode())) {
setRuiLinChar(textMap, charts);
} else {
return;
}
}
private static void setMAQ_V2CompleteChars(Map<String, Object> textMap, List<XWPFChart> charts) {
- String p_People32 = textMap.get("P_Task31").toString();
- String p_Task31 = textMap.get("P_People32").toString();
+ String p_Task31 = textMap.get("P_Task31").toString();
+ String p_People32 = textMap.get("P_People32").toString();
String P_INCON25 = textMap.get("P_INCON25").toString();
String P_IM24 = textMap.get("P_IM24").toString();
String P_SDE23 = textMap.get("P_SDE23").toString();
@@ -981,8 +995,8 @@
List<CTBarSer> serList = ctBarChart.getSerList();
CTBarSer ctBarSer = serList.get(0);
CTNumDataSource val = ctBarSer.getVal();
- val.getNumRef().getNumCache().getPtList().get(0).setV(p_Task31);
- val.getNumRef().getNumCache().getPtList().get(1).setV(p_People32);
+ val.getNumRef().getNumCache().getPtList().get(0).setV(p_People32);
+ val.getNumRef().getNumCache().getPtList().get(1).setV(p_Task31);
}
} catch (Exception e) {
e.printStackTrace();
diff --git a/src/main/java/com/ots/project/tool/ShellTool.java b/src/main/java/com/ots/project/tool/ShellTool.java
index b93fa55..de464dd 100644
--- a/src/main/java/com/ots/project/tool/ShellTool.java
+++ b/src/main/java/com/ots/project/tool/ShellTool.java
@@ -10,8 +10,8 @@
StringBuilder builder = new StringBuilder();
if (os.toLowerCase().startsWith("mac")) {
builder.append("/Applications/LibreOffice.app/Contents/MacOS/soffice --headless --convert-to ");
- } else if(os.toLowerCase().startsWith("windows")){
- builder.append("soffice.exe --headless --invisible --convert-to ");
+ } else if(os.contains("Windows")){
+ builder.append("cmd /c start soffice --headless --convert-to ");
} else {
builder.append("libreoffice6.4 --headless --convert-to ");
}
--
Gitblit v1.9.1