From ca348b39515efab36aa5ec0f68144a9917e7b188 Mon Sep 17 00:00:00 2001
From: zss <zss@example.com>
Date: 星期二, 22 十月 2024 16:44:33 +0800
Subject: [PATCH] 费用统计,报告修改

---
 inspect-server/src/main/java/com/yuanchu/mom/utils/WordUtils.java                                         | 1515 ++++++++++++++++++++++++++++++++++++++++++++++++++++++-
 performance-server/src/main/resources/mapper/AuxiliaryCorrectionHoursMapper.xml                           |    1 
 inspect-server/src/main/resources/mapper/InsOrderMapper.xml                                               |   59 +
 inspect-server/src/main/java/com/yuanchu/mom/controller/WarehouseController.java                          |    2 
 inspect-server/src/main/resources/static/report-template.docx                                             |    0 
 inspect-server/src/main/java/com/yuanchu/mom/service/impl/InsOrderPlanServiceImpl.java                    |   19 
 inspect-server/src/main/java/com/yuanchu/mom/service/impl/InsOrderServiceImpl.java                        |    8 
 performance-server/src/main/java/com/yuanchu/mom/service/impl/AuxiliaryOutputWorkingHoursServiceImpl.java |    4 
 8 files changed, 1,523 insertions(+), 85 deletions(-)

diff --git a/inspect-server/src/main/java/com/yuanchu/mom/controller/WarehouseController.java b/inspect-server/src/main/java/com/yuanchu/mom/controller/WarehouseController.java
index 4a86f4b..c656864 100644
--- a/inspect-server/src/main/java/com/yuanchu/mom/controller/WarehouseController.java
+++ b/inspect-server/src/main/java/com/yuanchu/mom/controller/WarehouseController.java
@@ -27,7 +27,7 @@
         return Result.success(warehouseService.addWarehouse(name));
     }
 
-    @ValueClassify("鏍峰搧绠$悊")
+    @ValueAuth
     @GetMapping("/selectWarehouse")
     @ApiOperation("鏌ヨ浠撳簱")
     public Result selectWarehouse() {
diff --git a/inspect-server/src/main/java/com/yuanchu/mom/service/impl/InsOrderPlanServiceImpl.java b/inspect-server/src/main/java/com/yuanchu/mom/service/impl/InsOrderPlanServiceImpl.java
index 36aa8e2..fbd5a82 100644
--- a/inspect-server/src/main/java/com/yuanchu/mom/service/impl/InsOrderPlanServiceImpl.java
+++ b/inspect-server/src/main/java/com/yuanchu/mom/service/impl/InsOrderPlanServiceImpl.java
@@ -1101,26 +1101,11 @@
         insSampleUser.setState(1);
         insSampleUser.setSonLaboratory(submitPlanDto.getLaboratory());
         insSampleUserMapper.insert(insSampleUser);
-        /*//鏍¢獙涓�涓媟esult琛�
-        CompletableFuture.supplyAsync(() -> {
-            List<Integer> ips = insProducts.stream().map(InsProduct::getId).distinct().collect(Collectors.toList());
-            for (Integer ip : ips) {
-                List<InsProductResult> insProductResults = insProductResultMapper.selectList(Wrappers.<InsProductResult>lambdaQuery()
-                        .eq(InsProductResult::getNum, orderState.getNum())
-                        .eq(InsProductResult::getInsProductId, ip));
-                if (insProductResults.size() > 1) {
-                    for (int i = 1; i < insProductResults.size(); i++) {
-                        insProductResultMapper.deleteById(insProductResults.get(i));
-                    }
-                }
-            }
-            return null;
-        });*/
         /*鐢熸垚鐢佃矾璇曢獙鐨勭珯鐐规姤鍛婂苟涓婁紶鍒伴檮浠朵腑*/
         if (submitPlanDto.getLaboratory().equals("鐢佃矾璇曢獙")) {
-            wordUtils.generateWord(submitPlanDto.getNote(), submitPlanDto.getTerm(), orderState);
+            wordUtils.generateWord(submitPlanDto.getTerm(), orderState);
 //            try {
-//                wordUtils.generateWord(submitPlanDto.getNote(), submitPlanDto.getTerm(), orderState);
+//                wordUtils.generateWord(submitPlanDto.getTerm(), orderState);
 //            } catch (Exception e) {
 //                throw new ErrorException("鐢佃矾璇曢獙鐨勭珯鐐规姤鍛婄敓鎴愭湁璇�,璇疯仈绯诲紑鍙戜汉鍛樿皟鏁�!");
 //            }
diff --git a/inspect-server/src/main/java/com/yuanchu/mom/service/impl/InsOrderServiceImpl.java b/inspect-server/src/main/java/com/yuanchu/mom/service/impl/InsOrderServiceImpl.java
index a54776a..4607460 100644
--- a/inspect-server/src/main/java/com/yuanchu/mom/service/impl/InsOrderServiceImpl.java
+++ b/inspect-server/src/main/java/com/yuanchu/mom/service/impl/InsOrderServiceImpl.java
@@ -372,8 +372,8 @@
         }
         insOrderMapper.updateById(order);
         //鏌ヨ璇ヨ鍗曟槸A绫昏繕鏄疊绫�
-        if (order.getOrderType().equals("A")) {
-            //濡傛灉鏄疉绫�,1鍜�2鍜�3閮藉鏍搁�氳繃杩欎釜鍗曞瓙灏卞鏍搁�氳繃
+        if (order.getOrderType().equals("B")) {
+            //濡傛灉鏄疊绫�,1鍜�2鍜�3閮藉鏍搁�氳繃杩欎釜鍗曞瓙灏卞鏍搁�氳繃
             if (order.getCheckState1() == 1 && order.getCheckState2() == 1 && order.getCheckState3() == 1) {
                 order.setState(1);
                 upInsOrderOfState(order);
@@ -381,8 +381,8 @@
                 order.setState(2);
                 upInsOrderOfState(order);
             }
-        } else if (order.getOrderType().equals("B")) {
-            //濡傛灉鏄疊绫�,1鍜�2瀹℃牳閫氳繃鍚庤繖涓崟瀛愬氨瀹℃牳閫氳繃
+        } else if (order.getOrderType().equals("A")) {
+            //濡傛灉鏄疉绫�,1鍜�2瀹℃牳閫氳繃鍚庤繖涓崟瀛愬氨瀹℃牳閫氳繃
             if (order.getCheckState1() == 1 && order.getCheckState2() == 1) {
                 order.setState(1);
                 upInsOrderOfState(order);
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 62239b9..f1861ce 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
@@ -17,6 +17,7 @@
 import com.yuanchu.mom.mapper.*;
 import com.yuanchu.mom.pojo.*;
 import org.apache.commons.io.IOUtils;
+import org.apache.poi.openxml4j.util.ZipSecureFile;
 import org.apache.poi.xwpf.usermodel.*;
 import org.openxmlformats.schemas.wordprocessingml.x2006.main.CTTcPr;
 import org.openxmlformats.schemas.wordprocessingml.x2006.main.STMerge;
@@ -73,6 +74,12 @@
     private InsProductResult2Mapper insProductResult2Mapper;
 
     @Resource
+    InsOrderUserMapper insOrderUserMapper;
+
+    @Resource
+    InsOrderStateMapper insOrderStateMapper;
+
+    @Resource
     private InsProductResultMapper insProductResultMapper;
 
     @Resource
@@ -83,7 +90,7 @@
 
 
     //鐢熸垚绔欑偣鐢佃矾璇曢獙鎶ュ憡
-    public void generateWord(String note, String term, InsOrderState insOrderState) {
+    public void generateWord(String term, InsOrderState insOrderState) {
         AtomicInteger lable = new AtomicInteger(1);
         AtomicInteger index = new AtomicInteger();
         String title = term + "鐢佃矾鍙傛暟";
@@ -604,7 +611,8 @@
                                         cells.add(cellRenderData);
                                     }
                                 }
-                            } else {
+                            }
+                            else {
                                 //鐢佃皟鐗堟湰(澶嶆潅鐗�)
                                 if (inspectionItemSubclass.contains("鐢靛帇椹绘尝姣�") && i <= (angles + 1) * portRow) {
                                     cc = (angles + 1) * portRow;
@@ -1037,7 +1045,7 @@
                                             String[] value = result2s.get((i - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee)) / portRow / (angles + 2)).getValue().split("\\],\\[");
                                             String[] split = value[(i + (angles - 1)) % (angles + 1)].replaceAll("[\\[\\]\"]", "").split(",");
                                             try {
-                                                textRenderData.setText(split[((j - 5) + ((i - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) - 1) / (angles + 1) % portRow)* (Math.min(ports, 8)))]);
+                                                textRenderData.setText(split[((j - 5) + ((i - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) - 1) / (angles + 1) % portRow) * (Math.min(ports, 8)))]);
                                             } catch (Exception e) {
                                                 textRenderData.setText("");
                                             }
@@ -1133,7 +1141,7 @@
                                             //鏈�宸��
                                             String[] value = result2s.get(0).getValue().split("\\],\\[");
                                             String[] split = value[(i + (angles - 1)) % (angles + 1)].replaceAll("[\\[\\]\"]", "").split(",");
-                                            textRenderData.setText(split[0] + "鈭�7" + i );
+                                            textRenderData.setText(split[0] + "鈭�7" + i);
                                         }
                                         renderData.add(textRenderData);
                                         paragraphRenderData.setContents(renderData);
@@ -1226,7 +1234,7 @@
                                             //鏈�宸��
                                             String[] value = result2s.get(0).getValue().split("\\],\\[");
                                             String[] split = value[(i + (angles - 1)) % (angles + 1)].replaceAll("[\\[\\]\"]", "").split(",");
-                                            textRenderData.setText(split[0] + "鈭�7" + i );
+                                            textRenderData.setText(split[0] + "鈭�7" + i);
                                         }
                                         renderData.add(textRenderData);
                                         paragraphRenderData.setContents(renderData);
@@ -1478,11 +1486,11 @@
                 table.put("table", tableRenderData);
                 tables.add(table);
                 lable.getAndIncrement();
-                index.getAndIncrement();
             });
         });
         String url;
         try {
+            ZipSecureFile.setMinInflateRatio(0.0001);
             InputStream inputStream = this.getClass().getResourceAsStream("/static/word1.docx");
             File file = File.createTempFile("temp", ".tmp");
             OutputStream outputStream = new FileOutputStream(file);
@@ -1509,6 +1517,7 @@
         // 澶勭悊鍚堝苟鍗曞厓鏍肩殑闂
         String path = wordUrl + "/" + name;
         try {
+            ZipSecureFile.setMinInflateRatio(0.0001);
             FileInputStream stream = new FileInputStream(path);
             XWPFDocument document = new XWPFDocument(stream);
             List<XWPFTable> xwpfTables = document.getTables();
@@ -1685,14 +1694,21 @@
         });
 
         /*妫�楠屾儏鍐典竴瑙堣〃*/
