From 205335927da0fd6f47ab8212809f03977e9a4c7f Mon Sep 17 00:00:00 2001
From: zhijie <1003392067@qq.com>
Date: 星期一, 28 二月 2022 23:59:59 +0800
Subject: [PATCH] 修复

---
 src/main/java/com/ots/common/utils/poi/WordUtil.java |   65 ++++++++++++++------------------
 1 files changed, 28 insertions(+), 37 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 961d8e8..b859c5f 100644
--- a/src/main/java/com/ots/common/utils/poi/WordUtil.java
+++ b/src/main/java/com/ots/common/utils/poi/WordUtil.java
@@ -9,6 +9,7 @@
 import com.ots.project.exam.domain.TReportTemplate;
 import com.ots.project.exam.dto.JAQTableStyle;
 import com.ots.project.exam.dto.WordParam;
+import com.ots.project.tool.PdfUtil;
 import com.ots.project.tool.ShellTool;
 import com.ots.project.tool.exam.ExamUtil;
 import com.ots.project.tool.exam.ImageUtil;
@@ -17,6 +18,7 @@
 import com.ots.project.tool.report.JAQ.condition.Table2;
 import com.ots.project.tool.report.JAQ.condition.Table3;
 import com.ots.project.tool.report.JAQ.condition.Table4;
+import com.ots.project.tool.report.PAQ.chart.PAQChart;
 import com.ots.project.tool.report.SAQ.chart.SAQChart;
 import org.apache.commons.collections.map.HashedMap;
 import org.apache.poi.ooxml.POIXMLDocument;
@@ -432,9 +434,25 @@
     public static boolean checkText(String text) {
         //鏇挎崲鏂囨湰鍖呭惈%
         if (text.indexOf("%") != -1 || StringUtils.equals(text, "N/A NONE")) {
-            return true;
+            //鍙湁%澶т簬1 鎵嶉�氳繃
+            if(getCount(text) > 1){
+                return true;
+            }
+            return false;
         }
         return false;
+    }
+
+    //鍒ゆ柇%鍑虹幇鐨勬鏁�
+    public static int getCount(String text){
+        //鏃ч暱搴�
+        int oldLength = text.length();
+        text = text.replace("%", "");
+        //鏂伴暱搴�
+        int newLength = text.length();
+        //鍑虹幇娆℃暟 = 鏃ч暱搴� - 鏂伴暱搴�
+        int count = oldLength - newLength;
+        return count;
     }
     
     public static String changeValue(String runValue, Map<String, Object> textMap, XWPFRun run, XWPFParagraph paragraph, XWPFDocument document, int runPosition) throws IOException, org.apache.poi.openxml4j.exceptions.InvalidFormatException {
@@ -606,38 +624,6 @@
     }
 
 
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
     private static void changOtherPicture(XWPFParagraph paragraph) {
         
         String paragraphText = paragraph.getText();
@@ -767,7 +753,12 @@
             setChageWord(fileName, out, textMap, tReportTemplate.getReportType(), templateType, autoTableMap);
             out.flush();
             changColorIfJAQ(textMap, out, reportName, tReportTemplate.getReportType());
-            ShellTool.execLibreofficeCommand("pdf", EssConfig.getProfile() + "/" + reportName, EssConfig.getProfile() + "/");
+            //PAQ閲囩敤鏂扮殑doc杞琾df
+            if(!ReportTypeEnum.PAQ.getCode().equals(reportType)){
+                ShellTool.execLibreofficeCommand("pdf", EssConfig.getProfile() + "/" + reportName, EssConfig.getProfile() + "/");
+            }else{
+                PdfUtil.convertPDF(EssConfig.getProfile() + "/" + reportName);
+            }
             zipFilePath = getPdfPath(reportName);
             
             deleteFileStrList.add(EssConfig.getProfile() + "/" + reportName);
@@ -857,8 +848,8 @@
         changeTextBox(document, textMap);
 
         //璁剧疆鍥捐〃
-        if (Objects.equals(reportType, ReportTypeEnum.SAQ.getCode())) {
-            SAQChart.changeChart(document, textMap);
+        if (Objects.equals(reportType, ReportTypeEnum.PAQ.getCode())) {
+            PAQChart.changeChart(document, textMap);
         }
 
         //鎻掑叆琛ㄦ牸
@@ -970,7 +961,7 @@
         }
         if (StringUtils.equals(reportType, ReportTypeEnum.MAQ.getCode())) {
             setMAQCompleteChars(textMap, charts);
-        } else if (StringUtils.equals(reportType, ReportTypeEnum.MAQV2.getCode())) {
+        } else if (StringUtils.equals(reportType, ReportTypeEnum.MAQV2.getCode()) || StringUtils.equals(reportType, ReportTypeEnum.MAQIAR.getCode())) {
             setMAQ_V2CompleteChars(textMap, charts);
         } else if (StringUtils.equals(reportType, ReportTypeEnum.RuiLin.getCode())) {
             setRuiLinChar(textMap, charts);

--
Gitblit v1.9.1