From fdde707bb95af657d838426f1329128b1ff167ab Mon Sep 17 00:00:00 2001
From: zss <zss@example.com>
Date: 星期六, 15 三月 2025 15:12:08 +0800
Subject: [PATCH] 报告调整

---
 inspect-server/src/main/java/com/yuanchu/mom/utils/WordUtils.java | 1049 +++++++++++++++++++++++++--------------------------------
 1 files changed, 459 insertions(+), 590 deletions(-)

diff --git a/inspect-server/src/main/java/com/yuanchu/mom/utils/WordUtils.java b/inspect-server/src/main/java/com/yuanchu/mom/utils/WordUtils.java
index ab1d037..8b01a45 100644
--- a/inspect-server/src/main/java/com/yuanchu/mom/utils/WordUtils.java
+++ b/inspect-server/src/main/java/com/yuanchu/mom/utils/WordUtils.java
@@ -12,9 +12,8 @@
 import com.deepoove.poi.data.*;
 import com.deepoove.poi.data.style.*;
 import com.deepoove.poi.util.TableTools;
-import com.yuanchu.mom.dto.InsReportDto1;
-import com.yuanchu.mom.dto.InsReportDto2;
-import com.yuanchu.mom.dto.SampleProductDto;
+import com.spire.doc.FileFormat;
+import com.yuanchu.mom.dto.*;
 import com.yuanchu.mom.exception.ErrorException;
 import com.yuanchu.mom.mapper.*;
 import com.yuanchu.mom.pojo.*;
@@ -69,9 +68,6 @@
 
     @Resource
     StandardMethodListMapper standardMethodListMapper;
-
-    @Value("${twoCode}")
-    private String twoCode;
 
     @Resource
     private InsProductMapper insProductMapper;
@@ -160,7 +156,8 @@
                 if (inspectionItemSubclass.contains("浜掕皟")) {
                     aa += (angles + 1) * portRow * often;
                 }