-        List<Map<String, String>> tables = null;
-        List<Map<String, Object>> tables2 = null;
-        List<Map<String, Object>> tables3 = null;
-        List<Map<String, Object>> tables4 = null;
-        Map<String, String> table = null;
+        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 = insReportDto1s.stream().map(InsReportDto1::getLaboratory).distinct().collect(Collectors.toList());
+        if (strings.contains("杩戝満") || strings.contains("杩滃満")) {
+            Map<String, String> table = new HashMap<>();
+            table.put("indexs", indexs + "");
+            table.put("term", "杈愬皠鏂瑰悜鍥惧弬鏁�");
+            table.put("result", "涓嶅垽瀹�");
+            tables.add(table);
+            /*杈愬皠鐨勮瘯楠岃〃*/
+        }
         if (strings.contains("鐢佃矾璇曢獙")) {
             strings.remove("鐢佃矾璇曢獙");
             strings.remove("杩戝満");
@@ -1704,35 +1720,44 @@
                     .stream().map(InsProductResult2::getResult).distinct().collect(Collectors.toList());
             //濡傛灉鏈夌幆澧冭瘯楠�
             if (strings.size() > 0) {
-                table.put("indexs", indexs + "");
-                table.put("term", "鐜璇曢獙鍓嶇數璺弬鏁�");
+                Map<String, String> table1 = new HashMap<>();
+                table1.put("indexs", indexs + "");
+                table1.put("term", "鐜璇曢獙鍓嶇數璺弬鏁�");
                 if (collect.contains(0)) {
-                    table.put("result", "涓嶅悎鏍�");
+                    table1.put("result", "涓嶅悎鏍�");
                 } else {
-                    table.put("result", "鍚堟牸");
+                    table1.put("result", "鍚堟牸");
                 }
-                tables.add(table);
+                tables.add(table1);
                 indexs += 1;
 
-                table.put("indexs", "鐜璇曢獙:" + String.join("銆�", strings) + "鈭�1");
-                table.put("term", "鐜璇曢獙:" + String.join("銆�", strings) + "鈭�1");
-                table.put("result", "鐜璇曢獙:" + String.join("銆�", strings) + "鈭�1");
-                tables.add(table);
+                Map<String, String> table2 = new HashMap<>();
+                table2.put("indexs", "鐜璇曢獙:" + String.join("銆�", strings) + "鈭�1");
+                table2.put("term", "鐜璇曢獙:" + String.join("銆�", strings) + "鈭�1");
+                table2.put("result", "鐜璇曢獙:" + String.join("銆�", strings) + "鈭�1");
+                tables.add(table2);
 
-                table.put("indexs", indexs + "");
-                table.put("term", "鐜璇曢獙鍚庣數璺弬鏁�");
+                Map<String, String> table3 = new HashMap<>();
+                table3.put("indexs", indexs + "");
+                table3.put("term", "鐜璇曢獙鍚庣數璺弬鏁�");
                 if (collect.contains(0)) {
-                    table.put("result", "涓嶅悎鏍�");
+                    table3.put("result", "涓嶅悎鏍�");
                 } else {
-                    table.put("result", "鍚堟牸");
+                    table3.put("result", "鍚堟牸");
                 }
-                tables.add(table);
+                tables.add(table3);
                 indexs += 1;
 
                 /*鍒涘缓鐜璇曢獙鏉′欢琛�2*(椤圭洰鏁�+1)*/
                 List<InsProduct> products = samples.stream().flatMap(sampleProductDto -> sampleProductDto.getInsProduct().stream()
                         .filter(insProduct -> !insProduct.getInspectionItem().equals("鐢佃矾璇曢獙"))
-                        .filter(insProduct -> !insProduct.getInspectionItem().equals("杈愬皠璇曢獙"))).collect(Collectors.toList());
+                        .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++) {
@@ -1825,7 +1850,9 @@
                 Map<String, Object> table4 = new HashMap<>();
                 table4.put("table4", tableRenderData);
                 tables4.add(table4);
-            } else {
+            }
+            else {
+                Map<String, String> table = new HashMap<>();
                 table.put("indexs", indexs + "");
                 table.put("term", "鐢佃矾鍙傛暟");
                 if (collect.contains(0)) {
@@ -1836,18 +1863,21 @@
                 tables.add(table);
                 indexs += 1;
             }
-            /*鎷兼帴鍕鹃�夌殑鐢佃矾璇曢獙琛�*/
+            /*鍕鹃�夌殑鐢佃矾璇曢獙琛�*/
+            List<InsSample> insSamples = insSampleMapper.selectSample(orderId);
+            for (InsReportDto1 insReportDto1 : insReportDto1s) {
+                InsOrderUser insOrderUser = insOrderUserMapper.selectById(insReportDto1.getInsOrderUsersId());
+                InsOrderState orderState = insOrderStateMapper.selectById(insOrderUser.getInsOrderStateId());
+                if (orderState.getLaboratory().equals("鐢佃矾璇曢獙")){
+                    orderState.setNum(insOrderUser.getNum());
+                    getWord1(insOrderUser.getTerm(),orderState,insSamples,tables2);
+                }
+            }
         }
-        if (strings.contains("杩戝満") || strings.contains("杩滃満")) {
-            table.put("indexs", indexs + "");
-            table.put("term", "杈愬皠鏂瑰悜鍥惧弬鏁�");
-            table.put("result", "涓嶅垽瀹�");
-            tables.add(table);
-        }
-
 
         String url;
         try {
+            ZipSecureFile.setMinInflateRatio(0.0001);
             InputStream inputStream = this.getClass().getResourceAsStream("/static/report-template.docx");
             File file = File.createTempFile("temp", ".tmp");
             OutputStream outputStream = new FileOutputStream(file);
@@ -1971,6 +2001,7 @@
                     put("formTypeEn", insOrder.getFormType());
                 }});
         try {
+            ZipSecureFile.setMinInflateRatio(0.0001);
             String name = insReport.getCode().replace("/", "") + ".docx";
             template.writeAndClose(Files.newOutputStream(Paths.get(wordUrl + "/" + name)));
             insReport.setUrl("/word/" + name);
@@ -1983,6 +2014,7 @@
         // 澶勭悊鍚堝苟鍗曞厓鏍肩殑闂
         String path = wordUrl + "/" + insReport.getCode().replace("/", "") + ".docx";
         try {
+            ZipSecureFile.setMinInflateRatio(0.0001);
             FileInputStream stream = new FileInputStream(path);
             XWPFDocument document = new XWPFDocument(stream);
             List<XWPFTable> xwpfTables = document.getTables();
@@ -2016,10 +2048,17 @@
                         }
                     }
                 }
+
+                // 鍗曞厓鏍兼帓搴�, 閬垮厤鏍煎紡閿欎贡
+                List<Map.Entry<String, Map<String, Integer>>> entries = new ArrayList<>(maps.entrySet());
+                entries.sort((o1, o2) -> o1.getValue().get("sc") - o2.getValue().get("sc"));
+
+                // 鎸夌収椤哄簭娣诲姞杩涢泦鍚�
                 List<String> list = new ArrayList<>();
-                for (String s : maps.keySet()) {
-                    list.add(s);
+                for (Map.Entry<String, Map<String, Integer>> entry : entries) {
+                    list.add(entry.getKey());
                 }
+
                 for (int a = list.size() - 1; a >= 0; a--) {
                     Map<String, Integer> v = maps.get(list.get(a));
                     for (int j = 0; j < v.get("er") - v.get("sr") + 1; j++) {
@@ -2048,6 +2087,7 @@
         }
         //澶勭悊涓嫳鏂囨崲琛岀殑闂
         try {
+            ZipSecureFile.setMinInflateRatio(0.0001);
             FileInputStream stream1 = new FileInputStream(path);
             XWPFDocument document1 = new XWPFDocument(stream1);
             List<XWPFTable> xwpfTables1 = document1.getTables();
@@ -2079,4 +2119,1405 @@
             throw new RuntimeException(e);
         }
     }
+
+
+
+    //鐢佃矾鎶ュ憡鐢ㄤ簬鎬绘姤鍛婄殑鏂规硶
+    private void getWord1(String term, InsOrderState insOrderState,List<InsSample> insSamples,List<Map<String, Object>> tables2){
+        AtomicInteger lable = new AtomicInteger(1);
+        AtomicInteger index = new AtomicInteger();
+        String title = term + "鐢佃矾鍙傛暟";
+        insSamples.forEach(insSample -> {
+            //鏌ヨ椤圭洰
+            List<InsProduct> insProducts = insProductMapper.selectList(Wrappers.<InsProduct>lambdaQuery()
+                    .eq(InsProduct::getInsSampleId, insSample.getId())
+                    .eq(InsProduct::getSonLaboratory, "鐢佃矾璇曢獙"));
+            //鑾峰彇鏈�澶х鍙f暟閲�,瑙掑害鏁伴噺,棰戞鏁伴噺
+            List<InsProductResult2> insProductResult2s = insProductResult2Mapper.selectList(Wrappers.<InsProductResult2>lambdaQuery()
+                    .eq(InsProductResult2::getNum, insOrderState.getNum())
+                    .in(InsProductResult2::getInsProductId, insProducts.stream().map(InsProduct::getId).collect(Collectors.toList())));
+            //鎸夌収棰戞鍒嗚〃(鏌ヨ鎵�鏈夐娈�)
+            List<String> frequencys = insProductResult2s.stream().map(InsProductResult2::getFrequency).distinct().collect(Collectors.toList());
+            frequencys.forEach(s -> {
+                int ports = 0;//绔彛鏁�
+                int angles = 0;//瑙掑害鏁�
+                for (InsProductResult2 insProductResult2 : insProductResult2s) {
+                    if (insProductMapper.selectById(insProductResult2.getInsProductId()).getInspectionItemSubclass().equals("鐢靛帇椹绘尝姣�") && insProductResult2.getPort().split(",").length > ports) {
+                        ports = insProductResult2.getPort().split(",").length;
+                    }
+                    if (insProductResult2.getAngle().split(",").length > angles) {
+                        angles = insProductResult2.getAngle().split(",").length;
+                    }
+                }
+                //棰戠偣鏁�
+                long often = insProductResult2s.stream().filter(insProductResult2 -> insProductResult2.getFrequency().equals(s))
+                        .filter(insProductResult2 ->
+                                insProductMapper.selectById(insProductResult2.getInsProductId()).getInspectionItemSubclass().equals("浜掕皟")
+                        ).filter(insProductResult2 -> ObjectUtils.isNotEmpty(insProductResult2.getOften())).distinct().count();
+                List<String> inspectionItemSubclass = insProducts.stream().map(InsProduct::getInspectionItemSubclass).collect(Collectors.toList());
+                //琛屾暟
+                int aa = 0;
+                int portRow = ports % 8 == 0 ? ports / 8 : ports / 8 + 1;
+                //鍏堝垽鏂槸1绠�鍗曠増杩樻槸0澶嶆潅鐗�
+                if (insOrderState.getVersion() == 1) {
+                    if (inspectionItemSubclass.contains("鐢靛帇椹绘尝姣�")) {
+                        aa += 2 * portRow;
+                    }
+                    if (inspectionItemSubclass.contains("鍚屾瀬鍖栭殧绂诲害")) {
+                        aa += 1 * portRow;
+                    }
+                    if (inspectionItemSubclass.contains("寮傛瀬鍖栭殧绂诲害")) {
+                        aa += 1 * portRow;
+                    }
+                    if (inspectionItemSubclass.contains("浜掕皟")) {
+                        aa += (angles + 1) * portRow * often;
+                    }
+                }
+                else {
+                    if (inspectionItemSubclass.contains("鐢靛帇椹绘尝姣�")) {
+                        aa += (angles + 1) * portRow;
+                    }
+                    if (inspectionItemSubclass.contains("鍚屾瀬鍖栭殧绂诲害")) {
+                        List<InsProductResult2> result2s = insProductResult2s.stream().filter(insProductResult2 ->
+                                insProductMapper.selectById(insProductResult2.getInsProductId())
+                                        .getInspectionItemSubclass().equals("鍚屾瀬鍖栭殧绂诲害")
+                        ).collect(Collectors.toList());
+                        int length = result2s.get(0).getPort().split(",").length;
+                        aa += (angles + 1) * (length % (ports > 8 ? 4 : (ports + 1) / 2) == 0 ? length / (ports > 8 ? 4 : (ports + 1) / 2) : length / (ports > 8 ? 4 : (ports + 1) / 2) + 1);
+                    }
+                    if (inspectionItemSubclass.contains("寮傛瀬鍖栭殧绂诲害")) {
+                        List<InsProductResult2> result2s = insProductResult2s.stream().filter(insProductResult2 ->
+                                insProductMapper.selectById(insProductResult2.getInsProductId())
+                                        .getInspectionItemSubclass().equals("寮傛瀬鍖栭殧绂诲害")
+                        ).collect(Collectors.toList());
+                        int length = result2s.get(0).getPort().split(",").length;
+                        aa += (angles + 1) * (length % (ports > 8 ? 4 : (ports + 1) / 2) == 0 ? length / (ports > 8 ? 4 : (ports + 1) / 2) : length / (ports > 8 ? 4 : (ports + 1) / 2) + 1);
+                    }
+                    if (inspectionItemSubclass.contains("浜掕皟")) {
+                        aa += (angles + 1) * portRow * often;
+                    }
+                    if (inspectionItemSubclass.contains("鏈�澶ц�﹀悎搴�")) {
+                        aa += (angles + 1);
+                    }
+                    if (inspectionItemSubclass.contains("鏈�灏忚�﹀悎搴�")) {
+                        aa += (angles + 1);
+                    }
+                    if (inspectionItemSubclass.contains("骞呭害鍋忓樊")) {
+                        List<InsProductResult2> result2s = insProductResult2s.stream().filter(insProductResult2 ->
+                                insProductMapper.selectById(insProductResult2.getInsProductId())
+                                        .getInspectionItemSubclass().equals("骞呭害鍋忓樊")
+                        ).collect(Collectors.toList());
+                        int length = result2s.get(0).getPort().split(",").length;
+                        aa += (angles + 1) * (length % 8 == 0 ? length / 8 : length / 8 + 1);
+                    }
+                    if (inspectionItemSubclass.contains("鏈�澶х浉浣嶅亸宸�")) {
+                        List<InsProductResult2> result2s = insProductResult2s.stream().filter(insProductResult2 ->
+                                insProductMapper.selectById(insProductResult2.getInsProductId())
+                                        .getInspectionItemSubclass().equals("鏈�澶х浉浣嶅亸宸�")
+                        ).collect(Collectors.toList());
+                        int length = result2s.get(0).getPort().split(",").length;
+                        aa += (angles + 1) * (length % 8 == 0 ? length / 8 : length / 8 + 1);
+                    }
+                }
+                List<RowRenderData> rows = new ArrayList<>();
+                Set<String> itemSet = new HashSet<>();
+                int cc = 0;
+                int dd = 0;
+                int ee = 0;
+                int ff = 0;
+                int gg = 0;
+                int hh = 0;
+                int mm = 0;
+                //琛ㄦ牸鐨勮鏁�
+                for (int i = 0; i <= aa; i++) {
+                    RowRenderData rowRenderData = new RowRenderData();
+                    RowStyle rowStyle = new RowStyle();
+                    rowStyle.setHeight(40);
+                    rowRenderData.setRowStyle(rowStyle);
+                    List<CellRenderData> cells = new ArrayList<>();
+                    //琛ㄦ牸鐨勫垪鏁�
+                    int bb = ports > 8 ? 14 : ports + 6;
+                    for (int j = 0; j < bb; 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) {
+                            //绗竴琛�
+                            textRenderData.setText("棰戞锛�" + s + "鈭�0" + lable);
+                            renderData.add(textRenderData);
+                            paragraphRenderData.setContents(renderData);
+                            paragraphRenderDataList.add(paragraphRenderData);
+                            cellRenderData.setParagraphs(paragraphRenderDataList);
+                            cells.add(cellRenderData);
+                        }
+                        else {
+                            if (insOrderState.getVersion() == 1) {
+                                //闈炵數璋冪増鏈�(绠�鍗曠増)
+                                if (inspectionItemSubclass.contains("鐢靛帇椹绘尝姣�") && i <= 2 * portRow) {
+                                    cc = 2 * portRow;
+                                    if (itemSet.add("鐢靛帇椹绘尝姣�")) {
+                                        index.getAndIncrement();
+                                    }
+                                    List<InsProduct> products = insProducts.stream().filter(insProduct -> insProduct.getInspectionItemSubclass().equals("鐢靛帇椹绘尝姣�")).collect(Collectors.toList());
+                                    List<InsProductResult2> result2s = insProductResult2s.stream()
+                                            .filter(insProductResult2 -> insProductResult2.getFrequency().equals(s) && insProductResult2.getInsProductId().equals(products.get(0).getId()))
+                                            .collect(Collectors.toList());
+                                    //鐢靛帇椹绘尝姣旀墍鍦ㄨ
+                                    if (j == 0) {
+                                        //绗竴鍒�
+                                        textRenderData.setText(index + "鈭�1" + index);
+                                        renderData.add(textRenderData);
+                                        paragraphRenderData.setContents(renderData);
+                                        paragraphRenderDataList.add(paragraphRenderData);
+                                        cellRenderData.setParagraphs(paragraphRenderDataList);
+                                        cells.add(cellRenderData);
+                                    } else if (j == 1) {
+                                        //绗簩鍒�
+                                        textRenderData.setText("鐢靛帇椹绘尝姣斺垜2" + index);
+                                        renderData.add(textRenderData);
+                                        paragraphRenderData.setContents(renderData);
+                                        paragraphRenderDataList.add(paragraphRenderData);
+                                        cellRenderData.setParagraphs(paragraphRenderDataList);
+                                        cells.add(cellRenderData);
+                                    } else if (j == 2) {
+                                        //绗笁鍒�
+                                        textRenderData.setText(products.get(0).getUnit() + "鈭�3" + index);
+                                        renderData.add(textRenderData);
+                                        paragraphRenderData.setContents(renderData);
+                                        paragraphRenderDataList.add(paragraphRenderData);
+                                        cellRenderData.setParagraphs(paragraphRenderDataList);
+                                        cells.add(cellRenderData);
+                                    } else if (j == 3) {
+                                        //绗洓鍒�
+                                        textRenderData.setText(products.get(0).getAsk() + "鈭�4" + index);
+                                        renderData.add(textRenderData);
+                                        paragraphRenderData.setContents(renderData);
+                                        paragraphRenderDataList.add(paragraphRenderData);
+                                        cellRenderData.setParagraphs(paragraphRenderDataList);
+                                        cells.add(cellRenderData);
+                                    } else if (j == 4) {
+                                        //绗簲鍒�
+                                        if (i % 2 == 0) {
+                                            //鏈�宸��
+                                            textRenderData.setText("鏈�宸��");
+                                        } else {
+                                            //绔彛
+                                            textRenderData.setText("绔彛");
+                                        }
+                                        renderData.add(textRenderData);
+                                        paragraphRenderData.setContents(renderData);
+                                        paragraphRenderDataList.add(paragraphRenderData);
+                                        cellRenderData.setParagraphs(paragraphRenderDataList);
+                                        cells.add(cellRenderData);
+                                    } else if (j == bb - 1) {
+                                        //鏈�鍚庝竴鍒�
+                                        if (i % 2 == 0) {
+                                            //缁撹
+                                            if (products.get(0).getInsResult() == 1) {
+                                                textRenderData.setText("鍚堟牸");
+                                            } else if (products.get(0).getInsResult() == 0) {
+                                                textRenderData.setText("涓嶅悎鏍�");
+                                            } else {
+                                                textRenderData.setText("涓嶅垽瀹�");
+                                            }
+                                        } else {
+                                            textRenderData.setText("/");
+                                        }
+                                        renderData.add(textRenderData);
+                                        paragraphRenderData.setContents(renderData);
+                                        paragraphRenderDataList.add(paragraphRenderData);
+                                        cellRenderData.setParagraphs(paragraphRenderDataList);
+                                        cells.add(cellRenderData);
+                                    } else {
+                                        //鍏朵綑鍒�
+                                        if (i % 2 == 0) {
+                                            //鏈�宸��
+                                            String value = result2s.get(0).getValue().replaceAll("[\\[\\]\"]", "");
+                                            try {
+                                                textRenderData.setText(value.split(",")[(j - 5) + (i - 1) / 2 * (Math.min(ports, 8))]);
+                                            } catch (Exception e) {
+                                                textRenderData.setText("");
+                                            }
+                                        } else {
+                                            //绔彛
+                                            try {
+                                                textRenderData.setText(result2s.get(0).getPort().split(",")[(j - 5) + (i / 2) * (Math.min(ports, 8))]);
+                                            } catch (Exception e) {
+                                                textRenderData.setText("");
+                                            }
+                                        }
+                                        renderData.add(textRenderData);
+                                        paragraphRenderData.setContents(renderData);
+                                        paragraphRenderDataList.add(paragraphRenderData);
+                                        cellRenderData.setParagraphs(paragraphRenderDataList);
+                                        cells.add(cellRenderData);
+                                    }
+                                }
+                                if (inspectionItemSubclass.contains("鍚屾瀬鍖栭殧绂诲害") && i > cc && i <= cc + portRow) {
+                                    dd = cc + portRow;
+                                    if (itemSet.add("鍚屾瀬鍖栭殧绂诲害")) {
+                                        index.getAndIncrement();
+                                    }
+                                    List<InsProduct> products = insProducts.stream()
+                                            .filter(insProduct -> insProduct.getInspectionItemSubclass().equals("鍚屾瀬鍖栭殧绂诲害"))
+                                            .collect(Collectors.toList());
+                                    List<InsProductResult2> result2s = insProductResult2s.stream()
+                                            .filter(insProductResult2 -> insProductResult2.getFrequency().equals(s) && insProductResult2.getInsProductId().equals(products.get(0).getId()))
+                                            .collect(Collectors.toList());
+                                    //鍚屾瀬鍖栭殧绂诲害鎵�鍦ㄨ
+                                    if (j == 0) {
+                                        //绗竴鍒�
+                                        textRenderData.setText(index + "鈭�1" + index);
+                                        renderData.add(textRenderData);
+                                        paragraphRenderData.setContents(renderData);
+                                        paragraphRenderDataList.add(paragraphRenderData);
+                                        cellRenderData.setParagraphs(paragraphRenderDataList);
+                                        cells.add(cellRenderData);
+                                    } else if (j == 1) {
+                                        //绗簩鍒�
+                                        textRenderData.setText("鍚屾瀬鍖栭殧绂诲害鈭�2" + index);
+                                        renderData.add(textRenderData);
+                                        paragraphRenderData.setContents(renderData);
+                                        paragraphRenderDataList.add(paragraphRenderData);
+                                        cellRenderData.setParagraphs(paragraphRenderDataList);
+                                        cells.add(cellRenderData);
+                                    } else if (j == 2) {
+                                        //绗笁鍒�
+                                        textRenderData.setText(products.get(0).getUnit() + "鈭�3" + index);
+                                        renderData.add(textRenderData);
+                                        paragraphRenderData.setContents(renderData);
+                                        paragraphRenderDataList.add(paragraphRenderData);
+                                        cellRenderData.setParagraphs(paragraphRenderDataList);
+                                        cells.add(cellRenderData);
+                                    } else if (j == 3) {
+                                        //绗洓鍒�
+                                        textRenderData.setText(products.get(0).getAsk() + "鈭�4" + index);
+                                        renderData.add(textRenderData);
+                                        paragraphRenderData.setContents(renderData);
+                                        paragraphRenderDataList.add(paragraphRenderData);
+                                        cellRenderData.setParagraphs(paragraphRenderDataList);
+                                        cells.add(cellRenderData);
+                                    } else if (j == 4) {
+                                        //绗簲鍒�
+                                        textRenderData.setText("鏈�宸��");
+                                        renderData.add(textRenderData);
+                                        paragraphRenderData.setContents(renderData);
+                                        paragraphRenderDataList.add(paragraphRenderData);
+                                        cellRenderData.setParagraphs(paragraphRenderDataList);
+                                        cells.add(cellRenderData);
+                                    } else if (j == bb - 1) {
+                                        //鏈�鍚庝竴鍒�
+                                        if (products.get(0).getInsResult() == 1) {
+                                            textRenderData.setText("鍚堟牸");
+                                        } else if (products.get(0).getInsResult() == 0) {
+                                            textRenderData.setText("涓嶅悎鏍�");
+                                        } else {
+                                            textRenderData.setText("涓嶅垽瀹�");
+                                        }
+                                        renderData.add(textRenderData);
+                                        paragraphRenderData.setContents(renderData);
+                                        paragraphRenderDataList.add(paragraphRenderData);
+                                        cellRenderData.setParagraphs(paragraphRenderDataList);
+                                        cells.add(cellRenderData);
+                                    } else if (j % 2 == 0) {
+                                        String value = result2s.get(0).getValue().replaceAll("[\\[\\]\"]", "");
+                                        try {
+                                            textRenderData.setText(value.split(",")[(j - 6) / 2 + (i - cc - 1) * 4] + "鈭�5" + i + (j - 6));
+                                        } catch (Exception e) {
+                                            textRenderData.setText("");
+                                        }
+                                        renderData.add(textRenderData);
+                                        paragraphRenderData.setContents(renderData);
+                                        paragraphRenderDataList.add(paragraphRenderData);
+                                        cellRenderData.setParagraphs(paragraphRenderDataList);
+                                        cells.add(cellRenderData);
+                                    } else {
+                                        String value = result2s.get(0).getValue().replaceAll("[\\[\\]\"]", "");
+                                        try {
+                                            textRenderData.setText(value.split(",")[(j - 5) / 2 + (i - cc - 1) * 4] + "鈭�5" + i + (j - 5));
+                                        } catch (Exception e) {
+                                            textRenderData.setText("");
+                                        }
+                                        renderData.add(textRenderData);
+                                        paragraphRenderData.setContents(renderData);
+                                        paragraphRenderDataList.add(paragraphRenderData);
+                                        cellRenderData.setParagraphs(paragraphRenderDataList);
+                                        cells.add(cellRenderData);
+                                    }
+                                }
+                                if (inspectionItemSubclass.contains("寮傛瀬鍖栭殧绂诲害") && i > (dd == 0 ? cc : dd) && i <= (dd == 0 ? cc : dd) + portRow) {
+                                    ee = (dd == 0 ? cc : dd) + portRow;
+                                    if (itemSet.add("寮傛瀬鍖栭殧绂诲害")) {
+                                        index.getAndIncrement();
+                                    }
+                                    List<InsProduct> products = insProducts.stream()
+                                            .filter(insProduct -> insProduct.getInspectionItemSubclass().equals("寮傛瀬鍖栭殧绂诲害"))
+                                            .collect(Collectors.toList());
+                                    List<InsProductResult2> result2s = insProductResult2s.stream()
+                                            .filter(insProductResult2 -> insProductResult2.getFrequency().equals(s) && insProductResult2.getInsProductId().equals(products.get(0).getId()))
+                                            .collect(Collectors.toList());
+                                    //寮傛瀬鍖栭殧绂诲害鎵�鍦ㄨ
+                                    if (j == 0) {
+                                        //绗竴鍒�
+                                        textRenderData.setText(index + "鈭�1" + index);
+                                        renderData.add(textRenderData);
+                                        paragraphRenderData.setContents(renderData);
+                                        paragraphRenderDataList.add(paragraphRenderData);
+                                        cellRenderData.setParagraphs(paragraphRenderDataList);
+                                        cells.add(cellRenderData);
+                                    } else if (j == 1) {
+                                        //绗簩鍒�
+                                        textRenderData.setText("寮傛瀬鍖栭殧绂诲害鈭�2" + index);
+                                        renderData.add(textRenderData);
+                                        paragraphRenderData.setContents(renderData);
+                                        paragraphRenderDataList.add(paragraphRenderData);
+                                        cellRenderData.setParagraphs(paragraphRenderDataList);
+                                        cells.add(cellRenderData);
+                                    } else if (j == 2) {
+                                        //绗笁鍒�
+                                        textRenderData.setText(products.get(0).getUnit() + "鈭�3" + index);
+                                        renderData.add(textRenderData);
+                                        paragraphRenderData.setContents(renderData);
+                                        paragraphRenderDataList.add(paragraphRenderData);
+                                        cellRenderData.setParagraphs(paragraphRenderDataList);
+                                        cells.add(cellRenderData);
+                                    } else if (j == 3) {
+                                        //绗洓鍒�
+                                        textRenderData.setText(products.get(0).getAsk() + "鈭�4" + index);
+                                        renderData.add(textRenderData);
+                                        paragraphRenderData.setContents(renderData);
+                                        paragraphRenderDataList.add(paragraphRenderData);
+                                        cellRenderData.setParagraphs(paragraphRenderDataList);
+                                        cells.add(cellRenderData);
+                                    } else if (j == 4) {
+                                        //绗簲鍒�
+                                        textRenderData.setText("鏈�宸��");
+                                        renderData.add(textRenderData);
+                                        paragraphRenderData.setContents(renderData);
+                                        paragraphRenderDataList.add(paragraphRenderData);
+                                        cellRenderData.setParagraphs(paragraphRenderDataList);
+                                        cells.add(cellRenderData);
+                                    } else if (j == bb - 1) {
+                                        //鏈�鍚庝竴鍒�
+                                        if (products.get(0).getInsResult() == 1) {
+                                            textRenderData.setText("鍚堟牸");
+                                        } else if (products.get(0).getInsResult() == 0) {
+                                            textRenderData.setText("涓嶅悎鏍�");
+                                        } else {
+                                            textRenderData.setText("涓嶅垽瀹�");
+                                        }
+                                        renderData.add(textRenderData);
+                                        paragraphRenderData.setContents(renderData);
+                                        paragraphRenderDataList.add(paragraphRenderData);
+                                        cellRenderData.setParagraphs(paragraphRenderDataList);
+                                        cells.add(cellRenderData);
+                                    } else if (j % 2 == 0) {
+                                        String value = result2s.get(0).getValue().replaceAll("[\\[\\]\"]", "");
+                                        try {
+                                            textRenderData.setText(value.split(",")[(j - 6) / 2 + (i - (dd == 0 ? cc : dd) - 1) * 4] + "鈭�5" + i + (j - 6));
+                                        } catch (Exception e) {
+                                            textRenderData.setText("");
+                                        }
+                                        renderData.add(textRenderData);
+                                        paragraphRenderData.setContents(renderData);
+                                        paragraphRenderDataList.add(paragraphRenderData);
+                                        cellRenderData.setParagraphs(paragraphRenderDataList);
+                                        cells.add(cellRenderData);
+                                    } else {
+                                        String value = result2s.get(0).getValue().replaceAll("[\\[\\]\"]", "");
+                                        try {
+                                            textRenderData.setText(value.split(",")[(j - 5) / 2 + (i - (dd == 0 ? cc : dd) - 1) * 4] + "鈭�5" + i + (j - 5));
+                                        } catch (Exception e) {
+                                            textRenderData.setText("");
+                                        }
+                                        renderData.add(textRenderData);
+                                        paragraphRenderData.setContents(renderData);
+                                        paragraphRenderDataList.add(paragraphRenderData);
+                                        cellRenderData.setParagraphs(paragraphRenderDataList);
+                                        cells.add(cellRenderData);
+                                    }
+                                }
+                                if (inspectionItemSubclass.contains("浜掕皟") && i > (ee == 0 ? ((dd == 0 ? cc : dd)) : ee)) {
+                                    if (itemSet.add("浜掕皟")) {
+                                        index.getAndIncrement();
+                                    }
+                                    List<InsProduct> products = insProducts.stream()
+                                            .filter(insProduct -> insProduct.getInspectionItemSubclass().equals("浜掕皟"))
+                                            .collect(Collectors.toList());
+                                    List<InsProductResult2> result2s = insProductResult2s.stream()
+                                            .filter(insProductResult2 -> insProductResult2.getFrequency().equals(s) && insProductResult2.getInsProductId().equals(products.get(0).getId()))
+                                            .collect(Collectors.toList());
+                                    //浜掕皟鎵�鍦ㄨ
+                                    if (j == 0) {
+                                        //绗竴鍒�
+                                        textRenderData.setText(index + "鈭�1" + index);
+                                        renderData.add(textRenderData);
+                                        paragraphRenderData.setContents(renderData);
+                                        paragraphRenderDataList.add(paragraphRenderData);
+                                        cellRenderData.setParagraphs(paragraphRenderDataList);
+                                        cells.add(cellRenderData);
+                                    } else if (j == 1) {
+                                        //绗簩鍒�
+                                        textRenderData.setText("浜掕皟鈭�2" + index);
+                                        renderData.add(textRenderData);
+                                        paragraphRenderData.setContents(renderData);
+                                        paragraphRenderDataList.add(paragraphRenderData);
+                                        cellRenderData.setParagraphs(paragraphRenderDataList);
+                                        cells.add(cellRenderData);
+                                    } else if (j == 2) {
+                                        //绗笁鍒�
+                                        textRenderData.setText(products.get(0).getUnit() + "鈭�3" + index);
+                                        renderData.add(textRenderData);
+                                        paragraphRenderData.setContents(renderData);
+                                        paragraphRenderDataList.add(paragraphRenderData);
+                                        cellRenderData.setParagraphs(paragraphRenderDataList);
+                                        cells.add(cellRenderData);
+                                    } else if (j == 3) {
+                                        //绗洓鍒�
+                                        textRenderData.setText(products.get(0).getAsk() + "鈭�4" + index);
+                                        renderData.add(textRenderData);
+                                        paragraphRenderData.setContents(renderData);
+                                        paragraphRenderDataList.add(paragraphRenderData);
+                                        cellRenderData.setParagraphs(paragraphRenderDataList);
+                                        cells.add(cellRenderData);
+                                    } else if (j == 4) {
+                                        //绗簲鍒�
+                                        if ((i - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee)) % (angles + 1) == 1) {
+                                            textRenderData.setText("瑙掑害");
+                                        } else {
+                                            textRenderData.setText(result2s.get(0).getAngle().split(",")[(i - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) - 2) % (angles + 1)]);
+                                        }
+                                        renderData.add(textRenderData);
+                                        paragraphRenderData.setContents(renderData);
+                                        paragraphRenderDataList.add(paragraphRenderData);
+                                        cellRenderData.setParagraphs(paragraphRenderDataList);
+                                        cells.add(cellRenderData);
+                                    } else if (j == bb - 1) {
+                                        //鏈�鍚庝竴鍒�
+                                        if ((i - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee)) % (angles + 1) == 1) {
+                                            textRenderData.setText("/");
+                                        } else {
+                                            if (products.get(0).getInsResult() == 1) {
+                                                textRenderData.setText("鍚堟牸鈭�8" + index + ((i - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) + (angles - 1)) / (angles + 1) - 1));
+                                            } else if (products.get(0).getInsResult() == 0) {
+                                                textRenderData.setText("涓嶅悎鏍尖垜8" + index + ((i - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) + (angles - 1)) / (angles + 1) - 1));
+                                            } else {
+                                                textRenderData.setText("涓嶅垽瀹氣垜8" + index + ((i - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) + (angles - 1)) / (angles + 1) - 1));
+                                            }
+                                        }
+                                        renderData.add(textRenderData);
+                                        paragraphRenderData.setContents(renderData);
+                                        paragraphRenderDataList.add(paragraphRenderData);
+                                        cellRenderData.setParagraphs(paragraphRenderDataList);
+                                        cells.add(cellRenderData);
+                                    } else {
+                                        if ((i - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee)) % (angles + 1) == 1) {
+                                            textRenderData.setText(result2s.get((i - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee)) / portRow / (angles + 1)).getOften() + "鈭�6" + i + index);
+                                        } else {
+                                            String[] value = result2s.get((i - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee)) / portRow / (angles + 2)).getValue().split("\\],\\[");
+                                            String[] split = value[(i - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) - 2) % (angles + 1)].replaceAll("[\\[\\]\"]", "").split(",");
+                                            try {
+                                                textRenderData.setText(split[((j - 5) + ((i - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) - 1) / (angles + 1) % portRow) * (Math.min(ports, 8)))]);
+                                            } catch (Exception e) {
+                                                textRenderData.setText("");
+                                            }
+                                        }
+                                        renderData.add(textRenderData);
+                                        paragraphRenderData.setContents(renderData);
+                                        paragraphRenderDataList.add(paragraphRenderData);
+                                        cellRenderData.setParagraphs(paragraphRenderDataList);
+                                        cells.add(cellRenderData);
+                                    }
+                                }
+                            }
+                            else {
+                                //鐢佃皟鐗堟湰(澶嶆潅鐗�)
+                                if (inspectionItemSubclass.contains("鐢靛帇椹绘尝姣�") && i <= (angles + 1) * portRow) {
+                                    cc = (angles + 1) * portRow;
+                                    if (itemSet.add("鐢靛帇椹绘尝姣�")) {
+                                        index.getAndIncrement();
+                                    }
+                                    List<InsProduct> products = insProducts.stream().filter(insProduct -> insProduct.getInspectionItemSubclass().equals("鐢靛帇椹绘尝姣�")).collect(Collectors.toList());
+                                    List<InsProductResult2> result2s = insProductResult2s.stream()
+                                            .filter(insProductResult2 -> insProductResult2.getFrequency().equals(s) && insProductResult2.getInsProductId().equals(products.get(0).getId()))
+                                            .collect(Collectors.toList());
+                                    //鐢靛帇椹绘尝姣旀墍鍦ㄨ
+                                    if (j == 0) {
+                                        //绗竴鍒�
+                                        textRenderData.setText(index + "鈭�1" + index);
+                                        renderData.add(textRenderData);
+                                        paragraphRenderData.setContents(renderData);
+                                        paragraphRenderDataList.add(paragraphRenderData);
+                                        cellRenderData.setParagraphs(paragraphRenderDataList);
+                                        cells.add(cellRenderData);
+                                    } else if (j == 1) {
+                                        //绗簩鍒�
+                                        textRenderData.setText("鐢靛帇椹绘尝姣斺垜2" + index);
+                                        renderData.add(textRenderData);
+                                        paragraphRenderData.setContents(renderData);
+                                        paragraphRenderDataList.add(paragraphRenderData);
+                                        cellRenderData.setParagraphs(paragraphRenderDataList);
+                                        cells.add(cellRenderData);
+                                    } else if (j == 2) {
+                                        //绗笁鍒�
+                                        textRenderData.setText(products.get(0).getUnit() + "鈭�3" + index);
+                                        renderData.add(textRenderData);
+                                        paragraphRenderData.setContents(renderData);
+                                        paragraphRenderDataList.add(paragraphRenderData);
+                                        cellRenderData.setParagraphs(paragraphRenderDataList);
+                                        cells.add(cellRenderData);
+                                    } else if (j == 3) {
+                                        //绗洓鍒�
+                                        textRenderData.setText(products.get(0).getAsk() + "鈭�4" + index);
+                                        renderData.add(textRenderData);
+                                        paragraphRenderData.setContents(renderData);
+                                        paragraphRenderDataList.add(paragraphRenderData);
+                                        cellRenderData.setParagraphs(paragraphRenderDataList);
+                                        cells.add(cellRenderData);
+                                    } else if (j == 4) {
+                                        //绗簲鍒�
+                                        if (i % (angles + 1) == 1) {
+                                            //绔彛
+                                            textRenderData.setText("绔彛");
+                                        } else {
+                                            //瑙掑害
+                                            textRenderData.setText(result2s.get(0).getAngle().split(",")[(i + (angles - 1)) % (angles + 1)]);
+                                        }
+                                        renderData.add(textRenderData);
+                                        paragraphRenderData.setContents(renderData);
+                                        paragraphRenderDataList.add(paragraphRenderData);
+                                        cellRenderData.setParagraphs(paragraphRenderDataList);
+                                        cells.add(cellRenderData);
+                                    } else if (j == bb - 1) {
+                                        //鏈�鍚庝竴鍒�
+                                        if (i % (angles + 1) == 1) {
+                                            textRenderData.setText("/");
+                                        } else {
+                                            //缁撹
+                                            if (products.get(0).getInsResult() == 1) {
+                                                textRenderData.setText("鍚堟牸鈭�8" + index + ((i + (angles - 1)) / (angles + 1) - 1));
+                                            } else if (products.get(0).getInsResult() == 0) {
+                                                textRenderData.setText("涓嶅悎鏍尖垜8" + index + ((i + (angles - 1)) / (angles + 1) - 1));
+                                            } else {
+                                                textRenderData.setText("涓嶅垽瀹氣垜8" + index + ((i + (angles - 1)) / (angles + 1) - 1));
+                                            }
+                                        }
+                                        renderData.add(textRenderData);
+                                        paragraphRenderData.setContents(renderData);
+                                        paragraphRenderDataList.add(paragraphRenderData);
+                                        cellRenderData.setParagraphs(paragraphRenderDataList);
+                                        cells.add(cellRenderData);
+                                    } else {
+                                        //鍏朵綑鍒�
+                                        if (i % (angles + 1) == 1) {
+                                            //绔彛
+                                            try {
+                                                textRenderData.setText(result2s.get(0).getPort().split(",")[(j - 5) + (i / (angles + 1)) * (Math.min(ports, 8))]);
+                                            } catch (Exception e) {
+                                                textRenderData.setText("");
+                                            }
+                                        } else {
+                                            //鏈�宸��
+                                            String[] value = result2s.get(0).getValue().split("\\],\\[");
+                                            String[] split = value[(i + (angles - 1)) % (angles + 1)].replaceAll("[\\[\\]\"]", "").split(",");
+                                            try {
+                                                textRenderData.setText(split[(j - 5) + ((i + (angles - 1)) / (angles + 1) - 1) * (Math.min(ports, 8))]);
+                                            } catch (Exception e) {
+                                                textRenderData.setText("");
+                                            }
+                                        }
+                                        renderData.add(textRenderData);
+                                        paragraphRenderData.setContents(renderData);
+                                        paragraphRenderDataList.add(paragraphRenderData);
+                                        cellRenderData.setParagraphs(paragraphRenderDataList);
+                                        cells.add(cellRenderData);
+                                    }
+                                }
+                                if (inspectionItemSubclass.contains("鍚屾瀬鍖栭殧绂诲害")) {
+                                    List<InsProduct> products = insProducts.stream().filter(insProduct -> insProduct.getInspectionItemSubclass().equals("鍚屾瀬鍖栭殧绂诲害")).collect(Collectors.toList());
+                                    List<InsProductResult2> result2s = insProductResult2s.stream()
+                                            .filter(insProductResult2 -> insProductResult2.getFrequency().equals(s) && insProductResult2.getInsProductId().equals(products.get(0).getId()))
+                                            .collect(Collectors.toList());
+                                    int length = result2s.get(0).getPort().split(",").length;
+                                    int portRow2 = (length % (ports > 8 ? 4 : (ports + 1) / 2) == 0 ? length / (ports > 8 ? 4 : (ports + 1) / 2) : length / (ports > 8 ? 4 : (ports + 1) / 2) + 1);
+                                    int k = (angles + 1) * portRow2;
+                                    if (i > cc && i <= cc + k) {
+                                        dd = cc + k;
+                                        if (itemSet.add("鍚屾瀬鍖栭殧绂诲害")) {
+                                            index.getAndIncrement();
+                                        }
+                                        //鍚屾瀬鍖栭殧绂诲害鎵�鍦ㄨ
+                                        if (j == 0) {
+                                            //绗竴鍒�
+                                            textRenderData.setText(index + "鈭�1" + index);
+                                            renderData.add(textRenderData);
+                                            paragraphRenderData.setContents(renderData);
+                                            paragraphRenderDataList.add(paragraphRenderData);
+                                            cellRenderData.setParagraphs(paragraphRenderDataList);
+                                            cells.add(cellRenderData);
+                                        } else if (j == 1) {
+                                            //绗簩鍒�
+                                            textRenderData.setText("鍚屾瀬鍖栭殧绂诲害鈭�2" + index);
+                                            renderData.add(textRenderData);
+                                            paragraphRenderData.setContents(renderData);
+                                            paragraphRenderDataList.add(paragraphRenderData);
+                                            cellRenderData.setParagraphs(paragraphRenderDataList);
+                                            cells.add(cellRenderData);
+                                        } else if (j == 2) {
+                                            //绗笁鍒�
+                                            textRenderData.setText(products.get(0).getUnit() + "鈭�3" + index);
+                                            renderData.add(textRenderData);
+                                            paragraphRenderData.setContents(renderData);
+                                            paragraphRenderDataList.add(paragraphRenderData);
+                                            cellRenderData.setParagraphs(paragraphRenderDataList);
+                                            cells.add(cellRenderData);
+                                        } else if (j == 3) {
+                                            //绗洓鍒�
+                                            textRenderData.setText(products.get(0).getAsk() + "鈭�4" + index);
+                                            renderData.add(textRenderData);
+                                            paragraphRenderData.setContents(renderData);
+                                            paragraphRenderDataList.add(paragraphRenderData);
+                                            cellRenderData.setParagraphs(paragraphRenderDataList);
+                                            cells.add(cellRenderData);
+                                        } else if (j == 4) {
+                                            //绗簲鍒�
+                                            if ((i - cc) % (angles + 1) == 1) {
+                                                //绔彛
+                                                textRenderData.setText("绔彛");
+                                            } else {
+                                                //瑙掑害
+                                                textRenderData.setText(result2s.get(0).getAngle().split(",")[(i + (angles - 1)) % (angles + 1)]);
+                                            }
+                                            renderData.add(textRenderData);
+                                            paragraphRenderData.setContents(renderData);
+                                            paragraphRenderDataList.add(paragraphRenderData);
+                                            cellRenderData.setParagraphs(paragraphRenderDataList);
+                                            cells.add(cellRenderData);
+                                        } else if (j == bb - 1) {
+                                            //鏈�鍚庝竴鍒�
+                                            if ((i - cc) % (angles + 1) == 1) {
+                                                textRenderData.setText("/");
+                                            } else {
+                                                //缁撹
+                                                if (products.get(0).getInsResult() == 1) {
+                                                    textRenderData.setText("鍚堟牸鈭�8" + index + ((i - cc) / (angles + 2)));
+                                                } else if (products.get(0).getInsResult() == 0) {
+                                                    textRenderData.setText("涓嶅悎鏍尖垜8" + index + ((i - cc) / (angles + 2)));
+                                                } else {
+                                                    textRenderData.setText("涓嶅垽瀹氣垜8" + index + ((i - cc) / (angles + 2)));
+                                                }
+                                            }
+                                            renderData.add(textRenderData);
+                                            paragraphRenderData.setContents(renderData);
+                                            paragraphRenderDataList.add(paragraphRenderData);
+                                            cellRenderData.setParagraphs(paragraphRenderDataList);
+                                            cells.add(cellRenderData);
+                                        } else {
+                                            //鍏朵綑鍒�
+                                            if ((i - cc) % (angles + 1) == 1) {
+                                                //绔彛
+                                                if (j % 2 == 0) {
+                                                    try {
+                                                        textRenderData.setText(result2s.get(0).getPort().split(",")[(j - 6) / 2 + ((i - cc) / (angles + 1)) * (ports > 8 ? 4 : (ports + 1) / 2)] + "鈭�5" + i + (j - 6));
+                                                    } catch (Exception e) {
+                                                        textRenderData.setText("");
+                                                    }
+                                                } else {
+                                                    try {
+                                                        textRenderData.setText(result2s.get(0).getPort().split(",")[(j - 5) / 2 + ((i - cc) / (angles + 1)) * (ports > 8 ? 4 : (ports + 1) / 2)] + "鈭�5" + i + (j - 5));
+                                                    } catch (Exception e) {
+                                                        textRenderData.setText("");
+                                                    }
+                                                }
+
+                                            } else {
+                                                //鏈�宸��
+                                                String[] value = result2s.get(0).getValue().split("\\],\\[");
+                                                String[] split = value[(i + (angles - 1)) % (angles + 1)].replaceAll("[\\[\\]\"]", "").split(",");
+                                                if (j % 2 == 0) {
+                                                    try {
+                                                        textRenderData.setText(split[(j - 6) / 2 + ((i - cc) / (angles + 2)) * (ports > 8 ? 4 : (ports + 1) / 2)] + "鈭�5" + i + (j - 6));
+                                                    } catch (Exception e) {
+                                                        textRenderData.setText("");
+                                                    }
+                                                } else {
+                                                    try {
+                                                        textRenderData.setText(split[(j - 5) / 2 + ((i - cc) / (angles + 2)) * (ports > 8 ? 4 : (ports + 1) / 2)] + "鈭�5" + i + (j - 5));
+                                                    } catch (Exception e) {
+                                                        textRenderData.setText("");
+                                                    }
+                                                }
+                                            }
+                                            renderData.add(textRenderData);
+                                            paragraphRenderData.setContents(renderData);
+                                            paragraphRenderDataList.add(paragraphRenderData);
+                                            cellRenderData.setParagraphs(paragraphRenderDataList);
+                                            cells.add(cellRenderData);
+                                        }
+                                    }
+                                }
+                                if (inspectionItemSubclass.contains("寮傛瀬鍖栭殧绂诲害")) {
+                                    List<InsProduct> products = insProducts.stream().filter(insProduct -> insProduct.getInspectionItemSubclass().equals("寮傛瀬鍖栭殧绂诲害")).collect(Collectors.toList());
+                                    List<InsProductResult2> result2s = insProductResult2s.stream()
+                                            .filter(insProductResult2 -> insProductResult2.getFrequency().equals(s) && insProductResult2.getInsProductId().equals(products.get(0).getId()))
+                                            .collect(Collectors.toList());
+                                    int length = result2s.get(0).getPort().split(",").length;
+                                    int portRow2 = (length % (ports > 8 ? 4 : (ports + 1) / 2) == 0 ? length / (ports > 8 ? 4 : (ports + 1) / 2) : length / (ports > 8 ? 4 : (ports + 1) / 2) + 1);
+                                    int k = (angles + 1) * portRow2;
+                                    if (i > (dd == 0 ? cc : dd) && i <= (dd == 0 ? cc : dd) + k) {
+                                        ee = (dd == 0 ? cc : dd) + k;
+                                        if (itemSet.add("寮傛瀬鍖栭殧绂诲害")) {
+                                            index.getAndIncrement();
+                                        }
+                                        //寮傛瀬鍖栭殧绂诲害鎵�鍦ㄨ
+                                        if (j == 0) {
+                                            //绗竴鍒�
+                                            textRenderData.setText(index + "鈭�1" + index);
+                                            renderData.add(textRenderData);
+                                            paragraphRenderData.setContents(renderData);
+                                            paragraphRenderDataList.add(paragraphRenderData);
+                                            cellRenderData.setParagraphs(paragraphRenderDataList);
+                                            cells.add(cellRenderData);
+                                        } else if (j == 1) {
+                                            //绗簩鍒�
+                                            textRenderData.setText("寮傛瀬鍖栭殧绂诲害鈭�2" + index);
+                                            renderData.add(textRenderData);
+                                            paragraphRenderData.setContents(renderData);
+                                            paragraphRenderDataList.add(paragraphRenderData);
+                                            cellRenderData.setParagraphs(paragraphRenderDataList);
+                                            cells.add(cellRenderData);
+                                        } else if (j == 2) {
+                                            //绗笁鍒�
+                                            textRenderData.setText(products.get(0).getUnit() + "鈭�3" + index);
+                                            renderData.add(textRenderData);
+                                            paragraphRenderData.setContents(renderData);
+                                            paragraphRenderDataList.add(paragraphRenderData);
+                                            cellRenderData.setParagraphs(paragraphRenderDataList);
+                                            cells.add(cellRenderData);
+                                        } else if (j == 3) {
+                                            //绗洓鍒�
+                                            textRenderData.setText(products.get(0).getAsk() + "鈭�4" + index);
+                                            renderData.add(textRenderData);
+                                            paragraphRenderData.setContents(renderData);
+                                            paragraphRenderDataList.add(paragraphRenderData);
+                                            cellRenderData.setParagraphs(paragraphRenderDataList);
+                                            cells.add(cellRenderData);
+                                        } else if (j == 4) {
+                                            //绗簲鍒�
+                                            if ((i - (dd == 0 ? cc : dd)) % (angles + 1) == 1) {
+                                                //绔彛
+                                                textRenderData.setText("绔彛");
+                                            } else {
+                                                //瑙掑害
+                                                textRenderData.setText(result2s.get(0).getAngle().split(",")[(i + (angles - 1)) % (angles + 1)]);
+                                            }
+                                            renderData.add(textRenderData);
+                                            paragraphRenderData.setContents(renderData);
+                                            paragraphRenderDataList.add(paragraphRenderData);
+                                            cellRenderData.setParagraphs(paragraphRenderDataList);
+                                            cells.add(cellRenderData);
+                                        } else if (j == bb - 1) {
+                                            //鏈�鍚庝竴鍒�
+                                            if ((i - (dd == 0 ? cc : dd)) % (angles + 1) == 1) {
+                                                textRenderData.setText("/");
+                                            } else {
+                                                //缁撹
+                                                if (products.get(0).getInsResult() == 1) {
+                                                    textRenderData.setText("鍚堟牸鈭�8" + index + ((i - (dd == 0 ? cc : dd)) / (angles + 2)));
+                                                } else if (products.get(0).getInsResult() == 0) {
+                                                    textRenderData.setText("涓嶅悎鏍尖垜8" + index + ((i - (dd == 0 ? cc : dd)) / (angles + 2)));
+                                                } else {
+                                                    textRenderData.setText("涓嶅垽瀹氣垜8" + index + ((i - (dd == 0 ? cc : dd)) / (angles + 2)));
+                                                }
+                                            }
+                                            renderData.add(textRenderData);
+                                            paragraphRenderData.setContents(renderData);
+                                            paragraphRenderDataList.add(paragraphRenderData);
+                                            cellRenderData.setParagraphs(paragraphRenderDataList);
+                                            cells.add(cellRenderData);
+                                        } else {
+                                            //鍏朵綑鍒�
+                                            if ((i - (dd == 0 ? cc : dd)) % (angles + 1) == 1) {
+                                                //绔彛
+                                                if (j % 2 == 0) {
+                                                    try {
+                                                        textRenderData.setText(result2s.get(0).getPort().split(",")[(j - 6) / 2 + ((i - (dd == 0 ? cc : dd)) / (angles + 1)) * (ports > 8 ? 4 : (ports + 1) / 2)] + "鈭�5" + i + (j - 6));
+                                                    } catch (Exception e) {
+                                                        textRenderData.setText("");
+                                                    }
+                                                } else {
+                                                    try {
+                                                        textRenderData.setText(result2s.get(0).getPort().split(",")[(j - 5) / 2 + ((i - (dd == 0 ? cc : dd)) / (angles + 1)) * (ports > 8 ? 4 : (ports + 1) / 2)] + "鈭�5" + i + (j - 5));
+                                                    } catch (Exception e) {
+                                                        textRenderData.setText("");
+                                                    }
+                                                }
+                                            } else {
+                                                //鏈�宸��
+                                                String[] value = result2s.get(0).getValue().split("\\],\\[");
+                                                String[] split = value[(i + (angles - 1)) % (angles + 1)].replaceAll("[\\[\\]\"]", "").split(",");
+                                                if (j % 2 == 0) {
+                                                    try {
+                                                        textRenderData.setText(split[(j - 6) / 2 + ((i - (dd == 0 ? cc : dd)) / (angles + 2)) * (ports > 8 ? 4 : (ports + 1) / 2)] + "鈭�5" + i + (j - 6));
+                                                    } catch (Exception e) {
+                                                        textRenderData.setText("");
+                                                    }
+                                                } else {
+                                                    try {
+                                                        textRenderData.setText(split[(j - 5) / 2 + ((i - (dd == 0 ? cc : dd)) / (angles + 2)) * (ports > 8 ? 4 : (ports + 1) / 2)] + "鈭�5" + i + (j - 5));
+                                                    } catch (Exception e) {
+                                                        textRenderData.setText("");
+                                                    }
+                                                }
+                                            }
+                                            renderData.add(textRenderData);
+                                            paragraphRenderData.setContents(renderData);
+                                            paragraphRenderDataList.add(paragraphRenderData);
+                                            cellRenderData.setParagraphs(paragraphRenderDataList);
+                                            cells.add(cellRenderData);
+                                        }
+                                    }
+                                }
+                                if (inspectionItemSubclass.contains("浜掕皟") && i > (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) && i <= ((ee == 0 ? ((dd == 0 ? cc : dd)) : ee) + (angles + 1) * portRow * often)) {
+                                    ff = (int) ((ee == 0 ? ((dd == 0 ? cc : dd)) : ee) + (angles + 1) * portRow * often);
+                                    if (itemSet.add("浜掕皟")) {
+                                        index.getAndIncrement();
+                                    }
+                                    List<InsProduct> products = insProducts.stream().filter(insProduct -> insProduct.getInspectionItemSubclass().equals("浜掕皟")).collect(Collectors.toList());
+                                    List<InsProductResult2> result2s = insProductResult2s.stream()
+                                            .filter(insProductResult2 -> insProductResult2.getFrequency().equals(s) && insProductResult2.getInsProductId().equals(products.get(0).getId()))
+                                            .collect(Collectors.toList());
+                                    //浜掕皟鎵�鍦ㄨ
+                                    if (j == 0) {
+                                        //绗竴鍒�
+                                        textRenderData.setText(index + "鈭�1" + index);
+                                        renderData.add(textRenderData);
+                                        paragraphRenderData.setContents(renderData);
+                                        paragraphRenderDataList.add(paragraphRenderData);
+                                        cellRenderData.setParagraphs(paragraphRenderDataList);
+                                        cells.add(cellRenderData);
+                                    } else if (j == 1) {
+                                        //绗簩鍒�
+                                        textRenderData.setText("浜掕皟鈭�2" + index);
+                                        renderData.add(textRenderData);
+                                        paragraphRenderData.setContents(renderData);
+                                        paragraphRenderDataList.add(paragraphRenderData);
+                                        cellRenderData.setParagraphs(paragraphRenderDataList);
+                                        cells.add(cellRenderData);
+                                    } else if (j == 2) {
+                                        //绗笁鍒�
+                                        textRenderData.setText(products.get(0).getUnit() + "鈭�3" + index);
+                                        renderData.add(textRenderData);
+                                        paragraphRenderData.setContents(renderData);
+                                        paragraphRenderDataList.add(paragraphRenderData);
+                                        cellRenderData.setParagraphs(paragraphRenderDataList);
+                                        cells.add(cellRenderData);
+                                    } else if (j == 3) {
+                                        //绗洓鍒�
+                                        textRenderData.setText(products.get(0).getAsk() + "鈭�4" + index);
+                                        renderData.add(textRenderData);
+                                        paragraphRenderData.setContents(renderData);
+                                        paragraphRenderDataList.add(paragraphRenderData);
+                                        cellRenderData.setParagraphs(paragraphRenderDataList);
+                                        cells.add(cellRenderData);
+                                    } else if (j == 4) {
+                                        //绗簲鍒�
+                                        if ((i - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee)) % (angles + 1) == 1) {
+                                            //瑙掑害
+                                            textRenderData.setText("瑙掑害");
+                                        } else {
+                                            //鍊�
+                                            textRenderData.setText(result2s.get(0).getAngle().split(",")[(i + (angles - 1)) % (angles + 1)]);
+                                        }
+                                        renderData.add(textRenderData);
+                                        paragraphRenderData.setContents(renderData);
+                                        paragraphRenderDataList.add(paragraphRenderData);
+                                        cellRenderData.setParagraphs(paragraphRenderDataList);
+                                        cells.add(cellRenderData);
+                                    } else if (j == bb - 1) {
+                                        //鏈�鍚庝竴鍒�
+                                        if ((i - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee)) % (angles + 1) == 1) {
+                                            textRenderData.setText("/");
+                                        } else {
+                                            //缁撹
+                                            if (products.get(0).getInsResult() == 1) {
+                                                textRenderData.setText("鍚堟牸鈭�8" + index + ((i - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) + (angles - 1)) / (angles + 1) - 1));
+                                            } else if (products.get(0).getInsResult() == 0) {
+                                                textRenderData.setText("涓嶅悎鏍尖垜8" + index + ((i - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) + (angles - 1)) / (angles + 1) - 1));
+                                            } else {
+                                                textRenderData.setText("涓嶅垽瀹氣垜8" + index + ((i - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) + (angles - 1)) / (angles + 1) - 1));
+                                            }
+                                        }
+                                        renderData.add(textRenderData);
+                                        paragraphRenderData.setContents(renderData);
+                                        paragraphRenderDataList.add(paragraphRenderData);
+                                        cellRenderData.setParagraphs(paragraphRenderDataList);
+                                        cells.add(cellRenderData);
+                                    } else {
+                                        //鍏朵綑鍒�
+                                        if ((i - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee)) % (angles + 1) == 1) {
+                                            //棰戠偣
+                                            textRenderData.setText(result2s.get((i - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee)) / portRow / (angles + 1)).getOften() + "鈭�6" + i + index);
+                                        } else {
+                                            //鏈�宸��
+                                            String[] value = result2s.get((i - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee)) / portRow / (angles + 2)).getValue().split("\\],\\[");
+                                            String[] split = value[(i + (angles - 1)) % (angles + 1)].replaceAll("[\\[\\]\"]", "").split(",");
+                                            try {
+                                                textRenderData.setText(split[((j - 5) + ((i - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) - 1) / (angles + 1) % portRow) * (Math.min(ports, 8)))]);
+                                            } catch (Exception e) {
+                                                textRenderData.setText("");
+                                            }
+                                        }
+                                        renderData.add(textRenderData);
+                                        paragraphRenderData.setContents(renderData);
+                                        paragraphRenderDataList.add(paragraphRenderData);
+                                        cellRenderData.setParagraphs(paragraphRenderDataList);
+                                        cells.add(cellRenderData);
+                                    }
+                                }
+                                if (inspectionItemSubclass.contains("鏈�澶ц�﹀悎搴�") && i > (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) && i <= ((ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) + (angles + 1))) {
+                                    gg = ((ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) + (angles + 1));
+                                    if (itemSet.add("鏈�澶ц�﹀悎搴�")) {
+                                        index.getAndIncrement();
+                                    }
+                                    List<InsProduct> products = insProducts.stream().filter(insProduct -> insProduct.getInspectionItemSubclass().equals("鏈�澶ц�﹀悎搴�")).collect(Collectors.toList());
+                                    List<InsProductResult2> result2s = insProductResult2s.stream()
+                                            .filter(insProductResult2 -> insProductResult2.getFrequency().equals(s) && insProductResult2.getInsProductId().equals(products.get(0).getId()))
+                                            .collect(Collectors.toList());
+                                    //鏈�澶ц�﹀悎搴︽墍鍦ㄨ
+                                    if (j == 0) {
+                                        //绗竴鍒�
+                                        textRenderData.setText(index + "鈭�1" + index);
+                                        renderData.add(textRenderData);
+                                        paragraphRenderData.setContents(renderData);
+                                        paragraphRenderDataList.add(paragraphRenderData);
+                                        cellRenderData.setParagraphs(paragraphRenderDataList);
+                                        cells.add(cellRenderData);
+                                    } else if (j == 1) {
+                                        //绗簩鍒�
+                                        textRenderData.setText("鏈�澶ц�﹀悎搴︹垜2" + index);
+                                        renderData.add(textRenderData);
+                                        paragraphRenderData.setContents(renderData);
+                                        paragraphRenderDataList.add(paragraphRenderData);
+                                        cellRenderData.setParagraphs(paragraphRenderDataList);
+                                        cells.add(cellRenderData);
+                                    } else if (j == 2) {
+                                        //绗笁鍒�
+                                        textRenderData.setText(products.get(0).getUnit() + "鈭�3" + index);
+                                        renderData.add(textRenderData);
+                                        paragraphRenderData.setContents(renderData);
+                                        paragraphRenderDataList.add(paragraphRenderData);
+                                        cellRenderData.setParagraphs(paragraphRenderDataList);
+                                        cells.add(cellRenderData);
+                                    } else if (j == 3) {
+                                        //绗洓鍒�
+                                        textRenderData.setText(products.get(0).getAsk() + "鈭�4" + index);
+                                        renderData.add(textRenderData);
+                                        paragraphRenderData.setContents(renderData);
+                                        paragraphRenderDataList.add(paragraphRenderData);
+                                        cellRenderData.setParagraphs(paragraphRenderDataList);
+                                        cells.add(cellRenderData);
+                                    } else if (j == 4) {
+                                        //绗簲鍒�
+                                        if ((i - (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff)) % (angles + 1) == 1) {
+                                            //瑙掑害
+                                            textRenderData.setText("瑙掑害");
+                                        } else {
+                                            //鍊�
+                                            textRenderData.setText(result2s.get(0).getAngle().split(",")[(i + (angles - 1)) % (angles + 1)]);
+                                        }
+                                        renderData.add(textRenderData);
+                                        paragraphRenderData.setContents(renderData);
+                                        paragraphRenderDataList.add(paragraphRenderData);
+                                        cellRenderData.setParagraphs(paragraphRenderDataList);
+                                        cells.add(cellRenderData);
+                                    } else if (j == bb - 1) {
+                                        //鏈�鍚庝竴鍒�
+                                        if ((i - (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff)) % (angles + 1) == 1) {
+                                            textRenderData.setText("/");
+                                        } else {
+                                            //缁撹
+                                            if (products.get(0).getInsResult() == 1) {
+                                                textRenderData.setText("鍚堟牸鈭�8" + index);
+                                            } else if (products.get(0).getInsResult() == 0) {
+                                                textRenderData.setText("涓嶅悎鏍尖垜8" + index);
+                                            } else {
+                                                textRenderData.setText("涓嶅垽瀹氣垜8" + index);
+                                            }
+                                        }
+                                        renderData.add(textRenderData);
+                                        paragraphRenderData.setContents(renderData);
+                                        paragraphRenderDataList.add(paragraphRenderData);
+                                        cellRenderData.setParagraphs(paragraphRenderDataList);
+                                        cells.add(cellRenderData);
+                                    } else {
+                                        //鍏朵綑鍒�
+                                        if ((i - (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff)) % (angles + 1) == 1) {
+                                            //棰戠偣
+                                            textRenderData.setText(result2s.get(0).getOften() + "鈭�6" + index);
+                                        } else {
+                                            //鏈�宸��
+                                            String[] value = result2s.get(0).getValue().split("\\],\\[");
+                                            String[] split = value[(i + (angles - 1)) % (angles + 1)].replaceAll("[\\[\\]\"]", "").split(",");
+                                            textRenderData.setText(split[0] + "鈭�7" + i);
+                                        }
+                                        renderData.add(textRenderData);
+                                        paragraphRenderData.setContents(renderData);
+                                        paragraphRenderDataList.add(paragraphRenderData);
+                                        cellRenderData.setParagraphs(paragraphRenderDataList);
+                                        cells.add(cellRenderData);
+                                    }
+                                }
+                                if (inspectionItemSubclass.contains("鏈�灏忚�﹀悎搴�") && i > (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg) && i <= ((gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg) + (angles + 1))) {
+                                    hh = (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg) + (angles + 1);
+                                    if (itemSet.add("鏈�灏忚�﹀悎搴�")) {
+                                        index.getAndIncrement();
+                                    }
+                                    List<InsProduct> products = insProducts.stream().filter(insProduct -> insProduct.getInspectionItemSubclass().equals("鏈�灏忚�﹀悎搴�")).collect(Collectors.toList());
+                                    List<InsProductResult2> result2s = insProductResult2s.stream()
+                                            .filter(insProductResult2 -> insProductResult2.getFrequency().equals(s) && insProductResult2.getInsProductId().equals(products.get(0).getId()))
+                                            .collect(Collectors.toList());
+                                    //鏈�灏忚�﹀悎搴︽墍鍦ㄨ
+                                    if (j == 0) {
+                                        //绗竴鍒�
+                                        textRenderData.setText(index + "鈭�1" + index);
+                                        renderData.add(textRenderData);
+                                        paragraphRenderData.setContents(renderData);
+                                        paragraphRenderDataList.add(paragraphRenderData);
+                                        cellRenderData.setParagraphs(paragraphRenderDataList);
+                                        cells.add(cellRenderData);
+                                    } else if (j == 1) {
+                                        //绗簩鍒�
+                                        textRenderData.setText("鏈�灏忚�﹀悎搴︹垜2" + index);
+                                        renderData.add(textRenderData);
+                                        paragraphRenderData.setContents(renderData);
+                                        paragraphRenderDataList.add(paragraphRenderData);
+                                        cellRenderData.setParagraphs(paragraphRenderDataList);
+                                        cells.add(cellRenderData);
+                                    } else if (j == 2) {
+                                        //绗笁鍒�
+                                        textRenderData.setText(products.get(0).getUnit() + "鈭�3" + index);
+                                        renderData.add(textRenderData);
+                                        paragraphRenderData.setContents(renderData);
+                                        paragraphRenderDataList.add(paragraphRenderData);
+                                        cellRenderData.setParagraphs(paragraphRenderDataList);
+                                        cells.add(cellRenderData);
+                                    } else if (j == 3) {
+                                        //绗洓鍒�
+                                        textRenderData.setText(products.get(0).getAsk() + "鈭�4" + index);
+                                        renderData.add(textRenderData);
+                                        paragraphRenderData.setContents(renderData);
+                                        paragraphRenderDataList.add(paragraphRenderData);
+                                        cellRenderData.setParagraphs(paragraphRenderDataList);
+                                        cells.add(cellRenderData);
+                                    } else if (j == 4) {
+                                        //绗簲鍒�
+                                        if ((i - (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg)) % (angles + 1) == 1) {
+                                            //瑙掑害
+                                            textRenderData.setText("瑙掑害");
+                                        } else {
+                                            //鍊�
+                                            textRenderData.setText(result2s.get(0).getAngle().split(",")[(i + (angles - 1)) % (angles + 1)]);
+                                        }
+                                        renderData.add(textRenderData);
+                                        paragraphRenderData.setContents(renderData);
+                                        paragraphRenderDataList.add(paragraphRenderData);
+                                        cellRenderData.setParagraphs(paragraphRenderDataList);
+                                        cells.add(cellRenderData);
+                                    } 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("/");
+                                        } else {
+                                            //缁撹
+                                            if (products.get(0).getInsResult() == 1) {
+                                                textRenderData.setText("鍚堟牸鈭�8" + index);
+                                            } else if (products.get(0).getInsResult() == 0) {
+                                                textRenderData.setText("涓嶅悎鏍尖垜8" + index);
+                                            } else {
+                                                textRenderData.setText("涓嶅垽瀹氣垜8" + index);
+                                            }
+                                        }
+                                        renderData.add(textRenderData);
+                                        paragraphRenderData.setContents(renderData);
+                                        paragraphRenderDataList.add(paragraphRenderData);
+                                        cellRenderData.setParagraphs(paragraphRenderDataList);
+                                        cells.add(cellRenderData);
+                                    } else {
+                                        //鍏朵綑鍒�
+                                        if ((i - (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg)) % (angles + 1) == 1) {
+                                            //棰戠偣
+                                            textRenderData.setText(result2s.get(0).getOften() + "鈭�6" + index);
+                                        } else {
+                                            //鏈�宸��
+                                            String[] value = result2s.get(0).getValue().split("\\],\\[");
+                                            String[] split = value[(i + (angles - 1)) % (angles + 1)].replaceAll("[\\[\\]\"]", "").split(",");
+                                            textRenderData.setText(split[0] + "鈭�7" + i);
+                                        }
+                                        renderData.add(textRenderData);
+                                        paragraphRenderData.setContents(renderData);
+                                        paragraphRenderDataList.add(paragraphRenderData);
+                                        cellRenderData.setParagraphs(paragraphRenderDataList);
+                                        cells.add(cellRenderData);
+                                    }
+                                }
+                                if (inspectionItemSubclass.contains("骞呭害鍋忓樊")) {
+                                    List<InsProduct> products = insProducts.stream().filter(insProduct -> insProduct.getInspectionItemSubclass().equals("骞呭害鍋忓樊")).collect(Collectors.toList());
+                                    List<InsProductResult2> result2s = insProductResult2s.stream()
+                                            .filter(insProductResult2 -> insProductResult2.getFrequency().equals(s) && insProductResult2.getInsProductId().equals(products.get(0).getId()))
+                                            .collect(Collectors.toList());
+                                    int length = result2s.get(0).getPort().split(",").length;
+                                    int portRow2 = (length % 8 == 0 ? length / 8 : length / 8 + 1);
+                                    int k = (angles + 1) * portRow2;
+                                    if (i > (hh == 0 ? (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg) : hh) && i <= (hh == 0 ? (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg) : hh) + k) {
+                                        mm = (hh == 0 ? (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg) : hh) + k;
+                                        if (itemSet.add("骞呭害鍋忓樊")) {
+                                            index.getAndIncrement();
+                                        }
+                                        //骞呭害鍋忓樊鎵�鍦ㄨ
+                                        if (j == 0) {
+                                            //绗竴鍒�
+                                            textRenderData.setText(index + "鈭�1" + index);
+                                            renderData.add(textRenderData);
+                                            paragraphRenderData.setContents(renderData);
+                                            paragraphRenderDataList.add(paragraphRenderData);
+                                            cellRenderData.setParagraphs(paragraphRenderDataList);
+                                            cells.add(cellRenderData);
+                                        } else if (j == 1) {
+                                            //绗簩鍒�
+                                            textRenderData.setText("骞呭害鍋忓樊鈭�2" + index);
+                                            renderData.add(textRenderData);
+                                            paragraphRenderData.setContents(renderData);
+                                            paragraphRenderDataList.add(paragraphRenderData);
+                                            cellRenderData.setParagraphs(paragraphRenderDataList);
+                                            cells.add(cellRenderData);
+                                        } else if (j == 2) {
+                                            //绗笁鍒�
+                                            textRenderData.setText(products.get(0).getUnit() + "鈭�3" + index);
+                                            renderData.add(textRenderData);
+                                            paragraphRenderData.setContents(renderData);
+                                            paragraphRenderDataList.add(paragraphRenderData);
+                                            cellRenderData.setParagraphs(paragraphRenderDataList);
+                                            cells.add(cellRenderData);
+                                        } else if (j == 3) {
+                                            //绗洓鍒�
+                                            textRenderData.setText(products.get(0).getAsk() + "鈭�4" + index);
+                                            renderData.add(textRenderData);
+                                            paragraphRenderData.setContents(renderData);
+                                            paragraphRenderDataList.add(paragraphRenderData);
+                                            cellRenderData.setParagraphs(paragraphRenderDataList);
+                                            cells.add(cellRenderData);
+                                        } else if (j == 4) {
+                                            //绗簲鍒�
+                                            if ((i - (hh == 0 ? (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg) : hh)) % (angles + 1) == 1) {
+                                                //棰戞
+                                                textRenderData.setText("棰戞");
+                                            } else {
+                                                //瑙掑害
+                                                textRenderData.setText(result2s.get(0).getAngle().split(",")[(i + (angles - 1)) % (angles + 1)]);
+                                            }
+                                            renderData.add(textRenderData);
+                                            paragraphRenderData.setContents(renderData);
+                                            paragraphRenderDataList.add(paragraphRenderData);
+                                            cellRenderData.setParagraphs(paragraphRenderDataList);
+                                            cells.add(cellRenderData);
+                                        } 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("/");
+                                            } else {
+                                                //缁撹
+                                                if (products.get(0).getInsResult() == 1) {
+                                                    textRenderData.setText("鍚堟牸鈭�8" + index + ((i - (hh == 0 ? (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg) : hh)) / (angles + 2)));
+                                                } else if (products.get(0).getInsResult() == 0) {
+                                                    textRenderData.setText("涓嶅悎鏍尖垜8" + index + ((i - (hh == 0 ? (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg) : hh)) / (angles + 2)));
+                                                } else {
+                                                    textRenderData.setText("涓嶅垽瀹氣垜8" + index + ((i - (hh == 0 ? (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg) : hh)) / (angles + 2)));
+                                                }
+                                            }
+                                            renderData.add(textRenderData);
+                                            paragraphRenderData.setContents(renderData);
+                                            paragraphRenderDataList.add(paragraphRenderData);
+                                            cellRenderData.setParagraphs(paragraphRenderDataList);
+                                            cells.add(cellRenderData);
+                                        } else {
+                                            //鍏朵綑鍒�
+                                            if ((i - (hh == 0 ? (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg) : hh)) % (angles + 1) == 1) {
+                                                //棰戞
+                                                try {
+                                                    textRenderData.setText(result2s.get(0).getPort().split(",")[(j - 5) + ((i - (hh == 0 ? (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg) : hh)) / (angles + 2)) * Math.min(length, 8)]);
+                                                } catch (Exception e) {
+                                                    textRenderData.setText("");
+                                                }
+                                            } else {
+                                                //鏈�宸��
+                                                String[] value = result2s.get(0).getValue().split("\\],\\[");
+                                                String[] split = value[(i + (angles - 1)) % (angles + 1)].replaceAll("[\\[\\]\"]", "").split(",");
+                                                try {
+                                                    textRenderData.setText(split[(j - 5) + ((i - (hh == 0 ? (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg) : hh)) / (angles + 2)) * Math.min(length, 8)]);
+                                                } catch (Exception e) {
+                                                    textRenderData.setText("");
+                                                }
+                                            }
+                                            renderData.add(textRenderData);
+                                            paragraphRenderData.setContents(renderData);
+                                            paragraphRenderDataList.add(paragraphRenderData);
+                                            cellRenderData.setParagraphs(paragraphRenderDataList);
+                                            cells.add(cellRenderData);
+                                        }
+                                    }
+                                }
+                                if (inspectionItemSubclass.contains("鏈�澶х浉浣嶅亸宸�")) {
+                                    List<InsProduct> products = insProducts.stream().filter(insProduct -> insProduct.getInspectionItemSubclass().equals("鏈�澶х浉浣嶅亸宸�")).collect(Collectors.toList());
+                                    List<InsProductResult2> result2s = insProductResult2s.stream()
+                                            .filter(insProductResult2 -> insProductResult2.getFrequency().equals(s) && insProductResult2.getInsProductId().equals(products.get(0).getId()))
+                                            .collect(Collectors.toList());
+                                    int length = result2s.get(0).getPort().split(",").length;
+                                    int portRow2 = (length % 8 == 0 ? length / 8 : length / 8 + 1);
+                                    int k = (angles + 1) * portRow2;
+                                    if (i > (mm == 0 ? (hh == 0 ? (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg) : hh) : mm)) {
+                                        if (itemSet.add("鏈�澶х浉浣嶅亸宸�")) {
+                                            index.getAndIncrement();
+                                        }
+                                        //鏈�澶х浉浣嶅亸宸墍鍦ㄨ
+                                        if (j == 0) {
+                                            //绗竴鍒�
+                                            textRenderData.setText(index + "鈭�1" + index);
+                                            renderData.add(textRenderData);
+                                            paragraphRenderData.setContents(renderData);
+                                            paragraphRenderDataList.add(paragraphRenderData);
+                                            cellRenderData.setParagraphs(paragraphRenderDataList);
+                                            cells.add(cellRenderData);
+                                        } else if (j == 1) {
+                                            //绗簩鍒�
+                                            textRenderData.setText("鏈�澶х浉浣嶅亸宸垜2" + index);
+                                            renderData.add(textRenderData);
+                                            paragraphRenderData.setContents(renderData);
+                                            paragraphRenderDataList.add(paragraphRenderData);
+                                            cellRenderData.setParagraphs(paragraphRenderDataList);
+                                            cells.add(cellRenderData);
+                                        } else if (j == 2) {
+                                            //绗笁鍒�
+                                            textRenderData.setText(products.get(0).getUnit() + "鈭�3" + index);
+                                            renderData.add(textRenderData);
+                                            paragraphRenderData.setContents(renderData);
+                                            paragraphRenderDataList.add(paragraphRenderData);
+                                            cellRenderData.setParagraphs(paragraphRenderDataList);
+                                            cells.add(cellRenderData);
+                                        } else if (j == 3) {
+                                            //绗洓鍒�
+                                            textRenderData.setText(products.get(0).getAsk() + "鈭�4" + index);
+                                            renderData.add(textRenderData);
+                                            paragraphRenderData.setContents(renderData);
+                                            paragraphRenderDataList.add(paragraphRenderData);
+                                            cellRenderData.setParagraphs(paragraphRenderDataList);
+                                            cells.add(cellRenderData);
+                                        } else if (j == 4) {
+                                            //绗簲鍒�
+                                            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("棰戞");
+                                            } else {
+                                                //瑙掑害
+                                                textRenderData.setText(result2s.get(0).getAngle().split(",")[(i + (angles - 1)) % (angles + 1)]);
+                                            }
+                                            renderData.add(textRenderData);
+                                            paragraphRenderData.setContents(renderData);
+                                            paragraphRenderDataList.add(paragraphRenderData);
+                                            cellRenderData.setParagraphs(paragraphRenderDataList);
+                                            cells.add(cellRenderData);
+                                        } 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("/");
+                                            } else {
+                                                //缁撹
+                                                if (products.get(0).getInsResult() == 1) {
+                                                    textRenderData.setText("鍚堟牸鈭�8" + index + ((i - (mm == 0 ? (hh == 0 ? (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg) : hh) : mm)) / (angles + 2)));
+                                                } else if (products.get(0).getInsResult() == 0) {
+                                                    textRenderData.setText("涓嶅悎鏍尖垜8" + index + ((i - (mm == 0 ? (hh == 0 ? (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg) : hh) : mm)) / (angles + 2)));
+                                                } else {
+                                                    textRenderData.setText("涓嶅垽瀹氣垜8" + index + ((i - (mm == 0 ? (hh == 0 ? (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg) : hh) : mm)) / (angles + 2)));
+                                                }
+                                            }
+                                            renderData.add(textRenderData);
+                                            paragraphRenderData.setContents(renderData);
+                                            paragraphRenderDataList.add(paragraphRenderData);
+                                            cellRenderData.setParagraphs(paragraphRenderDataList);
+                                            cells.add(cellRenderData);
+                                        } else {
+                                            //鍏朵綑鍒�
+                                            if ((i - (mm == 0 ? (hh == 0 ? (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg) : hh) : mm)) % (angles + 1) == 1) {
+                                                //绔彛
+                                                try {
+                                                    textRenderData.setText(result2s.get(0).getPort().split(",")[(j - 5) + ((i - (mm == 0 ? (hh == 0 ? (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg) : hh) : mm)) / (angles + 2)) * Math.min(length, 8)]);
+                                                } catch (Exception e) {
+                                                    textRenderData.setText("");
+                                                }
+                                            } else {
+                                                //鏈�宸��
+                                                String[] value = result2s.get(0).getValue().split("\\],\\[");
+                                                String[] split = value[(i + (angles - 1)) % (angles + 1)].replaceAll("[\\[\\]\"]", "").split(",");
+                                                try {
+                                                    textRenderData.setText(split[(j - 5) + ((i - (mm == 0 ? (hh == 0 ? (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg) : hh) : mm)) / (angles + 2)) * Math.min(length, 8)]);
+                                                } catch (Exception e) {
+                                                    textRenderData.setText("");
+                                                }
+                                            }
+                                            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> table2 = new HashMap<>();
+                table2.put("table2", tableRenderData);
+                table2.put("title", title);
+                tables2.add(table2);
+                lable.getAndIncrement();
+            });
+        });
+    }
 }