-            } else {
+            }
+            else {
                 if (inspectionItemSubclass.contains("鐢靛帇椹绘尝姣�")) {
                     aa += (angles + 1) * portRow;
                 }
@@ -276,7 +273,7 @@
                     style.setFontFamily("瀹嬩綋");
                     style.setColor("000000");
                     textRenderData.setStyle(style);
-                    if (i == 0) {
+                    if (i == 1) {
                         //绗竴琛�
                         textRenderData.setText("棰戞锛�" + s + "鈭�0" + lable);
                         renderData.add(textRenderData);
@@ -284,7 +281,9 @@
                         paragraphRenderDataList.add(paragraphRenderData);
                         cellRenderData.setParagraphs(paragraphRenderDataList);
                         cells.add(cellRenderData);
-                    } else {
+                    }
+                    else {
+                        i=i-1;
                         if (insOrderState.getVersion() == 1) {
                             //闈炵數璋冪増鏈�(绠�鍗曠増)
                             if (inspectionItemSubclass.contains("鐢靛帇椹绘尝姣�") && i <= 2 * portRow) {
@@ -355,7 +354,7 @@
                                             textRenderData.setText("涓嶅垽瀹�");
                                         }
                                     } else {
-                                        textRenderData.setText("/");
+                                        textRenderData.setText("鍒ゅ畾");
                                     }
                                     renderData.add(textRenderData);
                                     paragraphRenderData.setContents(renderData);
@@ -801,7 +800,7 @@
                                 } else if (j == 4) {
                                     //绗簲鍒�
                                     if ((i - (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg)) % (angles + 1) == 1) {
-                                        textRenderData.setText("瑙掑害");
+                                        textRenderData.setText("棰戞");
                                     } else {
                                         textRenderData.setText(result2s.get(0).getAngle().split(",")[(i - (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg) - 2) % (angles + 1)]);
                                     }
@@ -813,7 +812,7 @@
                                 } else if (j == bb - 1) {
                                     //鏈�鍚庝竴鍒�
                                     if ((i - (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg)) % (angles + 1) == 1) {
-                                        textRenderData.setText("/");
+                                        textRenderData.setText("鍒ゅ畾");
                                     } else {
                                         if (products.get(0).getInsResult() == 1) {
                                             textRenderData.setText("鍚堟牸鈭�8" + index + ((i - (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg) + (angles - 1)) / (angles + 1) - 1));
@@ -847,7 +846,8 @@
                                     cells.add(cellRenderData);
                                 }
                             }
-                        } else {
+                        }
+                        else {
                             //鐢佃皟鐗堟湰(澶嶆潅鐗�)
                             if (inspectionItemSubclass.contains("鐢靛帇椹绘尝姣�") && i <= (angles + 1) * portRow) {
                                 cc = (angles + 1) * portRow;
@@ -908,7 +908,7 @@
                                 } else if (j == bb - 1) {
                                     //鏈�鍚庝竴鍒�
                                     if (i % (angles + 1) == 1) {
-                                        textRenderData.setText("/");
+                                        textRenderData.setText("鍒ゅ畾");
                                     } else {
                                         //缁撹
                                         if (products.get(0).getInsResult() == 1) {
@@ -1013,7 +1013,7 @@
                                     } else if (j == bb - 1) {
                                         //鏈�鍚庝竴鍒�
                                         if ((i - cc) % (angles + 1) == 1) {
-                                            textRenderData.setText("/");
+                                            textRenderData.setText("鍒ゅ畾");
                                         } else {
                                             //缁撹
                                             if (products.get(0).getInsResult() == 1) {
@@ -1136,7 +1136,7 @@
                                     } else if (j == bb - 1) {
                                         //鏈�鍚庝竴鍒�
                                         if ((i - (dd == 0 ? cc : dd)) % (angles + 1) == 1) {
-                                            textRenderData.setText("/");
+                                            textRenderData.setText("鍒ゅ畾");
                                         } else {
                                             //缁撹
                                             if (products.get(0).getInsResult() == 1) {
@@ -1259,7 +1259,7 @@
                                     } else if (j == bb - 1) {
                                         //鏈�鍚庝竴鍒�
                                         if ((i - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee)) % (angles + 1) == 1) {
-                                            textRenderData.setText("/");
+                                            textRenderData.setText("鍒ゅ畾");
                                         } else {
                                             //缁撹
                                             if (products.get(0).getInsResult() == 1) {
@@ -1382,7 +1382,7 @@
                                     } else if (j == bb - 1) {
                                         //鏈�鍚庝竴鍒�
                                         if ((i - (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff)) % (angles + 1) == 1) {
-                                            textRenderData.setText("/");
+                                            textRenderData.setText("鍒ゅ畾");
                                         } else {
                                             //缁撹
                                             if (products.get(0).getInsResult() == 1) {
@@ -1487,7 +1487,7 @@
                                     //绗簲鍒�
                                     if ((i - (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg)) % (angles + 1) == 1) {
                                         //瑙掑害
-                                        textRenderData.setText("瑙掑害");
+                                        textRenderData.setText("棰戞");
                                     } else {
                                         //鍊�
                                         textRenderData.setText(result2s.get(0).getAngle().split(",")[(i + (angles - 1)) % (angles + 1)]);
@@ -1500,7 +1500,7 @@
                                 } else if (j == bb - 1) {
                                     //鏈�鍚庝竴鍒�
                                     if ((i - (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg)) % (angles + 1) == 1) {
-                                        textRenderData.setText("/");
+                                        textRenderData.setText("鍒ゅ畾");
                                     } else {
                                         //缁撹
                                         if (products.get(0).getInsResult() == 1) {
@@ -1597,7 +1597,7 @@
                                 } else if (j == bb - 1) {
                                     //鏈�鍚庝竴鍒�
                                     if ((i - (hh == 0 ? (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg) : hh)) % (angles + 1) == 1) {
-                                        textRenderData.setText("/");
+                                        textRenderData.setText("鍒ゅ畾");
                                     } else {
                                         //缁撹
                                         if (products.get(0).getInsResult() == 1) {
@@ -1690,7 +1690,7 @@
                                 } else if (j == bb - 1) {
                                     //鏈�鍚庝竴鍒�
                                     if ((i - (mm == 0 ? (hh == 0 ? (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg) : hh) : mm)) % (angles + 1) == 1) {
-                                        textRenderData.setText("/");
+                                        textRenderData.setText("鍒ゅ畾");
                                     } else {
                                         //缁撹
                                         if (products.get(0).getInsResult() == 1) {
@@ -1787,7 +1787,7 @@
                                     } else if (j == bb - 1) {
                                         //鏈�鍚庝竴鍒�
                                         if ((i - (nn == 0 ? (mm == 0 ? (hh == 0 ? (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg) : hh) : mm) : nn)) % (angles + 1) == 1) {
-                                            textRenderData.setText("/");
+                                            textRenderData.setText("鍒ゅ畾");
                                         } else {
                                             //缁撹
                                             if (products.get(0).getInsResult() == 1) {
@@ -1894,7 +1894,7 @@
                                     } else if (j == bb - 1) {
                                         //鏈�鍚庝竴鍒�
                                         if ((i - (pp == 0 ? (nn == 0 ? (mm == 0 ? (hh == 0 ? (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg) : hh) : mm) : nn) : pp)) % (angles + 1) == 1) {
-                                            textRenderData.setText("/");
+                                            textRenderData.setText("鍒ゅ畾");
                                         } else {
                                             //缁撹
                                             if (products.get(0).getInsResult() == 1) {
@@ -2001,7 +2001,7 @@
                                     } else if (j == bb - 1) {
                                         //鏈�鍚庝竴鍒�
                                         if ((i - rr) % (angles + 1) == 1) {
-                                            textRenderData.setText("/");
+                                            textRenderData.setText("鍒ゅ畾");
                                         } else {
                                             //缁撹
                                             if (products.get(0).getInsResult() == 1) {
@@ -2107,7 +2107,7 @@
                                     } else if (j == bb - 1) {
                                         //鏈�鍚庝竴鍒�
                                         if ((i - ss) % (angles + 1) == 1) {
-                                            textRenderData.setText("/");
+                                            textRenderData.setText("鍒ゅ畾");
                                         } else {
                                             //缁撹
                                             if (products.get(0).getInsResult() == 1) {
@@ -2578,31 +2578,57 @@
 
     //鐢熸垚鎬绘姤鍛�
     public void generateReport(Integer orderId, InsReportDto1 insReportDto1) {
-        LocalDateTime now = LocalDateTime.now();
         InsOrder insOrder = insOrderMapper.selectById(orderId);
-        //濮旀墭閮ㄩ棬 departLims
-        String departLims = userMapper.selectDepartLims(insOrder.getPrepareUser());
         SampleProductDto insSample = insSampleMapper.selectSampleProductListByOrderId(insReportDto1.getSampleId());
-        String sampleCode = insSample.getSampleCode();
+        SampleProductDto s = insSample;
+        List<InsProduct> insProducts = insProductMapper.selectList(Wrappers.<InsProduct>lambdaQuery()
+                .eq(InsProduct::getInsSampleId, insSample.getId())
+                .eq(InsProduct::getState, 1));
+        /*棣栭〉*/
+        //浜у搧鍚嶇О
+        String sampleName = insSample.getSample();
+        //鍨嬪彿瑙勬牸
+        int indexOf = s.getModel().indexOf("-");
+        String models = (indexOf!=-1?s.getModel().substring(indexOf + 1):s.getModel());
+        //濮旀墭鍗曚綅
+        Custom custom = customMapper.selectById(insOrder.getCompanyId());
+        //鎶ュ憡鍙戝竷鏃ユ湡
+        LocalDateTime now = LocalDateTime.now();
+        //鎶ュ憡缂栧彿
         InsReport insReport = new InsReport();
         insReport.setCode(giveCode.giveCode("TXJC-", "ins_report", "-", "yyMMdd"));
         insReport.setInsSampleId(insSample.getId());
         insReport.setInsOrderId(orderId);
-        Set<String> standardMethod = new HashSet<>();
-        Set<String> deviceSet = new HashSet<>();
-        Set<String> models = new HashSet<>();
 
+        /*妫�娴嬫姤鍛婃弿杩�*/
+        //鏍峰搧鍚嶇О,鍨嬪彿瑙勬牸,鏃堕棿鎸夌収棣栭〉鐨勬潵,order閲岄潰鐨勪俊鎭湁insOrder
+        //濮旀墭浜哄拰鐢佃瘽瀛楁鍒ゆ柇
+        if (ObjectUtils.isEmpty(insOrder.getPrepareUser())) {
+            insOrder.setPrepareUser("/");
+        }
+        if (ObjectUtils.isEmpty(insOrder.getPhone())) {
+            insOrder.setPhone("/");
+        }
+        //濮旀墭閮ㄩ棬
+        String departLims = userMapper.selectDepartLims(insOrder.getPrepareUser());
+        //鏍峰搧缂栧彿
+        String sampleCode = insSample.getSampleCode();
+        //妫�娴嬩緷鎹�
+        Set<String> standardMethod = new HashSet<>();
+        standardMethod.addAll(insProducts.stream()
+                .map(insProduct -> {
+                    String standardMethodName = standardMethodListMapper.getStandardMethodName(insProduct.getMethodS());
+                    return insProduct.getMethodS()+" "+standardMethodName;
+                }).distinct().collect(Collectors.toList()));
+        StringBuilder standardMethod2 = new StringBuilder();
+        for (String s1 : standardMethod) {
+            standardMethod2.append("锛沑n").append(s1);
+        }
+        standardMethod2.replace(0, 1, "");
+        //妫�娴嬬粨璁�
         AtomicReference<Integer> productSize = new AtomicReference<>(0);
         AtomicReference<Integer> productSize2 = new AtomicReference<>(0);
         AtomicReference<Integer> productSize3 = new AtomicReference<>(0);
-        String[] monthNames = {"January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"};
-        SampleProductDto s = insSample;
-        models.add(s.getModel());
-        List<InsProduct> insProducts = insProductMapper.selectList(Wrappers.<InsProduct>lambdaQuery()
-                .eq(InsProduct::getInsSampleId, insSample.getId())
-                .eq(InsProduct::getState, 1));
-        /*鏌ヨ鏍囧噯鏂规硶*/
-        standardMethod.addAll(insProducts.stream().map(InsProduct::getMethodS).distinct().collect(Collectors.toList()));
         //鎬绘暟
         long productCount = insProducts.size();
         //涓嶅悎鏍�
@@ -2641,79 +2667,47 @@
         productSize.set(productSize.get() + Integer.parseInt(productCount + ""));
         productSize2.set(productSize2.get() + Integer.parseInt(productCount2 + ""));
         productSize3.set(productSize3.get() + Integer.parseInt(productCount3 + ""));
-        //灏嗛」鐩寜鐓х珯鐐硅繘琛屽垎绫�
-        Map<String, List<InsProduct>> listMap = s.getInsProduct().stream().collect(Collectors.groupingBy(InsProduct::getSonLaboratory));
-        // 鍒涘缓涓�涓� Map 灏嗙珯鐐瑰拰椤圭洰ID鐨勬槧灏勫叧绯�
-        Map<String, Set<Integer>> labToDeviceMap = new HashMap<>();
-        // 鑾峰彇鎵�鏈夌珯鐐圭殑椤圭洰ID 鍒楄〃
-        for (Map.Entry<String, List<InsProduct>> entry : listMap.entrySet()) {
-            Set<Integer> productIds = entry.getValue().stream()
-                    .map(InsProduct::getId)
-                    .collect(Collectors.toSet());
-            labToDeviceMap.put(entry.getKey(), productIds);
-        }
-        for (InsReportDto2 insReportDto2 : insReportDto1.getInsReportDto2s()) {
-            String laboratory = insReportDto2.getLaboratory();
-            if (!labToDeviceMap.containsKey(laboratory)) {
-                continue;
+
+        /*妫�楠屾儏鍐典竴瑙堣〃*/
+        List<InsProductWordDto> insProductList = new ArrayList<>();
+        int index1=1;
+        for (InsProduct insPro : insProducts) {
+            InsProductWordDto insProductWordDto = new InsProductWordDto();
+            insProductWordDto.setIndex(index1+"");//搴忓彿
+            insProductWordDto.setTerm(insPro.getInspectionItem()+"-"+insPro.getInspectionItemSubclass());//妫�楠岄」鐩�
+            if (ObjectUtils.isNotNull(insPro.getInsResult()) && insPro.getInsResult()==0) {
+                insProductWordDto.setResult("涓嶅悎鏍�");//缁撹
+            } else {
+                insProductWordDto.setResult("鍚堟牸");//缁撹
             }
-            Set<Integer> productIds = labToDeviceMap.get(laboratory);
-            Integer num = insReportDto2.getNum();
-            //鏅�氳瘯楠岀粨鏋滆〃
-            List<InsProductResult> insProductResults = insProductResultMapper.selectList(
-                    Wrappers.<InsProductResult>lambdaQuery()
-                            .eq(InsProductResult::getNum, num)
-                            .in(InsProductResult::getInsProductId, productIds));
-            for (InsProductResult insProductResult : insProductResults) {
-                List<JSONObject> jsonObjects = JSON.parseArray(insProductResult.getEquipValue(), JSONObject.class);
-                if (ObjectUtils.isNotEmpty(jsonObjects)) {
-                    for (JSONObject jsonObject : jsonObjects) {
-                        String value = jsonObject.getString("v");
-                        if (value != null && !value.isEmpty()) {
-                            deviceSet.add(value);
-                        }
+            insProductList.add(insProductWordDto);
+            index1++;
+        }
+
+        /*妫�娴嬬粨鏋�*/
+        //鑾峰彇鎵�鏈夋楠岀殑绔欑偣淇℃伅
+        List<String> strings = insReportDto1.getInsReportDto2s().stream()
+                .map(InsReportDto2::getLaboratory).distinct().collect(Collectors.toList());
+        //鐢佃矾琛ㄦ牸
+        List<Map<String, Object>> tables2 = new ArrayList<>();
+        if (strings.contains("鐢佃矾璇曢獙")) {
+            /*鍕鹃�夌殑鐢佃矾璇曢獙琛�*/
+            for (InsReportDto2 insReportDto2 : insReportDto1.getInsReportDto2s()) {
+                InsOrderUser insOrderUser = insOrderUserMapper.selectById(insReportDto2.getInsOrderUsersId());
+                InsOrderState orderState = insOrderStateMapper.selectById(insOrderUser.getInsOrderStateId());
+                if (orderState.getLaboratory().equals("鐢佃矾璇曢獙")) {
+                    orderState.setNum(insOrderUser.getNum());
+                    if (!insOrder.getSampleType().equals("鏃犳簮鍣ㄤ欢")) {
+                        getWord1(insOrderUser.getTerm(), orderState, tables2);
+                    } else {
+                        getWord2(insOrderUser.getTerm(), orderState, tables2);
                     }
                 }
             }
-            //鐢佃矾璇曢獙缁撴灉琛�
-            List<InsProductResult2> insProductResult2s = insProductResult2Mapper.selectList(
-                    Wrappers.<InsProductResult2>lambdaQuery()
-                            .eq(InsProductResult2::getNum, num)
-                            .in(InsProductResult2::getInsProductId, productIds));
-            for (InsProductResult2 result2 : insProductResult2s) {
-                String equipValue = result2.getEquipValue();
-                if (equipValue != null && !equipValue.isEmpty()) {
-                    deviceSet.add(equipValue);
-                }
-            }
         }
-
-
-        /*妫�楠屾儏鍐典竴瑙堣〃*/
-        List<Map<String, String>> tables = new ArrayList<>();
-        List<Map<String, Object>> tables2 = new ArrayList<>();
+        //杈愬皠琛ㄦ牸
         List<Map<String, Object>> tables3 = new ArrayList<>();
-        List<Map<String, Object>> tables4 = new ArrayList<>();
-        Integer indexs = 1;
-        //鍒ゆ柇鏄惁鏈夌數璺瘯楠�,鐜璇曢獙
-        List<String> strings = insReportDto1.getInsReportDto2s().stream()
-                .map(InsReportDto2::getLaboratory).distinct().collect(Collectors.toList());
         if (strings.contains("杩戝満") || strings.contains("杩滃満")) {
-            Map<String, String> table = new HashMap<>();
-            table.put("indexs", indexs + "");
-            indexs += 1;
-            table.put("term", "杈愬皠鏂瑰悜鍥惧弬鏁�");
-            List<Integer> list = insProductMapper.selectList(Wrappers.<InsProduct>lambdaQuery()
-                    .eq(InsProduct::getState, 1)
-                    .eq(InsProduct::getInsSampleId, insSample.getId())
-                    .eq(InsProduct::getInspectionItem, "杈愬皠璇曢獙")).stream()
-                    .map(InsProduct::getInsResult).distinct().collect(Collectors.toList());
-            if (list.contains(0)) {
-                table.put("result", "涓嶅悎鏍�");
-            } else {
-                table.put("result", "鍚堟牸");
-            }
-            tables.add(table);
             /*杈愬皠鐨勮瘯楠岃〃*/
             List<InsOrderFile> insOrderFiles = insOrderFileMapper.selectList(Wrappers.<InsOrderFile>lambdaQuery()
                     .eq(InsOrderFile::getInsOrderId, orderId)
@@ -2817,469 +2811,275 @@
                 }
             }
         }
-        if (strings.contains("鐢佃矾璇曢獙")) {
-            strings.remove("鐢佃矾璇曢獙");
-            strings.remove("杩戝満");
-            strings.remove("杩滃満");
-            List<Integer> productIdes = insSample.getInsProduct().stream().map(InsProduct::getId).collect(Collectors.toList());
-            List<Integer> collect = insProductResult2Mapper.selectList(Wrappers.<InsProductResult2>lambdaQuery()
-                    .in(InsProductResult2::getInsProductId, productIdes))
-                    .stream().map(InsProductResult2::getResult).distinct().collect(Collectors.toList());
-            //濡傛灉鏈夌幆澧冭瘯楠�
-            if (strings.size() > 0) {
-                Map<String, String> table1 = new HashMap<>();
-                table1.put("indexs", indexs + "");
-                table1.put("term", "鐜璇曢獙鍓嶇數璺弬鏁�");
-                if (collect.contains(0)) {
-                    table1.put("result", "涓嶅悎鏍�");
-                } else {
-                    table1.put("result", "鍚堟牸");
-                }
-                tables.add(table1);
-                indexs += 1;
-
-                Map<String, String> table2 = new HashMap<>();
-                table2.put("indexs", "鐜璇曢獙:" + String.join("銆�", strings) + "鈭�1");
-                table2.put("term", "鐜璇曢獙:" + String.join("銆�", strings) + "鈭�1");
-                List<Integer> list = insProductMapper.selectList(Wrappers.<InsProduct>lambdaQuery()
-                        .eq(InsProduct::getState, 1)
-                        .eq(InsProduct::getInsSampleId,insSample.getId())
-                        .in(InsProduct::getSonLaboratory, strings)).stream()
-                        .map(InsProduct::getInsResult).distinct().collect(Collectors.toList());
-                if (list.contains(0)) {
-                    table2.put("result", "涓嶅悎鏍�");
-                } else {
-                    table2.put("result", "鍚堟牸");
-                }
-                tables.add(table2);
-
-                Map<String, String> table3 = new HashMap<>();
-                table3.put("indexs", indexs + "");
-                table3.put("term", "鐜璇曢獙鍚庣數璺弬鏁�");
-                if (collect.contains(0)) {
-                    table3.put("result", "涓嶅悎鏍�");
-                } else {
-                    table3.put("result", "鍚堟牸");
-                }
-                tables.add(table3);
-                indexs += 1;
-
-                /*鍒涘缓鐜璇曢獙鏉′欢琛�2*(椤圭洰鏁�+1)*/
-                List<InsProduct> products = insSample.getInsProduct().stream()
-                        .filter(insProduct -> !insProduct.getInspectionItem().equals("鐢佃矾璇曢獙"))
-                        .filter(insProduct -> !insProduct.getInspectionItem().equals("杈愬皠璇曢獙"))
-                        .map(insProduct -> {
-                            InsProduct product = new InsProduct();
-                            product.setInspectionItemSubclass(insProduct.getInspectionItemSubclass());
-                            product.setTell(insProduct.getTell());
-                            return product;
-                        }).distinct().collect(Collectors.toList());
-                List<RowRenderData> rows = new ArrayList<>();
-                //琛屾暟
-                for (int i = 0; i < products.size() + 1; i++) {
-                    RowRenderData rowRenderData = new RowRenderData();
-                    RowStyle rowStyle = new RowStyle();
-                    rowStyle.setHeight(40);
-                    rowRenderData.setRowStyle(rowStyle);
-                    List<CellRenderData> cells = new ArrayList<>();
-                    //鍒楁暟
-                    for (int j = 0; j < 3; j++) {
-                        CellRenderData cellRenderData = new CellRenderData();
-                        CellStyle cellStyle = new CellStyle();
-                        cellStyle.setVertAlign(XWPFTableCell.XWPFVertAlign.CENTER);
-                        cellRenderData.setCellStyle(cellStyle);
-                        List<ParagraphRenderData> paragraphRenderDataList = new ArrayList<>();
-                        ParagraphRenderData paragraphRenderData = new ParagraphRenderData();
-                        ParagraphStyle paragraphStyle = new ParagraphStyle();
-                        paragraphStyle.setAlign(ParagraphAlignment.CENTER);
-                        paragraphRenderData.setParagraphStyle(paragraphStyle);
-                        List<RenderData> renderData = new ArrayList<>();
-                        TextRenderData textRenderData = new TextRenderData();
-                        Style style = new Style();
-                        style.setFontFamily("瀹嬩綋");
-                        style.setColor("000000");
-                        textRenderData.setStyle(style);
-                        if (i == 0) {
-                            //绗竴琛�
-                            if (j == 0) {
-                                //绗竴鍒�
-                                textRenderData.setText("椤圭洰");
-                                renderData.add(textRenderData);
-                                paragraphRenderData.setContents(renderData);
-                                paragraphRenderDataList.add(paragraphRenderData);
-                                cellRenderData.setParagraphs(paragraphRenderDataList);
-                                cells.add(cellRenderData);
-                            } else if (j == 1) {
-                                //绗簩鍒�
-                                textRenderData.setText("璇曢獙瑕佹眰");
-                                renderData.add(textRenderData);
-                                paragraphRenderData.setContents(renderData);
-                                paragraphRenderDataList.add(paragraphRenderData);
-                                cellRenderData.setParagraphs(paragraphRenderDataList);
-                                cells.add(cellRenderData);
-                            } else {
-                                //绗笁鍒�
-                                textRenderData.setText("瀹為獙缁撴灉");
-                                renderData.add(textRenderData);
-                                paragraphRenderData.setContents(renderData);
-                                paragraphRenderDataList.add(paragraphRenderData);
-                                cellRenderData.setParagraphs(paragraphRenderDataList);
-                                cells.add(cellRenderData);
-                            }
-                        } else {
-                            //鍏朵綑琛�
-                            if (j == 0) {
-                                //绗竴鍒�
-                                textRenderData.setText(products.get(i - 1).getInspectionItemSubclass());
-                                renderData.add(textRenderData);
-                                paragraphRenderData.setContents(renderData);
-                                paragraphRenderDataList.add(paragraphRenderData);
-                                cellRenderData.setParagraphs(paragraphRenderDataList);
-                                cells.add(cellRenderData);
-                            } else if (j == 1) {
-                                textRenderData.setText(products.get(i - 1).getTell());
-                                renderData.add(textRenderData);
-                                paragraphRenderData.setContents(renderData);
-                                paragraphRenderDataList.add(paragraphRenderData);
-                                cellRenderData.setParagraphs(paragraphRenderDataList);
-                                cells.add(cellRenderData);
-                            } else {
-                                //绗笁鍒�
-                                //鑾峰彇妫�楠岄」鐩拰缁撹
-                                InsProduct insProduct = products.get(i - 1);
-                                String shiyanjieguo = "鏃犲紓甯�";
-                                if (ObjectUtils.isNotNull(insProduct.getInsResult())) {
-                                    shiyanjieguo = insProduct.getInsResult() == 0 ? "涓嶅悎鏍�" : "鏃犲紓甯�";
-                                }
-                                textRenderData.setText("缁忚繃" + insProduct.getInspectionItemSubclass() + "涔嬪悗锛屾牱鍝�" +shiyanjieguo + "銆�");
-                                renderData.add(textRenderData);
-                                paragraphRenderData.setContents(renderData);
-                                paragraphRenderDataList.add(paragraphRenderData);
-                                cellRenderData.setParagraphs(paragraphRenderDataList);
-                                cells.add(cellRenderData);
-                            }
-                        }
-                    }
-                    rowRenderData.setCells(cells);
-                    if (rowRenderData.getCells().size() != 0) {
-                        rows.add(rowRenderData);
-                    }
-                }
-                TableRenderData tableRenderData = new TableRenderData();
-                tableRenderData.setRows(rows);
-                int countSize = tableRenderData.getRows().get(0).getCells().size();
-                for (RowRenderData row : tableRenderData.getRows()) {
-                    if (row.getCells().size() != countSize) {
-                        throw new ErrorException("姣忚鍗曞厓鏍间笉鐩哥瓑");
-                    }
-                }
-                TableStyle tableStyle = new TableStyle();
-                tableStyle.setWidth(XWPFTable.DEFAULT_PERCENTAGE_WIDTH);
-                tableStyle.setAlign(TableRowAlign.CENTER);
-                BorderStyle borderStyle = new BorderStyle();
-                borderStyle.setColor("000000");
-                borderStyle.setType(XWPFTable.XWPFBorderType.THICK);
-                borderStyle.setSize(4);
-                tableStyle.setLeftBorder(borderStyle);
-                tableStyle.setTopBorder(borderStyle);
-                tableStyle.setRightBorder(borderStyle);
-                tableStyle.setBottomBorder(borderStyle);
-                tableRenderData.setTableStyle(tableStyle);
-                Map<String, Object> table4 = new HashMap<>();
-                table4.put("table4", tableRenderData);
-                tables4.add(table4);
-            }
-            else {
-                Map<String, String> table = new HashMap<>();
-                table.put("indexs", indexs + "");
-                table.put("term", "鐢佃矾鍙傛暟");
-                if (collect.contains(0)) {
-                    table.put("result", "涓嶅悎鏍�");
-                } else {
-                    table.put("result", "鍚堟牸");
-                }
-                tables.add(table);
-                indexs += 1;
-            }
-            /*鍕鹃�夌殑鐢佃矾璇曢獙琛�*/
-            for (InsReportDto2 insReportDto2 : insReportDto1.getInsReportDto2s()) {
-                InsOrderUser insOrderUser = insOrderUserMapper.selectById(insReportDto2.getInsOrderUsersId());
-                InsOrderState orderState = insOrderStateMapper.selectById(insOrderUser.getInsOrderStateId());
-                if (orderState.getLaboratory().equals("鐢佃矾璇曢獙")) {
-                    orderState.setNum(insOrderUser.getNum());
-                    if (!insOrder.getSampleType().equals("鏃犳簮鍣ㄤ欢")) {
-                        getWord1(insOrderUser.getTerm(), orderState, tables2);
-                    } else {
-                        getWord2(insOrderUser.getTerm(), orderState, tables2);
-                    }
-                }
-            }
-        }
-        else {
-            //濡傛灉鍙湁鐜璇曢獙娌℃湁鐢佃矾璇曢獙
-            strings.remove("杩戝満");
-            strings.remove("杩滃満");
-            if (strings.size() > 0) {
-                Map<String, String> table2 = new HashMap<>();
-                table2.put("indexs", "鐜璇曢獙:" + String.join("銆�", strings) + "鈭�1");
-                table2.put("term", "鐜璇曢獙:" + String.join("銆�", strings) + "鈭�1");
-                List<Integer> list = insProductMapper.selectList(Wrappers.<InsProduct>lambdaQuery()
-                        .eq(InsProduct::getState, 1)
-                        .eq(InsProduct::getInsSampleId,insSample.getId())
-                        .in(InsProduct::getSonLaboratory, strings)).stream()
-                        .map(InsProduct::getInsResult).distinct().collect(Collectors.toList());
-                if (list.contains(0)) {
-                    table2.put("result", "涓嶅悎鏍�");
-                } else {
-                    table2.put("result", "鍚堟牸");
-                }
-                tables.add(table2);
-
-                /*鍒涘缓鐜璇曢獙鏉′欢琛�2*(椤圭洰鏁�+1)*/
-                List<InsProduct> products = insSample.getInsProduct().stream()
-                        .filter(insProduct -> !insProduct.getInspectionItem().equals("鐢佃矾璇曢獙"))
-                        .filter(insProduct -> !insProduct.getInspectionItem().equals("杈愬皠璇曢獙"))
-                        .map(insProduct -> {
-                            InsProduct product = new InsProduct();
-                            product.setInspectionItemSubclass(insProduct.getInspectionItemSubclass());
-                            product.setTell(insProduct.getTell());
-                            return product;
-                        }).distinct().collect(Collectors.toList());
-                List<RowRenderData> rows = new ArrayList<>();
-                //琛屾暟
-                for (int i = 0; i < products.size() + 1; i++) {
-                    RowRenderData rowRenderData = new RowRenderData();
-                    RowStyle rowStyle = new RowStyle();
-                    rowStyle.setHeight(40);
-                    rowRenderData.setRowStyle(rowStyle);
-                    List<CellRenderData> cells = new ArrayList<>();
-                    //鍒楁暟
-                    for (int j = 0; j < 3; j++) {
-                        CellRenderData cellRenderData = new CellRenderData();
-                        CellStyle cellStyle = new CellStyle();
-                        cellStyle.setVertAlign(XWPFTableCell.XWPFVertAlign.CENTER);
-                        cellRenderData.setCellStyle(cellStyle);
-                        List<ParagraphRenderData> paragraphRenderDataList = new ArrayList<>();
-                        ParagraphRenderData paragraphRenderData = new ParagraphRenderData();
-                        ParagraphStyle paragraphStyle = new ParagraphStyle();
-                        paragraphStyle.setAlign(ParagraphAlignment.CENTER);
-                        paragraphRenderData.setParagraphStyle(paragraphStyle);
-                        List<RenderData> renderData = new ArrayList<>();
-                        TextRenderData textRenderData = new TextRenderData();
-                        Style style = new Style();
-                        style.setFontFamily("瀹嬩綋");
-                        style.setColor("000000");
-                        textRenderData.setStyle(style);
-                        if (i == 0) {
-                            //绗竴琛�
-                            if (j == 0) {
-                                //绗竴鍒�
-                                textRenderData.setText("椤圭洰");
-                                renderData.add(textRenderData);
-                                paragraphRenderData.setContents(renderData);
-                                paragraphRenderDataList.add(paragraphRenderData);
-                                cellRenderData.setParagraphs(paragraphRenderDataList);
-                                cells.add(cellRenderData);
-                            } else if (j == 1) {
-                                //绗簩鍒�
-                                textRenderData.setText("璇曢獙瑕佹眰");
-                                renderData.add(textRenderData);
-                                paragraphRenderData.setContents(renderData);
-                                paragraphRenderDataList.add(paragraphRenderData);
-                                cellRenderData.setParagraphs(paragraphRenderDataList);
-                                cells.add(cellRenderData);
-                            } else {
-                                //绗笁鍒�
-                                textRenderData.setText("瀹為獙缁撴灉");
-                                renderData.add(textRenderData);
-                                paragraphRenderData.setContents(renderData);
-                                paragraphRenderDataList.add(paragraphRenderData);
-                                cellRenderData.setParagraphs(paragraphRenderDataList);
-                                cells.add(cellRenderData);
-                            }
-                        } else {
-                            //鍏朵綑琛�
-                            if (j == 0) {
-                                //绗竴鍒�
-                                textRenderData.setText(products.get(i - 1).getInspectionItemSubclass());
-                                renderData.add(textRenderData);
-                                paragraphRenderData.setContents(renderData);
-                                paragraphRenderDataList.add(paragraphRenderData);
-                                cellRenderData.setParagraphs(paragraphRenderDataList);
-                                cells.add(cellRenderData);
-                            } else if (j == 1) {
-                                //绗簩鍒�
-                                textRenderData.setText(products.get(i - 1).getTell());
-                                renderData.add(textRenderData);
-                                paragraphRenderData.setContents(renderData);
-                                paragraphRenderDataList.add(paragraphRenderData);
-                                cellRenderData.setParagraphs(paragraphRenderDataList);
-                                cells.add(cellRenderData);
-                            } else {
-                                //绗笁鍒�
-                                //鑾峰彇妫�楠岄」鐩拰缁撹
-                                InsProduct insProduct = products.get(i - 1);
-                                String shiyanjieguo = "鏃犲紓甯�";
-                                if (ObjectUtils.isNotNull(insProduct.getInsResult())) {
-                                    shiyanjieguo = insProduct.getInsResult() == 0 ? "涓嶅悎鏍�" : "鏃犲紓甯�";
-                                }
-                                textRenderData.setText("缁忚繃" + insProduct.getInspectionItemSubclass() + "涔嬪悗锛屾牱鍝�" + shiyanjieguo + "銆�");
-                                renderData.add(textRenderData);
-                                paragraphRenderData.setContents(renderData);
-                                paragraphRenderDataList.add(paragraphRenderData);
-                                cellRenderData.setParagraphs(paragraphRenderDataList);
-                                cells.add(cellRenderData);
-                            }
-                        }
-                    }
-                    rowRenderData.setCells(cells);
-                    if (rowRenderData.getCells().size() != 0) {
-                        rows.add(rowRenderData);
-                    }
-                }
-                TableRenderData tableRenderData = new TableRenderData();
-                tableRenderData.setRows(rows);
-                int countSize = tableRenderData.getRows().get(0).getCells().size();
-                for (RowRenderData row : tableRenderData.getRows()) {
-                    if (row.getCells().size() != countSize) {
-                        throw new ErrorException("姣忚鍗曞厓鏍间笉鐩哥瓑");
-                    }
-                }
-                TableStyle tableStyle = new TableStyle();
-                tableStyle.setWidth(XWPFTable.DEFAULT_PERCENTAGE_WIDTH);
-                tableStyle.setAlign(TableRowAlign.CENTER);
-                BorderStyle borderStyle = new BorderStyle();
-                borderStyle.setColor("000000");
-                borderStyle.setType(XWPFTable.XWPFBorderType.THICK);
-                borderStyle.setSize(4);
-                tableStyle.setLeftBorder(borderStyle);
-                tableStyle.setTopBorder(borderStyle);
-                tableStyle.setRightBorder(borderStyle);
-                tableStyle.setBottomBorder(borderStyle);
-                tableRenderData.setTableStyle(tableStyle);
-                Map<String, Object> table4 = new HashMap<>();
-                table4.put("table4", tableRenderData);
-                tables4.add(table4);
-            }
-        }
-        ZipSecureFile.setMinInflateRatio(0.0001);
-        InputStream inputStream = this.getClass().getResourceAsStream("/static/report-template.docx");
-        StringBuilder standardMethod2 = new StringBuilder();
-        for (String s1 : standardMethod) {
-            standardMethod2.append("锛沑n").append(s1);
-        }
-        standardMethod2.replace(0, 1, "");
-        List<Map<String, String>> deviceList = null;
-        if (deviceSet.size() != 0) {
-            deviceList = insOrderMapper.selectDeviceList(deviceSet);
-        }
-        Map<String, String> codeStr = new HashMap<>();
-        codeStr.put("鎶ュ憡缂栧彿", insReport.getCode());
-        codeStr.put("鏍峰搧鍚嶇О", insSample.getSample());
-        codeStr.put("瑙勬牸鍨嬪彿", insSample.getModel());
-        codeStr.put("鍙戞斁鏃ユ湡", now.format(DateTimeFormatter.ofPattern("yyyy-MM-dd")));
-        String codePath;
-        try {
-            codePath = new MatrixToImageWriter().code(JackSonUtil.marshal(codeStr).replaceAll("\\{", "")
-                    .replaceAll("}", "").replaceAll(",", "").replaceAll("\"", ""), twoCode);
-        } catch (Exception e) {
-            throw new RuntimeException(e);
-        }
-        String modelStr = "";
-        for (String model : models) {
-            modelStr += "," + model;
-        }
-        String finalModelStr = modelStr;
-        String sampleEn = insSampleMapper.getSampleEn(insOrder.getSample());
-        String orderType = insOrderMapper.getEnumLabelByValue(insOrder.getOrderType());
-        String formType = insOrderMapper.getEnumLabelByValue(insOrder.getFormType());
-        ConfigureBuilder builder = Configure.builder();
-        builder.useSpringEL(true);
-        List<Map<String, String>> finalDeviceList = deviceList;
-        List<Map<String, String>> sampleList = insSampleMapper.selectSampleList(orderId);
-        Integer userId = insSampleUserMapper.selectOne(Wrappers.<InsSampleUser>lambdaQuery()
-                .eq(InsSampleUser::getInsSampleId, insReportDto1.getSampleId())
-                .eq(InsSampleUser::getState, 0)
-                .last("limit 1")).getUserId();
-        String signatureUrl;
-        try {
-            signatureUrl = userMapper.selectById(userId).getSignatureUrl();
-        } catch (Exception e) {
-            throw new ErrorException("鎵句笉鍒版楠屼汉鐨勭鍚�");
-        }
-        if (ObjectUtils.isEmpty(signatureUrl) || signatureUrl.equals("")) {
-            throw new ErrorException("鎵句笉鍒版楠屼汉鐨勭鍚�");
-        }
-        Custom custom = customMapper.selectById(insOrder.getCompanyId());
-
-        /*鑾峰彇闄勪欢鍥剧墖绫诲瀷*/
-        List<Map<String, Object>> images = new ArrayList<>();
-        List<InsOrderFile> insOrderFiles = insOrderFileMapper.selectList(Wrappers.<InsOrderFile>lambdaQuery().eq(InsOrderFile::getType, 1).eq(InsOrderFile::getInsOrderId, orderId));
-        if (CollectionUtils.isNotEmpty(insOrderFiles)) {
-            insOrderFiles.forEach(insOrderFile -> {
-                Map<String, Object> image = new HashMap<>();
-                PictureRenderData pictureRenderData = Pictures.ofLocal(imgUrl + "/" + insOrderFile.getFileUrl()).sizeInCm(17, 20).create();
-                image.put("url", pictureRenderData);
-                image.put("report", insReport);
-                images.add(image);
-            });
-        }
-        //濮旀墭浜哄拰鐢佃瘽瀛楁鍒ゆ柇
-        if (ObjectUtils.isEmpty(insOrder.getPrepareUser())) {
-            insOrder.setPrepareUser("/");
-        }
-        if (ObjectUtils.isEmpty(insOrder.getPhone())) {
-            insOrder.setPhone("/");
-        }
-        //妫�楠岄」鐩殑鐜
-        InsProduct insProduct = insProducts.get(0);
-        String environment = "";
-        environment = (ObjectUtils.isNotEmpty(insProduct.getTemperature()) ? insProduct.getTemperature() + "鈩� " : "") + (ObjectUtils.isNotEmpty(insProduct.getHumidity()) ? insProduct.getHumidity() + "%" : "");
-        String finalEnvironment = environment;
+        //杈愬皠鐨勬爣棰�
         String title3 = "";
         if (tables3.size() > 0) {
             title3 = "杈愬皠鏂瑰悜鍥惧弬鏁�";
         }
+        //鐜琛ㄦ牸
+        List<Map<String, Object>> tables4 = new ArrayList<>();
+        //鍒涘缓鐜璇曢獙鏉′欢琛�2*(椤圭洰鏁�+1)
+        List<InsProduct> products = insSample.getInsProduct().stream()
+                .filter(insProduct -> !insProduct.getInspectionItem().equals("鐢佃矾璇曢獙"))
+                .filter(insProduct -> !insProduct.getInspectionItem().equals("杈愬皠璇曢獙"))
+                .map(insProduct -> {
+                    InsProduct product = new InsProduct();
+                    product.setInspectionItemSubclass(insProduct.getInspectionItemSubclass());
+                    product.setTell(insProduct.getTell());
+                    return product;
+                }).distinct().collect(Collectors.toList());
+        if (products.size()>0) {
+            List<RowRenderData> rows = new ArrayList<>();
+            //琛屾暟
+            for (int i = 0; i < products.size() + 1; i++) {
+                RowRenderData rowRenderData = new RowRenderData();
+                RowStyle rowStyle = new RowStyle();
+                rowStyle.setHeight(40);
+                rowRenderData.setRowStyle(rowStyle);
+                List<CellRenderData> cells = new ArrayList<>();
+                //鍒楁暟
+                for (int j = 0; j < 3; j++) {
+                    CellRenderData cellRenderData = new CellRenderData();
+                    CellStyle cellStyle = new CellStyle();
+                    cellStyle.setVertAlign(XWPFTableCell.XWPFVertAlign.CENTER);
+                    cellRenderData.setCellStyle(cellStyle);
+                    List<ParagraphRenderData> paragraphRenderDataList = new ArrayList<>();
+                    ParagraphRenderData paragraphRenderData = new ParagraphRenderData();
+                    ParagraphStyle paragraphStyle = new ParagraphStyle();
+                    paragraphStyle.setAlign(ParagraphAlignment.CENTER);
+                    paragraphRenderData.setParagraphStyle(paragraphStyle);
+                    List<RenderData> renderData = new ArrayList<>();
+                    TextRenderData textRenderData = new TextRenderData();
+                    Style style = new Style();
+                    style.setFontFamily("瀹嬩綋");
+                    style.setColor("000000");
+                    textRenderData.setStyle(style);
+                    if (i == 0) {
+                        //绗竴琛�
+                        if (j == 0) {
+                            //绗竴鍒�
+                            textRenderData.setText("椤圭洰");
+                            renderData.add(textRenderData);
+                            paragraphRenderData.setContents(renderData);
+                            paragraphRenderDataList.add(paragraphRenderData);
+                            cellRenderData.setParagraphs(paragraphRenderDataList);
+                            cells.add(cellRenderData);
+                        } else if (j == 1) {
+                            //绗簩鍒�
+                            textRenderData.setText("璇曢獙瑕佹眰");
+                            renderData.add(textRenderData);
+                            paragraphRenderData.setContents(renderData);
+                            paragraphRenderDataList.add(paragraphRenderData);
+                            cellRenderData.setParagraphs(paragraphRenderDataList);
+                            cells.add(cellRenderData);
+                        } else {
+                            //绗笁鍒�
+                            textRenderData.setText("瀹為獙缁撴灉");
+                            renderData.add(textRenderData);
+                            paragraphRenderData.setContents(renderData);
+                            paragraphRenderDataList.add(paragraphRenderData);
+                            cellRenderData.setParagraphs(paragraphRenderDataList);
+                            cells.add(cellRenderData);
+                        }
+                    } else {
+                        //鍏朵綑琛�
+                        if (j == 0) {
+                            //绗竴鍒�
+                            textRenderData.setText(products.get(i - 1).getInspectionItemSubclass());
+                            renderData.add(textRenderData);
+                            paragraphRenderData.setContents(renderData);
+                            paragraphRenderDataList.add(paragraphRenderData);
+                            cellRenderData.setParagraphs(paragraphRenderDataList);
+                            cells.add(cellRenderData);
+                        } else if (j == 1) {
+                            //绗簩鍒�
+                            textRenderData.setText(products.get(i - 1).getTell());
+                            renderData.add(textRenderData);
+                            paragraphRenderData.setContents(renderData);
+                            paragraphRenderDataList.add(paragraphRenderData);
+                            cellRenderData.setParagraphs(paragraphRenderDataList);
+                            cells.add(cellRenderData);
+                        } else {
+                            //绗笁鍒�
+                            //鑾峰彇妫�楠岄」鐩拰缁撹
+                            InsProduct insProduct = products.get(i - 1);
+                            String shiyanjieguo = "鏃犲紓甯�";
+                            if (ObjectUtils.isNotNull(insProduct.getInsResult())) {
+                                shiyanjieguo = insProduct.getInsResult() == 0 ? "涓嶅悎鏍�" : "鏃犲紓甯�";
+                            }
+                            textRenderData.setText("缁忚繃" + insProduct.getInspectionItemSubclass() + "涔嬪悗锛屾牱鍝�" + shiyanjieguo + "銆�");
+                            renderData.add(textRenderData);
+                            paragraphRenderData.setContents(renderData);
+                            paragraphRenderDataList.add(paragraphRenderData);
+                            cellRenderData.setParagraphs(paragraphRenderDataList);
+                            cells.add(cellRenderData);
+                        }
+                    }
+                }
+                rowRenderData.setCells(cells);
+                if (rowRenderData.getCells().size() != 0) {
+                    rows.add(rowRenderData);
+                }
+            }
+            TableRenderData tableRenderData = new TableRenderData();
+            tableRenderData.setRows(rows);
+            int countSize = tableRenderData.getRows().get(0).getCells().size();
+            for (RowRenderData row : tableRenderData.getRows()) {
+                if (row.getCells().size() != countSize) {
+                    throw new ErrorException("姣忚鍗曞厓鏍间笉鐩哥瓑");
+                }
+            }
+            TableStyle tableStyle = new TableStyle();
+            tableStyle.setWidth(XWPFTable.DEFAULT_PERCENTAGE_WIDTH);
+            tableStyle.setAlign(TableRowAlign.CENTER);
+            BorderStyle borderStyle = new BorderStyle();
+            borderStyle.setColor("000000");
+            borderStyle.setType(XWPFTable.XWPFBorderType.THICK);
+            borderStyle.setSize(4);
+            tableStyle.setLeftBorder(borderStyle);
+            tableStyle.setTopBorder(borderStyle);
+            tableStyle.setRightBorder(borderStyle);
+            tableStyle.setBottomBorder(borderStyle);
+            tableRenderData.setTableStyle(tableStyle);
+            Map<String, Object> table4 = new HashMap<>();
+            table4.put("table4", tableRenderData);
+            tables4.add(table4);
+        }
+
+        /*妫�楠屾牱鍝佷俊鎭�*/
+        //鏍峰搧鐓х墖
+        //鑾峰彇闄勪欢鍥剧墖绫诲瀷
+        List<List<Map<String, Object>>> imageRows = new ArrayList<>();
+        List<Map<String, Object>> currentRow = new ArrayList<>();
+        List<InsOrderFile> insOrderFiles = insOrderFileMapper.selectList(Wrappers.<InsOrderFile>lambdaQuery()
+                .eq(InsOrderFile::getType, 1)
+                .eq(InsOrderFile::getInsSampleId,insReportDto1.getSampleId())
+                .eq(InsOrderFile::getInsOrderId, orderId));
+        if (CollectionUtils.isNotEmpty(insOrderFiles)) {
+            for (int i = 0; i < insOrderFiles.size(); i++) {
+                Map<String, Object> image = new HashMap<>();
+                PictureRenderData pictureRenderData = Pictures.ofLocal(imgUrl + "/" + insOrderFiles.get(i).getFileUrl()).sizeInCm(8, 10).create();
+                image.put("url", pictureRenderData);
+                currentRow.add(image);
+                if ((i + 1) % 2 == 0 || i == insOrderFiles.size() - 1) {
+                    imageRows.add(currentRow);
+                    currentRow = new ArrayList<>();
+                }
+            }
+            // 濡傛灉鏈�鍚庝竴琛屼笉瓒充袱涓紝涔熸坊鍔犲埌缁撴灉涓�
+            if (!currentRow.isEmpty()) {
+                imageRows.add(currentRow);
+            }
+        }
+        //鏍峰搧缂栧彿鍙傜収涓婅堪sampleCode
+
+
+        /*妫�娴嬩汉鍛樹俊鎭�*/
+        List<InsUserDto> insUsers = new ArrayList<>();
+        //鏌ヨ姣忎釜绔欑偣鐨勬楠屼汉鍛樹笌澶嶆牳浜哄憳
+        List<InsSampleUser> insSampleUsers = insSampleUserMapper.selectList(Wrappers.<InsSampleUser>lambdaQuery()
+                .eq(InsSampleUser::getInsSampleId, insReportDto1.getSampleId()));
+        //鏍规嵁绔欑偣杩涜鍒嗙被
+        Map<String, List<InsSampleUser>> listMap = insSampleUsers.stream().collect(Collectors.groupingBy(InsSampleUser::getSonLaboratory));
+        int index2=1;
+        for (Map.Entry<String, List<InsSampleUser>> entry : listMap.entrySet()) {
+            InsUserDto insUserDto = new InsUserDto();
+            insUserDto.setIndex(index2+"");//搴忓彿
+            insUserDto.setInsProduct(entry.getKey());//椤圭洰
+            List<InsSampleUser> insUserList = entry.getValue().stream().filter(insSampleUser -> insSampleUser.getState() == 0).collect(Collectors.toList());//妫�楠屼汉
+            String insUser = insUserList.stream().map(insSampleUser -> {
+                User user = userMapper.selectById(insSampleUser.getUserId());
+                return user.getName();
+            }).collect(Collectors.joining(","));
+            insUserDto.setInsUser(insUser);//娴嬭瘯浜哄憳
+            List<InsSampleUser> checkUserList = entry.getValue().stream().filter(insSampleUser -> insSampleUser.getState() == 1).collect(Collectors.toList());//澶嶆牳浜�
+            String checkUser = checkUserList.stream().map(insSampleUser -> {
+                User user = userMapper.selectById(insSampleUser.getUserId());
+                return user.getName();
+            }).collect(Collectors.joining(","));
+            insUserDto.setCheckUser(checkUser);//瀹℃牳浜哄憳
+            insUsers.add(insUserDto);
+            index2++;
+        }
+
+
+
+
+        /*娴嬭瘯浠〃*/
+        Set<String> deviceSet = new HashSet<>();
+        //鏌ヨ鎵�鏈夐」鐩殑璁惧
+        List<Integer> productIds = insProducts.stream().map(InsProduct::getId).collect(Collectors.toList());
+        //鏅��
+        List<InsProductResult> results = insProductResultMapper.selectList(Wrappers.<InsProductResult>lambdaQuery()
+                .in(InsProductResult::getInsProductId, productIds));
+        if (results.size()>0){
+            for (InsProductResult result : results) {
+                List<JSONObject> jsonObjects = JSON.parseArray(result.getEquipValue(), JSONObject.class);
+                if (ObjectUtils.isNotEmpty(jsonObjects)) {
+                    for (JSONObject jsonObject : jsonObjects) {
+                        String value = jsonObject.getString("v");
+                        if (value != null && !value.isEmpty()) {
+                            deviceSet.add(value);
+                        }
+                    }
+                }
+            }
+        }
+        //鐢佃矾
+        List<InsProductResult2> result2s = insProductResult2Mapper.selectList(Wrappers.<InsProductResult2>lambdaQuery()
+                .in(InsProductResult2::getInsProductId, productIds));
+        if (result2s.size()>0){
+            for (InsProductResult2 result2 : result2s) {
+                String equipValue = result2.getEquipValue();
+                if (equipValue != null && !equipValue.isEmpty()) {
+                    deviceSet.add(equipValue);
+                }
+            }
+        }
+        List<DevListDto> devList = new ArrayList<>();
+        if (deviceSet.size() != 0) {
+            devList = insOrderMapper.selectDeviceList(deviceSet);
+        }
+
+        /*鐢熸垚鎶ュ憡*/
+        ZipSecureFile.setMinInflateRatio(0.0001);
+        InputStream inputStream = this.getClass().getResourceAsStream("/static/report-template.docx");
+        Configure configure = Configure.builder()
+                .bind("insProductList", new HackLoopTableRenderPolicy())
+                .bind("devList", new HackLoopTableRenderPolicy())
+                .bind("insUsers", new HackLoopTableRenderPolicy())
+                .build();
+        List<DevListDto> finalDevList = devList;
         String finalTitle = title3;
-        XWPFTemplate template = XWPFTemplate.compile(inputStream, builder.build()).render(
+        XWPFTemplate template = XWPFTemplate.compile(inputStream, configure).render(
                 new HashMap<String, Object>() {{
-                    put("order", insOrder);
-                    put("report", insReport);
-                    put("departLims", departLims);
-                    put("sampleCode", sampleCode);
-                    put("environment", finalEnvironment);
-                    put("custom", custom);
-                    put("sampleSize", "1");
-                    put("standardMethod", (standardMethod2.toString().equals("null") ? "" : standardMethod2));
-                    put("deviceList", finalDeviceList);
-                    put("tables", tables);
-                    put("tables2", tables2);
-                    put("title3", finalTitle);
-                    put("tables3", tables3);
-                    put("tables4", tables4);
-                    put("sampleList", sampleList);
-                    put("twoCode", Pictures.ofLocal(codePath).create());
-                    put("models", finalModelStr.replace(",", ""));
-                    put("productSize", productSize);
-                    put("productSize2", productSize2);
-                    put("productSize3", productSize3);
-                    put("createTime", now.format(DateTimeFormatter.ofPattern("yyyy骞碝M鏈坉d鏃�")));
-//                    put("createTimeEn", monthNames[now.getMonthValue() - 1] + " " + now.getDayOfMonth() + ", " + now.getYear());
-                    put("insTime", insOrder.getInsTime().format(DateTimeFormatter.ofPattern("yyyy骞碝M鏈坉d鏃�")));
-                    put("insTimeEn", monthNames[insOrder.getInsTime().getMonthValue() - 1] + " " + insOrder.getInsTime().getDayOfMonth() + ", " + insOrder.getInsTime().getYear());
-                    put("writeUrl", null);
-                    put("insUrl", Pictures.ofLocal(imgUrl + "/" + signatureUrl).create());
-                    put("images", images);
-                    put("examineUrl", null);
-                    put("ratifyUrl", null);
-                    put("sampleEn", sampleEn);
-                    put("orderType", orderType);
-                    put("getTime", insOrder.getExamineTime().format(DateTimeFormatter.ofPattern("yyyy骞碝M鏈坉d鏃�")));
-                    put("getTimeEn", monthNames[insOrder.getExamineTime().getMonthValue() - 1] + " " + insOrder.getExamineTime().getDayOfMonth() + ", " + insOrder.getExamineTime().getYear());
-                    put("seal1", null);
-                    put("seal2", null);
-                    put("formTypeCh", formType);
-                    put("formTypeEn", insOrder.getFormType());
+                    put("sampleName", sampleName);  //浜у搧鍚嶇О
+                    put("models",models);           //鍨嬪彿瑙勬牸
+                    put("custom", custom);          //濮旀墭鍗曚綅
+                    put("createTime", now.format(DateTimeFormatter.ofPattern("yyyy骞碝M鏈坉d鏃�")));   //鎶ュ憡鍙戝竷鏃ユ湡
+                    put("departLims", departLims);   //濮旀墭閮ㄩ棬
+                    put("sampleCode", sampleCode);     //鏍峰搧缂栧彿
+                    put("order", insOrder);         //璁㈠崟涓讳綋淇℃伅
+                    put("getTime", insOrder.getExamineTime().format(DateTimeFormatter.ofPattern("yyyy骞碝M鏈坉d鏃�")));  //鏉ユ牱鏃ユ湡
+                    put("insTime", insOrder.getInsTime().format(DateTimeFormatter.ofPattern("yyyy骞碝M鏈坉d鏃�")));       //妫�娴嬫棩鏈�
+                    put("standardMethod", (standardMethod2.toString().equals("null") ? "" : standardMethod2));     //妫�娴嬩緷鎹�
+                    put("productSize", productSize);        //妫�娴嬬粨璁�
+                    put("productSize2", productSize2);          //妫�娴嬬粨璁�
+                    put("productSize3", productSize3);          //妫�娴嬬粨璁�
+                    put("report", insReport);                   //鎶ュ憡缂栧彿
+                    put("insProductList", insProductList);      //妫�楠屾儏鍐典竴瑙堣〃
+                    put("tables2", tables2);                    //妫�娴嬬粨鏋�
+                    put("title3", finalTitle);                  //妫�娴嬬粨鏋�
+                    put("tables3", tables3);                    //妫�娴嬬粨鏋�
+                    put("tables4", tables4);                    //妫�娴嬬粨鏋�
+                    put("images", imageRows);                   //鏍峰搧鐓х墖
+                    put("insUsers", insUsers);                //妫�娴嬩汉鍛樹俊鎭�
+                    put("devList", finalDevList);                //娴嬭瘯浠〃
+                    put("writeUrl", null);                      //鎻愪氦浜�
+                    put("examineUrl", null);                    //瀹℃牳浜�
+                    put("ratifyUrl", null);                     //鎵瑰噯浜�
+                    put("seal1", null);                         //鍗扮珷
+                    put("seal2", null);                         //鍗扮珷
                 }});
         try {
             ZipSecureFile.setMinInflateRatio(0.0001);
@@ -3299,7 +3099,7 @@
             FileInputStream stream = new FileInputStream(path);
             XWPFDocument document = new XWPFDocument(stream);
             List<XWPFTable> xwpfTables = document.getTables();
-            for (int i = 1; i < xwpfTables.size() - (deviceList == null ? 1 : 2); i++) {
+            for (int i = 1; i < xwpfTables.size() - (devList == null ? 1 : 2); i++) {
                 Set<String> set1 = new HashSet<>();
                 Map<String, Map<String, Integer>> maps = new HashMap<>();
                 for (int j = 0; j < xwpfTables.get(i).getRows().size(); j++) {
@@ -3371,7 +3171,7 @@
             FileInputStream stream1 = new FileInputStream(path);
             XWPFDocument document1 = new XWPFDocument(stream1);
             List<XWPFTable> xwpfTables1 = document1.getTables();
-            for (int i = 1; i < xwpfTables1.size() - (deviceList == null ? 1 : 2); i++) {
+            for (int i = 1; i < xwpfTables1.size() - (devList == null ? 1 : 2); i++) {
                 for (int j = 0; j < xwpfTables1.get(i).getRows().size(); j++) {
                     for (int k = 0; k < xwpfTables1.get(i).getRows().get(j).getTableCells().size(); k++) {
                         if (xwpfTables1.get(i).getRows().get(j).getTableCells().get(k).getText().contains("@")) {
@@ -3396,6 +3196,19 @@
         } catch (FileNotFoundException e) {
             throw new RuntimeException(e);
         } catch (IOException e) {
+            throw new RuntimeException(e);
+        }
+        //鐩綍鏇存柊
+        try{
+            com.spire.doc.Document document = new com.spire.doc.Document();
+            document.loadFromFile(path);
+            // 鏇存柊鐩綍
+            document.updateTableOfContents();
+            // 淇濆瓨鏂囨。
+            document.saveToFile(path, FileFormat.Docx);
+            document.close();
+        }
+        catch (Exception e) {
             throw new RuntimeException(e);
         }
     }
@@ -3459,7 +3272,8 @@
                 if (inspectionItemSubclass.contains("浜掕皟")) {
                     aa += (angles + 1) * portRow * often;
                 }
-            } else {
+            }
+            else {
                 if (inspectionItemSubclass.contains("鐢靛帇椹绘尝姣�")) {
                     aa += (angles + 1) * portRow;
                 }
@@ -3551,7 +3365,7 @@
             int qq = 0;
             int ss = 0;
             //琛ㄦ牸鐨勮鏁�
-            for (int i = 0; i <= aa; i++) {
+            for (int i = 0; i <= aa+1; i++) {
                 RowRenderData rowRenderData = new RowRenderData();
                 RowStyle rowStyle = new RowStyle();
                 rowStyle.setHeight(40);
@@ -3575,7 +3389,57 @@
                     style.setFontFamily("瀹嬩綋");
                     style.setColor("000000");
                     textRenderData.setStyle(style);
-                    if (i == 0) {
+                    if (i==0){
+                        if (j==0){
+                            textRenderData.setText("搴忓彿");
+                            renderData.add(textRenderData);
+                            paragraphRenderData.setContents(renderData);
+                            paragraphRenderDataList.add(paragraphRenderData);
+                            cellRenderData.setParagraphs(paragraphRenderDataList);
+                            cells.add(cellRenderData);
+                        }
+                        else if (j == 1) {
+                            textRenderData.setText("妫�楠岄」鐩�");
+                            renderData.add(textRenderData);
+                            paragraphRenderData.setContents(renderData);
+                            paragraphRenderDataList.add(paragraphRenderData);
+                            cellRenderData.setParagraphs(paragraphRenderDataList);
+                            cells.add(cellRenderData);
+                        }
+                        else if (j == 2) {
+                            textRenderData.setText("鍗曚綅");
+                            renderData.add(textRenderData);
+                            paragraphRenderData.setContents(renderData);
+                            paragraphRenderDataList.add(paragraphRenderData);
+                            cellRenderData.setParagraphs(paragraphRenderDataList);
+                            cells.add(cellRenderData);
+                        }
+                        else if (j == 3) {
+                            textRenderData.setText("鏍囧噯涓庤姹�");
+                            renderData.add(textRenderData);
+                            paragraphRenderData.setContents(renderData);
+                            paragraphRenderDataList.add(paragraphRenderData);
+                            cellRenderData.setParagraphs(paragraphRenderDataList);
+                            cells.add(cellRenderData);
+                        }
+                        else if (j == bb-1) {
+                            textRenderData.setText("妫�楠岀粨璁�");
+                            renderData.add(textRenderData);
+                            paragraphRenderData.setContents(renderData);
+                            paragraphRenderDataList.add(paragraphRenderData);
+                            cellRenderData.setParagraphs(paragraphRenderDataList);
+                            cells.add(cellRenderData);
+                        }
+                        else {
+                            textRenderData.setText("妫�楠岀粨鏋溾垜5476" + i);
+                            renderData.add(textRenderData);
+                            paragraphRenderData.setContents(renderData);
+                            paragraphRenderDataList.add(paragraphRenderData);
+                            cellRenderData.setParagraphs(paragraphRenderDataList);
+                            cells.add(cellRenderData);
+                        }
+                    }
+                    else if (i == 1) {
                         //绗竴琛�
                         textRenderData.setText("棰戞锛�" + s + "鈭�0" + lable);
                         renderData.add(textRenderData);
@@ -3584,6 +3448,7 @@
                         cellRenderData.setParagraphs(paragraphRenderDataList);
                         cells.add(cellRenderData);
                     } else {
+                        i=i-1;
                         if (insOrderState.getVersion() == 1) {
                             //闈炵數璋冪増鏈�(绠�鍗曠増)
                             if (inspectionItemSubclass.contains("鐢靛帇椹绘尝姣�") && i <= 2 * portRow) {
@@ -3642,7 +3507,8 @@
                                     paragraphRenderDataList.add(paragraphRenderData);
                                     cellRenderData.setParagraphs(paragraphRenderDataList);
                                     cells.add(cellRenderData);
-                                } else if (j == bb - 1) {
+                                }
+                                else if (j == bb - 1) {
                                     //鏈�鍚庝竴鍒�
                                     if (i % 2 == 0) {
                                         //缁撹
@@ -3654,14 +3520,15 @@
                                             textRenderData.setText("涓嶅垽瀹�");
                                         }
                                     } else {
-                                        textRenderData.setText("/");
+                                        textRenderData.setText("鍒ゅ畾");
                                     }
                                     renderData.add(textRenderData);
                                     paragraphRenderData.setContents(renderData);
                                     paragraphRenderDataList.add(paragraphRenderData);
                                     cellRenderData.setParagraphs(paragraphRenderDataList);
                                     cells.add(cellRenderData);
-                                } else {
+                                }
+                                else {
                                     //鍏朵綑鍒�
                                     if (i % 2 == 0) {
                                         //鏈�宸��
@@ -4100,7 +3967,7 @@
                                 } else if (j == 4) {
                                     //绗簲鍒�
                                     if ((i - (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg)) % (angles + 1) == 1) {
-                                        textRenderData.setText("瑙掑害");
+                                        textRenderData.setText("棰戞");
                                     } else {
                                         textRenderData.setText(result2s.get(0).getAngle().split(",")[(i - (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg) - 2) % (angles + 1)]);
                                     }
@@ -4112,7 +3979,7 @@
                                 } else if (j == bb - 1) {
                                     //鏈�鍚庝竴鍒�
                                     if ((i - (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg)) % (angles + 1) == 1) {
-                                        textRenderData.setText("/");
+                                        textRenderData.setText("鍒ゅ畾");
                                     } else {
                                         if (products.get(0).getInsResult() == 1) {
                                             textRenderData.setText("鍚堟牸鈭�8" + index + ((i - (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg) + (angles - 1)) / (angles + 1) - 1));
@@ -4207,7 +4074,7 @@
                                 } else if (j == bb - 1) {
                                     //鏈�鍚庝竴鍒�
                                     if (i % (angles + 1) == 1) {
-                                        textRenderData.setText("/");
+                                        textRenderData.setText("鍒ゅ畾");
                                     } else {
                                         //缁撹
                                         if (products.get(0).getInsResult() == 1) {
@@ -4312,7 +4179,7 @@
                                     } else if (j == bb - 1) {
                                         //鏈�鍚庝竴鍒�
                                         if ((i - cc) % (angles + 1) == 1) {
-                                            textRenderData.setText("/");
+                                            textRenderData.setText("鍒ゅ畾");
                                         } else {
                                             //缁撹
                                             if (products.get(0).getInsResult() == 1) {
@@ -4435,7 +4302,7 @@
                                     } else if (j == bb - 1) {
                                         //鏈�鍚庝竴鍒�
                                         if ((i - (dd == 0 ? cc : dd)) % (angles + 1) == 1) {
-                                            textRenderData.setText("/");
+                                            textRenderData.setText("鍒ゅ畾");
                                         } else {
                                             //缁撹
                                             if (products.get(0).getInsResult() == 1) {
@@ -4558,7 +4425,7 @@
                                     } else if (j == bb - 1) {
                                         //鏈�鍚庝竴鍒�
                                         if ((i - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee)) % (angles + 1) == 1) {
-                                            textRenderData.setText("/");
+                                            textRenderData.setText("鍒ゅ畾");
                                         } else {
                                             //缁撹
                                             if (products.get(0).getInsResult() == 1) {
@@ -4681,7 +4548,7 @@
                                     } else if (j == bb - 1) {
                                         //鏈�鍚庝竴鍒�
                                         if ((i - (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff)) % (angles + 1) == 1) {
-                                            textRenderData.setText("/");
+                                            textRenderData.setText("鍒ゅ畾");
                                         } else {
                                             //缁撹
                                             if (products.get(0).getInsResult() == 1) {
@@ -4786,7 +4653,7 @@
                                     //绗簲鍒�
                                     if ((i - (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg)) % (angles + 1) == 1) {
                                         //瑙掑害
-                                        textRenderData.setText("瑙掑害");
+                                        textRenderData.setText("棰戞");
                                     } else {
                                         //鍊�
                                         textRenderData.setText(result2s.get(0).getAngle().split(",")[(i + (angles - 1)) % (angles + 1)]);
@@ -4799,7 +4666,7 @@
                                 } else if (j == bb - 1) {
                                     //鏈�鍚庝竴鍒�
                                     if ((i - (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg)) % (angles + 1) == 1) {
-                                        textRenderData.setText("/");
+                                        textRenderData.setText("鍒ゅ畾");
                                     } else {
                                         //缁撹
                                         if (products.get(0).getInsResult() == 1) {
@@ -4896,7 +4763,7 @@
                                 } else if (j == bb - 1) {
                                     //鏈�鍚庝竴鍒�
                                     if ((i - (hh == 0 ? (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg) : hh)) % (angles + 1) == 1) {
-                                        textRenderData.setText("/");
+                                        textRenderData.setText("鍒ゅ畾");
                                     } else {
                                         //缁撹
                                         if (products.get(0).getInsResult() == 1) {
@@ -4989,7 +4856,7 @@
                                 } else if (j == bb - 1) {
                                     //鏈�鍚庝竴鍒�
                                     if ((i - (mm == 0 ? (hh == 0 ? (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg) : hh) : mm)) % (angles + 1) == 1) {
-                                        textRenderData.setText("/");
+                                        textRenderData.setText("鍒ゅ畾");
                                     } else {
                                         //缁撹
                                         if (products.get(0).getInsResult() == 1) {
@@ -5086,7 +4953,7 @@
                                     } else if (j == bb - 1) {
                                         //鏈�鍚庝竴鍒�
                                         if ((i - (nn == 0 ? (mm == 0 ? (hh == 0 ? (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg) : hh) : mm) : nn)) % (angles + 1) == 1) {
-                                            textRenderData.setText("/");
+                                            textRenderData.setText("鍒ゅ畾");
                                         } else {
                                             //缁撹
                                             if (products.get(0).getInsResult() == 1) {
@@ -5193,7 +5060,7 @@
                                     } else if (j == bb - 1) {
                                         //鏈�鍚庝竴鍒�
                                         if ((i - (pp == 0 ? (nn == 0 ? (mm == 0 ? (hh == 0 ? (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg) : hh) : mm) : nn) : pp)) % (angles + 1) == 1) {
-                                            textRenderData.setText("/");
+                                            textRenderData.setText("鍒ゅ畾");
                                         } else {
                                             //缁撹
                                             if (products.get(0).getInsResult() == 1) {
@@ -5300,7 +5167,7 @@
                                     } else if (j == bb - 1) {
                                         //鏈�鍚庝竴鍒�
                                         if ((i - rr) % (angles + 1) == 1) {
-                                            textRenderData.setText("/");
+                                            textRenderData.setText("鍒ゅ畾");
                                         } else {
                                             //缁撹
                                             if (products.get(0).getInsResult() == 1) {
@@ -5406,7 +5273,7 @@
                                     } else if (j == bb - 1) {
                                         //鏈�鍚庝竴鍒�
                                         if ((i - ss) % (angles + 1) == 1) {
-                                            textRenderData.setText("/");
+                                            textRenderData.setText("鍒ゅ畾");
                                         } else {
                                             //缁撹
                                             if (products.get(0).getInsResult() == 1) {
@@ -5520,7 +5387,7 @@
         List<RowRenderData> rows = new ArrayList<>();
         Set<String> itemSet = new HashSet<>();
         //琛ㄦ牸鐨勮鏁�
-        for (int i = 0; i < result2VOS.size(); i++) {
+        for (int i = 0; i < result2VOS.size()+1; i++) {
             RowRenderData rowRenderData = new RowRenderData();
             RowStyle rowStyle = new RowStyle();
             rowStyle.setHeight(40);
@@ -5554,7 +5421,8 @@
                     paragraphRenderDataList.add(paragraphRenderData);
                     cellRenderData.setParagraphs(paragraphRenderDataList);
                     cells.add(cellRenderData);
-                } else if (j == 1) {
+                }
+                else if (j == 1) {
                     //绗簩鍒�(妫�楠岄」鐩�)
                     textRenderData.setText(result2VOS.get(i).getInspectionItemSubclass() + "鈭�2" + index);
                     renderData.add(textRenderData);
@@ -5562,7 +5430,8 @@
                     paragraphRenderDataList.add(paragraphRenderData);
                     cellRenderData.setParagraphs(paragraphRenderDataList);
                     cells.add(cellRenderData);
-                } else if (j == 2) {
+                }
+                else if (j == 2) {
                     //绗笁鍒�(鍗曚綅)
                     textRenderData.setText(result2VOS.get(i).getUnit() + "鈭�3" + index);
                     renderData.add(textRenderData);

--
Gitblit v1.9.3