diff --git a/inspect-server/src/main/resources/mapper/InsOrderMapper.xml b/inspect-server/src/main/resources/mapper/InsOrderMapper.xml
index 006d20c..7decfe3 100644
--- a/inspect-server/src/main/resources/mapper/InsOrderMapper.xml
+++ b/inspect-server/src/main/resources/mapper/InsOrderMapper.xml
@@ -157,39 +157,48 @@
         A.inspection_item,
         A.company,
         A.`name`,
-        COUNT(1) num,
-        SUM(A.price) price,
-        SUM(A.cost) cost
-        FROM
-        (SELECT
-        i.id,
+        COUNT(1)     num,
+        SUM(A.price) price
+        FROM (SELECT i.id,
         i.entrust_code,
         i.create_time,
         isa.sample,
-        isa.sample_code,
         isa.model,
-        c.price,
-        c.cost,
-        c.inspection_item,
+        ins_sample_id,
+        sum(c.price * times)                                   price,
+        GROUP_CONCAT(distinct c.inspection_item SEPARATOR ',') inspection_item,
         i.company,
-        u.`name`,
-        i.create_user,
-        c.ins_sample_id
-        FROM
-        ins_order i
+        u.`name`
+        FROM ins_order i
         LEFT JOIN ins_sample isa ON isa.ins_order_id = i.id
         LEFT JOIN `user` u ON u.id = i.user_id
         left join custom cus on cus.id = u.company
-        LEFT JOIN (select SUM(b.price) price, sum(b.man_hour) cost,b.ins_sample_id,
-        GROUP_CONCAT(b.inspection_item2
-        SEPARATOR ',')
-        inspection_item from (select * ,
-        GROUP_CONCAT(CONCAT(inspection_item,'@',inspection_item_subclass) SEPARATOR ',')inspection_item2 from
-        ins_product where state = 1 and ins_result is not null and ins_result!=2 and template_id IS NOT NULL GROUP BY ins_sample_id,man_hour_group) b GROUP
-        BY b.ins_sample_id) c ON c.ins_sample_id = isa.id
-        where (<!--i.state = 1 or i.state = 3 or -->i.state = 4) and c.ins_sample_id IS not NULL)A
-        GROUP BY
-        A.id,
+        LEFT JOIN (select ip.ins_sample_id,
+        ip.inspection_item,
+        ip.inspection_item_subclass,
+        ip.price,
+        sum(aowh.output_work_time) times
+        from ins_product ip
+        left join auxiliary_output_working_hours aowh on ip.id = aowh.ins_product_id
+        where state = 1
+        and ins_result is not null
+        and ins_result != 2
+        and template_id IS NOT NULL
+        group by ip.ins_sample_id,
+        ip.inspection_item,
+        ip.inspection_item_subclass,
+        ip.price) c ON c.ins_sample_id = isa.id
+        where (i.state = 4)
+        and c.ins_sample_id IS not NULL
+        group by i.id,
+        i.entrust_code,
+        i.create_time,
+        isa.sample,
+        isa.model,
+        i.company,
+        ins_sample_id,
+        u.`name`) A
+        GROUP BY A.id,
         A.entrust_code,
         A.create_time,
         A.sample,
diff --git a/inspect-server/src/main/resources/static/report-template.docx b/inspect-server/src/main/resources/static/report-template.docx
index 8052ed3..34fb86d 100644
--- a/inspect-server/src/main/resources/static/report-template.docx
+++ b/inspect-server/src/main/resources/static/report-template.docx
Binary files differ
diff --git a/performance-server/src/main/java/com/yuanchu/mom/service/impl/AuxiliaryOutputWorkingHoursServiceImpl.java b/performance-server/src/main/java/com/yuanchu/mom/service/impl/AuxiliaryOutputWorkingHoursServiceImpl.java
index 8ddd353..0b89ae0 100644
--- a/performance-server/src/main/java/com/yuanchu/mom/service/impl/AuxiliaryOutputWorkingHoursServiceImpl.java
+++ b/performance-server/src/main/java/com/yuanchu/mom/service/impl/AuxiliaryOutputWorkingHoursServiceImpl.java
@@ -248,7 +248,9 @@
                 ids = users.stream().map(User::getId).distinct().collect(Collectors.toList());
             }
         }
-
+        if (ids.size()==0){
+            ids=null;
+        }
         //鏌ヨ杈呭姪宸ユ椂
         auxiliaryWorkingHoursDayDtos = auxiliaryWorkingHoursDayMapper.selectDataByUser(ids);
         //鏌ヨ缁熻宸ユ椂
diff --git a/performance-server/src/main/resources/mapper/AuxiliaryCorrectionHoursMapper.xml b/performance-server/src/main/resources/mapper/AuxiliaryCorrectionHoursMapper.xml
index 6626e9f..7e0c05c 100644
--- a/performance-server/src/main/resources/mapper/AuxiliaryCorrectionHoursMapper.xml
+++ b/performance-server/src/main/resources/mapper/AuxiliaryCorrectionHoursMapper.xml
@@ -62,6 +62,7 @@
                 #{val}
             </foreach>
         </if>
+        group by name_user, type
         ) A
         <if test="ew.customSqlSegment != null and ew.customSqlSegment != ''">
             ${ew.customSqlSegment}

--
Gitblit v1.9.3