From b40024b18ace16f5dd5897d074181dcdb0d588bc Mon Sep 17 00:00:00 2001
From: zss <zss@example.com>
Date: 星期六, 10 八月 2024 15:54:17 +0800
Subject: [PATCH] 电力的热循环+温升试验报告生成

---
 inspect-server/src/main/java/com/yuanchu/mom/service/impl/InsOrderPlanServiceImpl.java |  894 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 889 insertions(+), 5 deletions(-)

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 6102381..1ddb860 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
@@ -36,6 +36,7 @@
 import com.yuanchu.mom.utils.RedisUtil;
 import com.yuanchu.mom.vo.*;
 import org.apache.commons.io.IOUtils;
+import org.apache.commons.lang3.StringUtils;
 import org.apache.poi.xwpf.usermodel.*;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Service;
@@ -45,6 +46,7 @@
 import javax.annotation.Resource;
 import javax.servlet.http.HttpServletRequest;
 import java.io.*;
+import java.math.BigDecimal;
 import java.nio.file.Files;
 import java.nio.file.Paths;
 import java.text.SimpleDateFormat;
@@ -251,7 +253,7 @@
         }
 
         //濡傛灉鏄ぇ鏍峰搧涓嬬殑椤圭洰涓虹┖,閭d箞鏌ヨ绗竴涓厜绾ょ殑椤圭洰
-        if (ObjectUtils.isEmpty(insProducts) && type==0){
+        if (ObjectUtils.isEmpty(insProducts) && type == 0) {
             //鏌ヨ绗竴涓厜绾ょ殑id
             List<InsFiber> insFibers = insFiberMapper.selectList(Wrappers.<InsFiber>lambdaQuery().eq(InsFiber::getInsBushingId, insBushingMapper.selectList(Wrappers.<InsBushing>lambdaQuery().eq(InsBushing::getInsSampleId, id)).get(0).getId()));
             insProducts = insSampleMapper.getInsProduct3(insFibers.get(0).getId());
@@ -771,7 +773,7 @@
                                 if (CollectionUtils.isEmpty(insProductResultss) && !result.getInsValue().equals("[]") || (CollectionUtils.isNotEmpty(insProductResultss) && !insProductResultss.get(0).getInsValue().equals(result.getInsValue()) && !insProductResultss.get(0).getInsValue().equals("[]"))) {
                                     auxiliaryOutputWorkingHoursMapper.insert(auxiliaryOutputWorkingHours);
                                 }
-                            }catch (Exception e){
+                            } catch (Exception e) {
                                 System.out.println("宸ユ椂鏂板涓嶆垚鍔�!!!");
                             }
                         }
@@ -890,7 +892,7 @@
             insUnPassService.saveBatch(insUnPasses);
             InsOrder insOrder = insOrderMapper.selectById(orderId);
             Map<String, String> user = insProductMapper.selectUserById(insOrder.getUserId());
-            //samples鏄笉鍖呮嫭甯︽湁"/"鐨勬牱鍝�
+            //samples鏄繃婊ゆ帀娌℃湁妫�楠岄」鐩殑鏍峰搧
             List<SampleProductDto> samples = insSampleMapper.selectSampleProductListByOrderId(orderId);
             InsReport insReport = new InsReport();
             insReport.setCode(insOrder.getEntrustCode());
@@ -2187,8 +2189,9 @@
             List<InsProduct> insProducts3 = insProductMapper.selectList(Wrappers.<InsProduct>lambdaQuery()
                     .eq(InsProduct::getState, 1)
                     .in(InsProduct::getInsSampleId, insSamples.stream().map(InsSample::getId).distinct().collect(Collectors.toList()))
+                    .isNull(InsProduct::getTemplateId)  //鍖哄垎甯歌椤圭洰
                     .isNotNull(InsProduct::getInspectionItemClass)//鐢ㄦ楠屽垎椤瑰瓧娈靛尯鍒厜绾ら厤缃笌娓╁害寰幆
-                    .isNotNull(InsProduct::getInsFiberId));
+                    .isNotNull(InsProduct::getInsFiberId)); //鐢ㄥ厜绾ゅ尯鍒儹寰幆鍜屾俯搴﹀惊鐜�
             List<Map<String, Object>> tables3 = new ArrayList<>();
             if (insProducts3.size() > 0) {
                 samples.forEach(sample -> {
@@ -3455,10 +3458,891 @@
                     }
                 });
             }
+            /*娓╁崌璇曢獙鐨勬楠屾姤鍛�*/
+            List<InsProduct> insProducts1 = insProductMapper.selectList(Wrappers.<InsProduct>lambdaQuery()
+                    .eq(InsProduct::getState, 1)
+                    .in(InsProduct::getInsSampleId, insSamples.stream().map(InsSample::getId).distinct().collect(Collectors.toList()))
+                    .isNull(InsProduct::getTemplateId)  //鍖哄垎甯歌椤圭洰
+                    .isNull(InsProduct::getInspectionItemClass)//鐢ㄦ楠屽垎椤瑰瓧娈靛尯鍒俯鍗囪瘯楠屼笌鐑惊鐜�
+                    .isNull(InsProduct::getInsFiberId) //鐢ㄥ厜绾ゅ尯鍒俯鍗囪瘯楠屽拰娓╁害寰幆
+                    .eq(InsProduct::getInspectionItem, "1")); //娓╁崌璇曢獙鐨勫惊鐜彧鏈�1娆�
+            if (insProducts1.size() > 0) {
+                samples.forEach(sample -> {
+                    //鏌ヨ娓╁崌璇曢獙涓嬬殑妫�楠岄」鐩�
+                    List<InsProduct> insPros = insProductMapper.selectList(Wrappers.<InsProduct>lambdaQuery()
+                            .eq(InsProduct::getState, 1)
+                            .eq(InsProduct::getInsSampleId, sample.getId())
+                            .isNull(InsProduct::getTemplateId)  //鍖哄垎甯歌椤圭洰
+                            .isNull(InsProduct::getInspectionItemClass)//鐢ㄦ楠屽垎椤瑰瓧娈靛尯鍒俯鍗囪瘯楠屼笌鐑惊鐜�
+                            .isNull(InsProduct::getInsFiberId) //鐢ㄥ厜绾ゅ尯鍒俯鍗囪瘯楠屽拰娓╁害寰幆
+                            .eq(InsProduct::getInspectionItem, "1")); //娓╁崌璇曢獙鐨勫惊鐜彧鏈�1娆�
+                    //鏌ヨ濉啓鐨勬楠屽�兼湁澶氬皯绉�
+                    InsProductResult insProductResult = insProductResultMapper.selectList(Wrappers.<InsProductResult>lambdaQuery().eq(InsProductResult::getInsProductId, insPros.get(0).getId())).get(0);
+                    int vCount = StringUtils.countMatches(insProductResult.getInsValue(), "\"v\":\"");
+                    long index3 = 1;
+                    for (int c = 0; c < vCount; c++) {
+                        if (c % 16 == 0) {
+                            List<RowRenderData> rows = new ArrayList<>();
+                            //琛ㄦ牸鐨勮鏁�
+                            for (int i = 0; i < 3 + vCount; i++) {
+                                RowRenderData rowRenderData = new RowRenderData();
+                                RowStyle rowStyle = new RowStyle();
+                                rowStyle.setHeight(40);
+                                rowRenderData.setRowStyle(rowStyle);
+                                List<CellRenderData> cells = new ArrayList<>();
+                                String a = null;//瀵肩嚎娓╁害
+                                String b = null;//鑰愬紶娓╁害
+                                String d = null;//鎺ョ画娓╁害
+                                //鍒楁暟
+                                for (int j = 0; j < 6; j++) {
+                                    CellRenderData cellRenderData = new CellRenderData();
+                                    CellStyle cellStyle = new CellStyle();
+                                    cellStyle.setVertAlign(XWPFTableCell.XWPFVertAlign.CENTER);
+                                    cellRenderData.setCellStyle(cellStyle);
+                                    List<ParagraphRenderData> paragraphRenderDataList = new ArrayList<>();
+                                    ParagraphRenderData paragraphRenderData = new ParagraphRenderData();
+                                    ParagraphStyle paragraphStyle = new ParagraphStyle();
+                                    paragraphStyle.setAlign(ParagraphAlignment.CENTER);
+                                    paragraphRenderData.setParagraphStyle(paragraphStyle);
+                                    List<RenderData> renderData = new ArrayList<>();
+                                    TextRenderData textRenderData = new TextRenderData();
+                                    Style style = new Style();
+                                    style.setFontFamily("瀹嬩綋");
+                                    style.setColor("000000");
+                                    textRenderData.setStyle(style);
+                                    if (i == 0) {
+                                        //绗竴琛�
+                                        if (j == 0) {
+                                            //绗竴鍒�
+                                            textRenderData.setText("鏍峰搧缂栧彿@Sample number");
+                                            renderData.add(textRenderData);
+                                            paragraphRenderData.setContents(renderData);
+                                            paragraphRenderDataList.add(paragraphRenderData);
+                                            cellRenderData.setParagraphs(paragraphRenderDataList);
+                                            cells.add(cellRenderData);
+                                        } else if (j == 1) {
+                                            //绗簩鍒�
+                                            textRenderData.setText(sample.getSampleCode());
+                                            renderData.add(textRenderData);
+                                            paragraphRenderData.setContents(renderData);
+                                            paragraphRenderDataList.add(paragraphRenderData);
+                                            cellRenderData.setParagraphs(paragraphRenderDataList);
+                                            cells.add(cellRenderData);
+                                        } else if (j == 2) {
+                                            //绗笁鍒�
+                                            textRenderData.setText("瑙勬牸鍨嬪彿@Type and size");
+                                            renderData.add(textRenderData);
+                                            paragraphRenderData.setContents(renderData);
+                                            paragraphRenderDataList.add(paragraphRenderData);
+                                            cellRenderData.setParagraphs(paragraphRenderDataList);
+                                            cells.add(cellRenderData);
+                                        } else if (j == 3) {
+                                            //绗洓鍒�
+                                            textRenderData.setText(sample.getModel());
+                                            renderData.add(textRenderData);
+                                            paragraphRenderData.setContents(renderData);
+                                            paragraphRenderDataList.add(paragraphRenderData);
+                                            cellRenderData.setParagraphs(paragraphRenderDataList);
+                                            cells.add(cellRenderData);
+                                        } else if (j == 4) {
+                                            //绗簲鍒�
+                                            textRenderData.setText("妫�娴嬮」@Testing items");
+                                            renderData.add(textRenderData);
+                                            paragraphRenderData.setContents(renderData);
+                                            paragraphRenderDataList.add(paragraphRenderData);
+                                            cellRenderData.setParagraphs(paragraphRenderDataList);
+                                            cells.add(cellRenderData);
+                                        } else {
+                                            //绗叚鍒�
+                                            textRenderData.setText("娓╁崌璇曢獙@Temperature rise test");
+                                            renderData.add(textRenderData);
+                                            paragraphRenderData.setContents(renderData);
+                                            paragraphRenderDataList.add(paragraphRenderData);
+                                            cellRenderData.setParagraphs(paragraphRenderDataList);
+                                            cells.add(cellRenderData);
+                                        }
+                                    } else if (i == 1) {
+                                        //绗簩琛�
+                                        if (j == 0) {
+                                            //绗竴鍒�
+                                            textRenderData.setText("鐜娓╁害@Ambient temperature@锛堚剝锛�");
+                                            renderData.add(textRenderData);
+                                            paragraphRenderData.setContents(renderData);
+                                            paragraphRenderDataList.add(paragraphRenderData);
+                                            cellRenderData.setParagraphs(paragraphRenderDataList);
+                                            cells.add(cellRenderData);
+                                        } else if (j == 1) {
+                                            //绗簩鍒�
+                                            textRenderData.setText("瀵肩嚎娓╁害@Wire temperature@锛堚剝锛�");
+                                            renderData.add(textRenderData);
+                                            paragraphRenderData.setContents(renderData);
+                                            paragraphRenderDataList.add(paragraphRenderData);
+                                            cellRenderData.setParagraphs(paragraphRenderDataList);
+                                            cells.add(cellRenderData);
+                                        } else if (j == 2) {
+                                            //绗笁鍒�
+                                            textRenderData.setText("鑰愬紶娓╁害@Tensile temperature@锛堚剝锛�");
+                                            renderData.add(textRenderData);
+                                            paragraphRenderData.setContents(renderData);
+                                            paragraphRenderDataList.add(paragraphRenderData);
+                                            cellRenderData.setParagraphs(paragraphRenderDataList);
+                                            cells.add(cellRenderData);
+                                        } else if (j == 3) {
+                                            //绗洓鍒�
+                                            textRenderData.setText("鎺ョ画娓╁害@Connection temperature@锛堚剝锛�");
+                                            renderData.add(textRenderData);
+                                            paragraphRenderData.setContents(renderData);
+                                            paragraphRenderDataList.add(paragraphRenderData);
+                                            cellRenderData.setParagraphs(paragraphRenderDataList);
+                                            cells.add(cellRenderData);
+                                        } else {
+                                            //绗簲鍒楃鍏垪
+                                            textRenderData.setText("缁撴灉鍒ゅ畾@Result judgment鈭�100");
+                                            renderData.add(textRenderData);
+                                            paragraphRenderData.setContents(renderData);
+                                            paragraphRenderDataList.add(paragraphRenderData);
+                                            cellRenderData.setParagraphs(paragraphRenderDataList);
+                                            cells.add(cellRenderData);
+                                        }
+                                    }
+                                    else if (i == 2 + vCount) {
+                                        //鏈�鍚庝竴琛�
+                                        if (j == 0 || j == 1) {
+                                            //绗竴鍒楀拰绗簩鍒�
+                                            textRenderData.setText("澶囨敞鈭�101");
+                                            renderData.add(textRenderData);
+                                            paragraphRenderData.setContents(renderData);
+                                            paragraphRenderDataList.add(paragraphRenderData);
+                                            cellRenderData.setParagraphs(paragraphRenderDataList);
+                                            cells.add(cellRenderData);
+                                        } else {
+                                            //鍏朵綑鍒�
+                                            textRenderData.setText("鈥溾垰鈥濊〃绀洪」鐩悎鏍硷紝鈥溍椻�濊〃绀洪」鐩笉鍚堟牸銆傗垜102");
+                                            renderData.add(textRenderData);
+                                            paragraphRenderData.setContents(renderData);
+                                            paragraphRenderDataList.add(paragraphRenderData);
+                                            cellRenderData.setParagraphs(paragraphRenderDataList);
+                                            cells.add(cellRenderData);
+                                        }
+                                    }
+                                    else {
+                                        //鍏朵綑琛�
+                                        if (j == 0) {
+                                            //绗竴鍒�(鐜娓╁害)
+                                            InsProduct insPro = insProductMapper.selectOne(Wrappers.<InsProduct>lambdaQuery()
+                                                    .eq(InsProduct::getState, 1)
+                                                    .eq(InsProduct::getInsSampleId, sample.getId())
+                                                    .eq(InsProduct::getInspectionItemSubclass, "鐜娓╁害")
+                                                    .isNull(InsProduct::getTemplateId)  //鍖哄垎甯歌椤圭洰
+                                                    .isNull(InsProduct::getInspectionItemClass)//鐢ㄦ楠屽垎椤瑰瓧娈靛尯鍒俯鍗囪瘯楠屼笌鐑惊鐜�
+                                                    .isNull(InsProduct::getInsFiberId) //鐢ㄥ厜绾ゅ尯鍒俯鍗囪瘯楠屽拰娓╁害寰幆
+                                                    .eq(InsProduct::getInspectionItem, "1")); //娓╁崌璇曢獙鐨勫惊鐜彧鏈�1娆�
+                                            String insValue = insProductResultMapper.selectList(Wrappers.<InsProductResult>lambdaQuery().eq(InsProductResult::getInsProductId, insPro.getId())).get(0).getInsValue();
+                                            JSONArray jsonArray = JSONArray.parseArray(insValue);
+                                            JSONObject jsonObject = jsonArray.getJSONObject(i - 2);
+                                            String vValue = jsonObject.getString("v");
+                                            System.out.println("鐜娓╁害绗� " + (i - 1) + " 涓� 'v' 瀛楁鐨勫�兼槸: " + vValue);
+                                            textRenderData.setText(vValue);
+                                            renderData.add(textRenderData);
+                                            paragraphRenderData.setContents(renderData);
+                                            paragraphRenderDataList.add(paragraphRenderData);
+                                            cellRenderData.setParagraphs(paragraphRenderDataList);
+                                            cells.add(cellRenderData);
+                                        }
+                                        else if (j == 1) {
+                                            //绗簩鍒�(瀵肩嚎娓╁害)
+                                            InsProduct insPro = insProductMapper.selectOne(Wrappers.<InsProduct>lambdaQuery()
+                                                    .eq(InsProduct::getState, 1)
+                                                    .eq(InsProduct::getInsSampleId, sample.getId())
+                                                    .eq(InsProduct::getInspectionItemSubclass, "瀵肩嚎娓╁害")
+                                                    .isNull(InsProduct::getTemplateId)  //鍖哄垎甯歌椤圭洰
+                                                    .isNull(InsProduct::getInspectionItemClass)//鐢ㄦ楠屽垎椤瑰瓧娈靛尯鍒俯鍗囪瘯楠屼笌鐑惊鐜�
+                                                    .isNull(InsProduct::getInsFiberId) //鐢ㄥ厜绾ゅ尯鍒俯鍗囪瘯楠屽拰娓╁害寰幆
+                                                    .eq(InsProduct::getInspectionItem, "1")); //娓╁崌璇曢獙鐨勫惊鐜彧鏈�1娆�
+                                            String insValue = insProductResultMapper.selectList(Wrappers.<InsProductResult>lambdaQuery().eq(InsProductResult::getInsProductId, insPro.getId())).get(0).getInsValue();
+                                            JSONArray jsonArray = JSONArray.parseArray(insValue);
+                                            JSONObject jsonObject = jsonArray.getJSONObject(i - 2);
+                                            String vValue = jsonObject.getString("v");
+                                            a = vValue;
+                                            System.out.println("瀵肩嚎娓╁害绗� " + (i - 1) + " 涓� 'v' 瀛楁鐨勫�兼槸: " + vValue);
+                                            textRenderData.setText(vValue);
+                                            renderData.add(textRenderData);
+                                            paragraphRenderData.setContents(renderData);
+                                            paragraphRenderDataList.add(paragraphRenderData);
+                                            cellRenderData.setParagraphs(paragraphRenderDataList);
+                                            cells.add(cellRenderData);
+                                        }
+                                        else if (j == 2) {
+                                            //绗笁鍒�(鑰愬紶娓╁害)
+                                            InsProduct insPro = insProductMapper.selectOne(Wrappers.<InsProduct>lambdaQuery()
+                                                    .eq(InsProduct::getState, 1)
+                                                    .eq(InsProduct::getInsSampleId, sample.getId())
+                                                    .eq(InsProduct::getInspectionItemSubclass, "鑰愬紶娓╁害")
+                                                    .isNull(InsProduct::getTemplateId)  //鍖哄垎甯歌椤圭洰
+                                                    .isNull(InsProduct::getInspectionItemClass)//鐢ㄦ楠屽垎椤瑰瓧娈靛尯鍒俯鍗囪瘯楠屼笌鐑惊鐜�
+                                                    .isNull(InsProduct::getInsFiberId) //鐢ㄥ厜绾ゅ尯鍒俯鍗囪瘯楠屽拰娓╁害寰幆
+                                                    .eq(InsProduct::getInspectionItem, "1")); //娓╁崌璇曢獙鐨勫惊鐜彧鏈�1娆�
+                                            if (ObjectUtils.isNotEmpty(insPro)) {
+                                                String insValue = insProductResultMapper.selectList(Wrappers.<InsProductResult>lambdaQuery().eq(InsProductResult::getInsProductId, insPro.getId())).get(0).getInsValue();
+                                                JSONArray jsonArray = JSONArray.parseArray(insValue);
+                                                JSONObject jsonObject = jsonArray.getJSONObject(i - 2);
+                                                String vValue = jsonObject.getString("v");
+                                                b = vValue;
+                                                System.out.println("鑰愬紶娓╁害绗� " + (i - 1) + " 涓� 'v' 瀛楁鐨勫�兼槸: " + vValue);
+                                                textRenderData.setText(vValue);
+                                            } else {
+                                                textRenderData.setText("");
+                                            }
+                                            renderData.add(textRenderData);
+                                            paragraphRenderData.setContents(renderData);
+                                            paragraphRenderDataList.add(paragraphRenderData);
+                                            cellRenderData.setParagraphs(paragraphRenderDataList);
+                                            cells.add(cellRenderData);
+                                        }
+                                        else if (j == 3) {
+                                            //绗洓鍒�(鎺ョ画娓╁害)
+                                            InsProduct insPro = insProductMapper.selectOne(Wrappers.<InsProduct>lambdaQuery()
+                                                    .eq(InsProduct::getState, 1)
+                                                    .eq(InsProduct::getInsSampleId, sample.getId())
+                                                    .eq(InsProduct::getInspectionItemSubclass, "鎺ョ画娓╁害")
+                                                    .isNull(InsProduct::getTemplateId)  //鍖哄垎甯歌椤圭洰
+                                                    .isNull(InsProduct::getInspectionItemClass)//鐢ㄦ楠屽垎椤瑰瓧娈靛尯鍒俯鍗囪瘯楠屼笌鐑惊鐜�
+                                                    .isNull(InsProduct::getInsFiberId) //鐢ㄥ厜绾ゅ尯鍒俯鍗囪瘯楠屽拰娓╁害寰幆
+                                                    .eq(InsProduct::getInspectionItem, "1")); //娓╁崌璇曢獙鐨勫惊鐜彧鏈�1娆�
+                                            if (ObjectUtils.isNotEmpty(insPro)) {
+                                                String insValue = insProductResultMapper.selectList(Wrappers.<InsProductResult>lambdaQuery().eq(InsProductResult::getInsProductId, insPro.getId())).get(0).getInsValue();
+                                                JSONArray jsonArray = JSONArray.parseArray(insValue);
+                                                JSONObject jsonObject = jsonArray.getJSONObject(i - 2);
+                                                String vValue = jsonObject.getString("v");
+                                                d = vValue;
+                                                System.out.println("鎺ョ画娓╁害绗� " + (i - 1) + " 涓� 'v' 瀛楁鐨勫�兼槸: " + vValue);
+                                                textRenderData.setText(vValue);
+                                            } else {
+                                                textRenderData.setText("");
+                                            }
+                                            renderData.add(textRenderData);
+                                            paragraphRenderData.setContents(renderData);
+                                            paragraphRenderDataList.add(paragraphRenderData);
+                                            cellRenderData.setParagraphs(paragraphRenderDataList);
+                                            cells.add(cellRenderData);
+                                        }
+                                        else {
+                                            //绗簲鍒� 绗叚鍒�(缁撹)
+                                            //鍒ゆ柇鍚堟牸涓庝笉鍚堟牸
+                                            BigDecimal decimal1 = new BigDecimal(a);
+                                            BigDecimal decimal2 = new BigDecimal(b == null ? "0" : b);
+                                            BigDecimal decimal3 = new BigDecimal(d == null ? "0" : d);
+                                            if (decimal1.compareTo(decimal2) > 0 && decimal1.compareTo(decimal3) > 0) {
+                                                textRenderData.setText("鈭氣垜20"+i);
+                                            } else {
+                                                textRenderData.setText("脳鈭�20"+i);
+                                            }
+                                            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()) {
+                            /*for (CellRenderData cell : row.getCells()) {
+                                System.out.print(cell.getParagraphs().get(0).getContents());
+                            }
+                            System.out.println("");*/
+                                if (row.getCells().size() != countSize) {
+                                    throw new ErrorException("姣忚鍗曞厓鏍间笉鐩哥瓑5");
+                                }
+                            }
+                            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(14);
+                            tableStyle.setLeftBorder(borderStyle);
+                            tableStyle.setTopBorder(borderStyle);
+                            tableStyle.setRightBorder(borderStyle);
+                            tableStyle.setBottomBorder(borderStyle);
+                            tableRenderData.setTableStyle(tableStyle);
+                            Map<String, Object> table = new HashMap<>();
+                            table.put("table3", tableRenderData);
+                            table.put("report", insReport);
+                            table.put("index3", index3);
+                            tables3.add(table);
+                            index3++;
+                        }
+                    }
+                });
+            }
+            /*鐑惊鐜殑妫�楠屾姤鍛�*/
+            List<InsProduct> insProducts2 = insProductMapper.selectList(Wrappers.<InsProduct>lambdaQuery()
+                    .eq(InsProduct::getState, 1)
+                    .in(InsProduct::getInsSampleId, insSamples.stream().map(InsSample::getId).distinct().collect(Collectors.toList()))
+                    .isNull(InsProduct::getTemplateId)  //鍖哄垎甯歌椤圭洰
+                    .isNotNull(InsProduct::getInspectionItemClass)//鐢ㄦ楠屽垎椤瑰瓧娈靛尯鍒俯鍗囪瘯楠屼笌鐑惊鐜�
+                    .isNull(InsProduct::getInsFiberId)); //鐢ㄥ厜绾ゅ尯鍒儹寰幆鍜屾俯搴﹀惊鐜�
+            if (insProducts2.size() > 0) {
+                samples.forEach(sample -> {
+                    //璁$畻鏁版嵁鐨勮鏁�,鍏堟煡鍑烘湁澶氬皯娆″惊鐜�,鍐嶆煡姣忎釜寰幆鐨勫~鍐欐暟閲�
+                    InsProduct insProduct = insProductMapper.selectOne(Wrappers.<InsProduct>lambdaQuery()
+                            .eq(InsProduct::getState, 1)
+                            .eq(InsProduct::getInsSampleId, sample.getId())
+                            .eq(InsProduct::getInspectionItem, "鐑惊鐜�"));
+                    String[] split = insProduct.getAsk().split(";");
+                    Integer cycle = Integer.parseInt(split[split.length - 1]);//寰幆娆℃暟
+                    int vCount = 0;
+                    List<Integer> list = new ArrayList<>();
+                    for (Integer i = 1; i <= cycle; i++) {
+                        //鏌ユ瘡涓惊鐜噷闈㈢殑濉啓鏁伴噺
+                        List<InsProduct> insPros = insProductMapper.selectList(Wrappers.<InsProduct>lambdaQuery()
+                                .eq(InsProduct::getState, 1)
+                                .eq(InsProduct::getInsSampleId, sample.getId())
+                                .isNull(InsProduct::getTemplateId)  //鍖哄垎甯歌椤圭洰
+                                .eq(InsProduct::getInspectionItemClass, "鐩存祦鐢甸樆")
+                                .isNull(InsProduct::getInsFiberId) //鐢ㄥ厜绾ゅ尯鍒俯鍗囪瘯楠屽拰娓╁害寰幆
+                                .eq(InsProduct::getInspectionItem, i + ""));
+                        InsProductResult insProductResult = insProductResultMapper.selectList(Wrappers.<InsProductResult>lambdaQuery().eq(InsProductResult::getInsProductId, insPros.get(0).getId())).get(0);
+                        vCount += StringUtils.countMatches(insProductResult.getInsValue(), "\"v\":\"");
+                        list.add(StringUtils.countMatches(insProductResult.getInsValue(), "\"v\":\""));
+                    }
+                    long index3 = 1;
+                    for (int c = 0; c < vCount; c++) {
+                        if (c % 18 == 0) {
+                            List<RowRenderData> rows = new ArrayList<>();
+                            //琛ㄦ牸鐨勮鏁�
+                            for (int i = 0; i < 4 + vCount; i++) {
+                                RowRenderData rowRenderData = new RowRenderData();
+                                RowStyle rowStyle = new RowStyle();
+                                rowStyle.setHeight(40);
+                                rowRenderData.setRowStyle(rowStyle);
+                                List<CellRenderData> cells = new ArrayList<>();
+                                String a = null;//瀵肩嚎娓╁害
+                                String b = null;//鑰愬紶娓╁害
+                                String d = null;//鎺ョ画娓╁害
+                                //鍒楁暟
+                                for (int j = 0; j < 9; j++) {
+                                    CellRenderData cellRenderData = new CellRenderData();
+                                    CellStyle cellStyle = new CellStyle();
+                                    cellStyle.setVertAlign(XWPFTableCell.XWPFVertAlign.CENTER);
+                                    cellRenderData.setCellStyle(cellStyle);
+                                    List<ParagraphRenderData> paragraphRenderDataList = new ArrayList<>();
+                                    ParagraphRenderData paragraphRenderData = new ParagraphRenderData();
+                                    ParagraphStyle paragraphStyle = new ParagraphStyle();
+                                    paragraphStyle.setAlign(ParagraphAlignment.CENTER);
+                                    paragraphRenderData.setParagraphStyle(paragraphStyle);
+                                    List<RenderData> renderData = new ArrayList<>();
+                                    TextRenderData textRenderData = new TextRenderData();
+                                    Style style = new Style();
+                                    style.setFontFamily("瀹嬩綋");
+                                    style.setColor("000000");
+                                    textRenderData.setStyle(style);
+                                    if (i == 0) {
+                                        //绗竴琛�
+                                        if (j == 0) {
+                                            //绗竴鍒�
+                                            textRenderData.setText("鏍峰搧缂栧彿@Sample number");
+                                            renderData.add(textRenderData);
+                                            paragraphRenderData.setContents(renderData);
+                                            paragraphRenderDataList.add(paragraphRenderData);
+                                            cellRenderData.setParagraphs(paragraphRenderDataList);
+                                            cells.add(cellRenderData);
+                                        } else if (j == 1) {
+                                            //绗簩鍒�
+                                            textRenderData.setText(sample.getSampleCode());
+                                            renderData.add(textRenderData);
+                                            paragraphRenderData.setContents(renderData);
+                                            paragraphRenderDataList.add(paragraphRenderData);
+                                            cellRenderData.setParagraphs(paragraphRenderDataList);
+                                            cells.add(cellRenderData);
+                                        } else if (j == 2 || j == 3) {
+                                            //绗笁鍒楀拰绗洓鍒�
+                                            textRenderData.setText("瑙勬牸鍨嬪彿@Type and size鈭�301");
+                                            renderData.add(textRenderData);
+                                            paragraphRenderData.setContents(renderData);
+                                            paragraphRenderDataList.add(paragraphRenderData);
+                                            cellRenderData.setParagraphs(paragraphRenderDataList);
+                                            cells.add(cellRenderData);
+                                        } else if (j == 4 || j == 5) {
+                                            //绗簲鍒楀拰绗叚鍒�
+                                            textRenderData.setText(sample.getModel()+"鈭�302");
+                                            renderData.add(textRenderData);
+                                            paragraphRenderData.setContents(renderData);
+                                            paragraphRenderDataList.add(paragraphRenderData);
+                                            cellRenderData.setParagraphs(paragraphRenderDataList);
+                                            cells.add(cellRenderData);
+                                        } else if (j == 6) {
+                                            //绗竷鍒�
+                                            textRenderData.setText("妫�娴嬮」@Testing items");
+                                            renderData.add(textRenderData);
+                                            paragraphRenderData.setContents(renderData);
+                                            paragraphRenderDataList.add(paragraphRenderData);
+                                            cellRenderData.setParagraphs(paragraphRenderDataList);
+                                            cells.add(cellRenderData);
+                                        } else {
+                                            //绗叓鍒楀拰绗節鍒�
+                                            textRenderData.setText("鐑惊鐜疈Thermal cycle鈭�303");
+                                            renderData.add(textRenderData);
+                                            paragraphRenderData.setContents(renderData);
+                                            paragraphRenderDataList.add(paragraphRenderData);
+                                            cellRenderData.setParagraphs(paragraphRenderDataList);
+                                            cells.add(cellRenderData);
+                                        }
+                                    }
+                                    else if (i == 1) {
+                                        //绗簩琛�
+                                        if (j == 0) {
+                                            //绗竴鍒�
+                                            textRenderData.setText("寰幆娆℃暟@Number of cycles@(times)鈭�100");
+                                            renderData.add(textRenderData);
+                                            paragraphRenderData.setContents(renderData);
+                                            paragraphRenderDataList.add(paragraphRenderData);
+                                            cellRenderData.setParagraphs(paragraphRenderDataList);
+                                            cells.add(cellRenderData);
+                                        } else if (j == 1) {
+                                            //绗簩鍒�
+                                            textRenderData.setText("鐜娓╁害@Ambient temperature@锛堚剝锛夆垜101");
+                                            renderData.add(textRenderData);
+                                            paragraphRenderData.setContents(renderData);
+                                            paragraphRenderDataList.add(paragraphRenderData);
+                                            cellRenderData.setParagraphs(paragraphRenderDataList);
+                                            cells.add(cellRenderData);
+                                        } else if (j == 2 || j == 3) {
+                                            //绗笁鍒楀拰绗洓鍒�
+                                            textRenderData.setText("瀵肩嚎@Conductor鈭�102");
+                                            renderData.add(textRenderData);
+                                            paragraphRenderData.setContents(renderData);
+                                            paragraphRenderDataList.add(paragraphRenderData);
+                                            cellRenderData.setParagraphs(paragraphRenderDataList);
+                                            cells.add(cellRenderData);
+                                        } else if (j == 4 || j == 5) {
+                                            //绗簲鍒楀拰绗叚鍒�
+                                            textRenderData.setText("鑰愬紶绾垮す@Tension clamp鈭�103");
+                                            renderData.add(textRenderData);
+                                            paragraphRenderData.setContents(renderData);
+                                            paragraphRenderDataList.add(paragraphRenderData);
+                                            cellRenderData.setParagraphs(paragraphRenderDataList);
+                                            cells.add(cellRenderData);
+                                        } else if (j == 6 || j == 7) {
+                                            //绗竷鍒楃鍏垪
+                                            textRenderData.setText("鎺ョ画閲戝叿@Splicing fittings鈭�104");
+                                            renderData.add(textRenderData);
+                                            paragraphRenderData.setContents(renderData);
+                                            paragraphRenderDataList.add(paragraphRenderData);
+                                            cellRenderData.setParagraphs(paragraphRenderDataList);
+                                            cells.add(cellRenderData);
+                                        } else {
+                                            //绗節鍒�
+                                            textRenderData.setText("缁撴灉鍒ゅ畾@Result judgment鈭�105");
+                                            renderData.add(textRenderData);
+                                            paragraphRenderData.setContents(renderData);
+                                            paragraphRenderDataList.add(paragraphRenderData);
+                                            cellRenderData.setParagraphs(paragraphRenderDataList);
+                                            cells.add(cellRenderData);
+                                        }
+                                    }
+                                    else if (i == 2) {
+                                        //绗笁琛�
+                                        if (j == 0) {
+                                            //绗竴鍒�
+                                            textRenderData.setText("寰幆娆℃暟@Number of cycles@(times)鈭�100");
+                                            renderData.add(textRenderData);
+                                            paragraphRenderData.setContents(renderData);
+                                            paragraphRenderDataList.add(paragraphRenderData);
+                                            cellRenderData.setParagraphs(paragraphRenderDataList);
+                                            cells.add(cellRenderData);
+                                        } else if (j == 1) {
+                                            //绗簩鍒�
+                                            textRenderData.setText("鐜娓╁害@Ambient temperature@锛堚剝锛夆垜101");
+                                            renderData.add(textRenderData);
+                                            paragraphRenderData.setContents(renderData);
+                                            paragraphRenderDataList.add(paragraphRenderData);
+                                            cellRenderData.setParagraphs(paragraphRenderDataList);
+                                            cells.add(cellRenderData);
+                                        } else if (j == 2) {
+                                            //绗笁鍒�
+                                            textRenderData.setText("娓╁害@Temperature@锛堚剝锛�");
+                                            renderData.add(textRenderData);
+                                            paragraphRenderData.setContents(renderData);
+                                            paragraphRenderDataList.add(paragraphRenderData);
+                                            cellRenderData.setParagraphs(paragraphRenderDataList);
+                                            cells.add(cellRenderData);
+                                        } else if (j == 3) {
+                                            //绗洓鍒�
+                                            textRenderData.setText("鐩存祦鐢甸樆@DC resistance@锛埼�/km锛�");
+                                            renderData.add(textRenderData);
+                                            paragraphRenderData.setContents(renderData);
+                                            paragraphRenderDataList.add(paragraphRenderData);
+                                            cellRenderData.setParagraphs(paragraphRenderDataList);
+                                            cells.add(cellRenderData);
+                                        } else if (j == 4) {
+                                            //绗簲鍒�
+                                            textRenderData.setText("娓╁害@Temperature@锛堚剝锛�");
+                                            renderData.add(textRenderData);
+                                            paragraphRenderData.setContents(renderData);
+                                            paragraphRenderDataList.add(paragraphRenderData);
+                                            cellRenderData.setParagraphs(paragraphRenderDataList);
+                                            cells.add(cellRenderData);
+                                        } else if (j == 5) {
+                                            //绗叚鍒�
+                                            textRenderData.setText("鐩存祦鐢甸樆@DC resistance@锛埼�/km锛�");
+                                            renderData.add(textRenderData);
+                                            paragraphRenderData.setContents(renderData);
+                                            paragraphRenderDataList.add(paragraphRenderData);
+                                            cellRenderData.setParagraphs(paragraphRenderDataList);
+                                            cells.add(cellRenderData);
+                                        } else if (j == 6) {
+                                            //绗竷鍒�
+                                            textRenderData.setText("娓╁害@Temperature@锛堚剝锛�");
+                                            renderData.add(textRenderData);
+                                            paragraphRenderData.setContents(renderData);
+                                            paragraphRenderDataList.add(paragraphRenderData);
+                                            cellRenderData.setParagraphs(paragraphRenderDataList);
+                                            cells.add(cellRenderData);
+                                        } else if (j == 7) {
+                                            //绗叓鍒�
+                                            textRenderData.setText("鐩存祦鐢甸樆@DC resistance@锛埼�/km锛�");
+                                            renderData.add(textRenderData);
+                                            paragraphRenderData.setContents(renderData);
+                                            paragraphRenderDataList.add(paragraphRenderData);
+                                            cellRenderData.setParagraphs(paragraphRenderDataList);
+                                            cells.add(cellRenderData);
+                                        } else {
+                                            //绗節鍒�
+                                            textRenderData.setText("缁撴灉鍒ゅ畾@Result judgment鈭�105");
+                                            renderData.add(textRenderData);
+                                            paragraphRenderData.setContents(renderData);
+                                            paragraphRenderDataList.add(paragraphRenderData);
+                                            cellRenderData.setParagraphs(paragraphRenderDataList);
+                                            cells.add(cellRenderData);
+                                        }
+                                    }
+                                    else if (i == 3 + vCount) {
+                                        //鏈�鍚庝竴琛�
+                                        if (j == 0) {
+                                            //绗竴鍒�
+                                            textRenderData.setText("澶囨敞");
+                                            renderData.add(textRenderData);
+                                            paragraphRenderData.setContents(renderData);
+                                            paragraphRenderDataList.add(paragraphRenderData);
+                                            cellRenderData.setParagraphs(paragraphRenderDataList);
+                                            cells.add(cellRenderData);
+                                        } else {
+                                            //鍏朵綑鍒�
+                                            textRenderData.setText("鈥溾垰鈥濊〃绀洪」鐩悎鏍硷紝鈥溍椻�濊〃绀洪」鐩笉鍚堟牸銆傗垜108");
+                                            renderData.add(textRenderData);
+                                            paragraphRenderData.setContents(renderData);
+                                            paragraphRenderDataList.add(paragraphRenderData);
+                                            cellRenderData.setParagraphs(paragraphRenderDataList);
+                                            cells.add(cellRenderData);
+                                        }
+                                    }
+                                    else {
+                                        //鍏朵綑琛�
+                                        if (j == 0) {
+                                            //绗竴鍒�
+                                            int aa= 0;
+                                            for (int m = 0; m < cycle; m++) {
+                                                aa += list.get(m);
+                                                if (i-3<aa){
+                                                    textRenderData.setText((m+1)+"");
+                                                    break;
+                                                }
+                                            }
+                                            renderData.add(textRenderData);
+                                            paragraphRenderData.setContents(renderData);
+                                            paragraphRenderDataList.add(paragraphRenderData);
+                                            cellRenderData.setParagraphs(paragraphRenderDataList);
+                                            cells.add(cellRenderData);
+                                        }
+                                        else if (j == 1) {
+                                            //绗簩鍒�
+                                            int aa= 0;
+                                            for (int m = 0; m < cycle; m++) {
+                                                aa += list.get(m);
+                                                if (i-3<aa){
+                                                    InsProduct insPro = insProductMapper.selectOne(Wrappers.<InsProduct>lambdaQuery()
+                                                            .eq(InsProduct::getState, 1)
+                                                            .eq(InsProduct::getInsSampleId, sample.getId())
+                                                            .eq(InsProduct::getInspectionItemSubclass, "鐜娓╁害")
+                                                            .isNull(InsProduct::getTemplateId)
+                                                            .eq(InsProduct::getInspectionItemClass,"鐩存祦鐢甸樆")
+                                                            .isNull(InsProduct::getInsFiberId)
+                                                            .eq(InsProduct::getInspectionItem, (m+1)+""));
+                                                    String insValue = insProductResultMapper.selectList(Wrappers.<InsProductResult>lambdaQuery().eq(InsProductResult::getInsProductId, insPro.getId())).get(0).getInsValue();
+                                                    JSONArray jsonArray = JSONArray.parseArray(insValue);
+                                                    JSONObject jsonObject = jsonArray.getJSONObject(i - 3-(aa-list.get(m)));
+                                                    String vValue = jsonObject.getString("v");
+                                                    System.out.println("鐜娓╁害绗� " + (i - 2-(aa-list.get(m))) + " 涓� 'v' 瀛楁鐨勫�兼槸: " + vValue);
+                                                    textRenderData.setText(vValue);
+                                                    break;
+                                                }
+                                            }
+                                            renderData.add(textRenderData);
+                                            paragraphRenderData.setContents(renderData);
+                                            paragraphRenderDataList.add(paragraphRenderData);
+                                            cellRenderData.setParagraphs(paragraphRenderDataList);
+                                            cells.add(cellRenderData);
+                                        }
+                                        else if (j == 2) {
+                                            //绗笁鍒�
+                                            int aa= 0;
+                                            for (int m = 0; m < cycle; m++) {
+                                                aa += list.get(m);
+                                                if (i-3<aa){
+                                                    InsProduct insPro = insProductMapper.selectOne(Wrappers.<InsProduct>lambdaQuery()
+                                                            .eq(InsProduct::getState, 1)
+                                                            .eq(InsProduct::getInsSampleId, sample.getId())
+                                                            .eq(InsProduct::getInspectionItemSubclass, "瀵肩嚎娓╁害")
+                                                            .isNull(InsProduct::getTemplateId)
+                                                            .eq(InsProduct::getInspectionItemClass,"鐩存祦鐢甸樆")
+                                                            .isNull(InsProduct::getInsFiberId)
+                                                            .eq(InsProduct::getInspectionItem, (m+1)+""));
+                                                    if (ObjectUtils.isNotEmpty(insPro)) {
+                                                        String insValue = insProductResultMapper.selectList(Wrappers.<InsProductResult>lambdaQuery().eq(InsProductResult::getInsProductId, insPro.getId())).get(0).getInsValue();
+                                                        JSONArray jsonArray = JSONArray.parseArray(insValue);
+                                                        JSONObject jsonObject = jsonArray.getJSONObject(i - 3 - (aa - list.get(m)));
+                                                        String vValue = jsonObject.getString("v");
+                                                        a=vValue;
+                                                        System.out.println("瀵肩嚎娓╁害绗� " + (i - 2 - (aa - list.get(m))) + " 涓� 'v' 瀛楁鐨勫�兼槸: " + vValue);
+                                                        textRenderData.setText(vValue);
+                                                    }else textRenderData.setText("");
+                                                    break;
+                                                }
+                                            }
+                                            renderData.add(textRenderData);
+                                            paragraphRenderData.setContents(renderData);
+                                            paragraphRenderDataList.add(paragraphRenderData);
+                                            cellRenderData.setParagraphs(paragraphRenderDataList);
+                                            cells.add(cellRenderData);
+                                        }
+                                        else if (j == 3) {
+                                            //绗洓鍒�
+                                            int aa= 0;
+                                            for (int m = 0; m < cycle; m++) {
+                                                aa += list.get(m);
+                                                if (i-3<aa){
+                                                    InsProduct insPro = insProductMapper.selectOne(Wrappers.<InsProduct>lambdaQuery()
+                                                            .eq(InsProduct::getState, 1)
+                                                            .eq(InsProduct::getInsSampleId, sample.getId())
+                                                            .eq(InsProduct::getInspectionItemSubclass, "瀵肩嚎娓╁害")
+                                                            .isNull(InsProduct::getTemplateId)
+                                                            .eq(InsProduct::getInspectionItemClass,"鐩存祦鐢甸樆")
+                                                            .isNull(InsProduct::getInsFiberId)
+                                                            .eq(InsProduct::getInspectionItem, (m+1)+""));
+                                                    if (ObjectUtils.isNotEmpty(insPro)) {
+                                                        String insValue = insProductResultMapper.selectList(Wrappers.<InsProductResult>lambdaQuery().eq(InsProductResult::getInsProductId, insPro.getId())).get(0).getInsValue();
+                                                        JSONArray jsonArray = JSONArray.parseArray(insValue);
+                                                        JSONObject jsonObject = jsonArray.getJSONObject(i - 3 - (aa - list.get(m)));
+                                                        String vValue = jsonObject.getString("w");
+                                                        System.out.println("瀵肩嚎娓╁害绗� " + (i - 2 - (aa - list.get(m))) + " 涓� 'w' 瀛楁鐨勫�兼槸: " + vValue);
+                                                        textRenderData.setText(vValue);
+                                                    }else textRenderData.setText("");
+                                                    break;
+                                                }
+                                            }
+                                            renderData.add(textRenderData);
+                                            paragraphRenderData.setContents(renderData);
+                                            paragraphRenderDataList.add(paragraphRenderData);
+                                            cellRenderData.setParagraphs(paragraphRenderDataList);
+                                            cells.add(cellRenderData);
+                                        }
+                                        else if (j == 4) {
+                                            //绗簲鍒�
+                                            int aa= 0;
+                                            for (int m = 0; m < cycle; m++) {
+                                                aa += list.get(m);
+                                                if (i-3<aa){
+                                                    InsProduct insPro = insProductMapper.selectOne(Wrappers.<InsProduct>lambdaQuery()
+                                                            .eq(InsProduct::getState, 1)
+                                                            .eq(InsProduct::getInsSampleId, sample.getId())
+                                                            .eq(InsProduct::getInspectionItemSubclass, "鑰愬紶娓╁害")
+                                                            .isNull(InsProduct::getTemplateId)
+                                                            .eq(InsProduct::getInspectionItemClass,"鐩存祦鐢甸樆")
+                                                            .isNull(InsProduct::getInsFiberId)
+                                                            .eq(InsProduct::getInspectionItem, (m+1)+""));
+                                                    if (ObjectUtils.isNotEmpty(insPro)) {
+                                                        String insValue = insProductResultMapper.selectList(Wrappers.<InsProductResult>lambdaQuery().eq(InsProductResult::getInsProductId, insPro.getId())).get(0).getInsValue();
+                                                        JSONArray jsonArray = JSONArray.parseArray(insValue);
+                                                        JSONObject jsonObject = jsonArray.getJSONObject(i - 3 - (aa - list.get(m)));
+                                                        String vValue = jsonObject.getString("v");
+                                                        b=vValue;
+                                                        System.out.println("鑰愬紶娓╁害绗� " + (i - 2 - (aa - list.get(m))) + " 涓� 'v' 瀛楁鐨勫�兼槸: " + vValue);
+                                                        textRenderData.setText(vValue);
+                                                    }else textRenderData.setText("");
+                                                    break;
+                                                }
+                                            }
+                                            renderData.add(textRenderData);
+                                            paragraphRenderData.setContents(renderData);
+                                            paragraphRenderDataList.add(paragraphRenderData);
+                                            cellRenderData.setParagraphs(paragraphRenderDataList);
+                                            cells.add(cellRenderData);
+                                        }
+                                        else if (j == 5) {
+                                            //绗叚鍒�
+                                            int aa= 0;
+                                            for (int m = 0; m < cycle; m++) {
+                                                aa += list.get(m);
+                                                if (i-3<aa){
+                                                    InsProduct insPro = insProductMapper.selectOne(Wrappers.<InsProduct>lambdaQuery()
+                                                            .eq(InsProduct::getState, 1)
+                                                            .eq(InsProduct::getInsSampleId, sample.getId())
+                                                            .eq(InsProduct::getInspectionItemSubclass, "鑰愬紶娓╁害")
+                                                            .isNull(InsProduct::getTemplateId)
+                                                            .eq(InsProduct::getInspectionItemClass,"鐩存祦鐢甸樆")
+                                                            .isNull(InsProduct::getInsFiberId)
+                                                            .eq(InsProduct::getInspectionItem, (m+1)+""));
+                                                    if (ObjectUtils.isNotEmpty(insPro)) {
+                                                        String insValue = insProductResultMapper.selectList(Wrappers.<InsProductResult>lambdaQuery().eq(InsProductResult::getInsProductId, insPro.getId())).get(0).getInsValue();
+                                                        JSONArray jsonArray = JSONArray.parseArray(insValue);
+                                                        JSONObject jsonObject = jsonArray.getJSONObject(i - 3 - (aa - list.get(m)));
+                                                        String vValue = jsonObject.getString("w");
+                                                        System.out.println("鑰愬紶娓╁害绗� " + (i - 2 - (aa - list.get(m))) + " 涓� 'w' 瀛楁鐨勫�兼槸: " + vValue);
+                                                        textRenderData.setText(vValue);
+                                                    }else textRenderData.setText("");
+                                                    break;
+                                                }
+                                            }
+                                            renderData.add(textRenderData);
+                                            paragraphRenderData.setContents(renderData);
+                                            paragraphRenderDataList.add(paragraphRenderData);
+                                            cellRenderData.setParagraphs(paragraphRenderDataList);
+                                            cells.add(cellRenderData);
+                                        }
+                                        else if (j == 6) {
+                                            //绗竷鍒�
+                                            int aa= 0;
+                                            for (int m = 0; m < cycle; m++) {
+                                                aa += list.get(m);
+                                                if (i-3<aa){
+                                                    InsProduct insPro = insProductMapper.selectOne(Wrappers.<InsProduct>lambdaQuery()
+                                                            .eq(InsProduct::getState, 1)
+                                                            .eq(InsProduct::getInsSampleId, sample.getId())
+                                                            .eq(InsProduct::getInspectionItemSubclass, "鎺ョ画娓╁害")
+                                                            .isNull(InsProduct::getTemplateId)
+                                                            .eq(InsProduct::getInspectionItemClass,"鐩存祦鐢甸樆")
+                                                            .isNull(InsProduct::getInsFiberId)
+                                                            .eq(InsProduct::getInspectionItem, (m+1)+""));
+                                                    if (ObjectUtils.isNotEmpty(insPro)) {
+                                                        String insValue = insProductResultMapper.selectList(Wrappers.<InsProductResult>lambdaQuery().eq(InsProductResult::getInsProductId, insPro.getId())).get(0).getInsValue();
+                                                        JSONArray jsonArray = JSONArray.parseArray(insValue);
+                                                        JSONObject jsonObject = jsonArray.getJSONObject(i - 3 - (aa - list.get(m)));
+                                                        String vValue = jsonObject.getString("v");
+                                                        d=vValue;
+                                                        System.out.println("鎺ョ画娓╁害绗� " + (i - 2 - (aa - list.get(m))) + " 涓� 'v' 瀛楁鐨勫�兼槸: " + vValue);
+                                                        textRenderData.setText(vValue);
+                                                    }else textRenderData.setText("");
+                                                    break;
+                                                }
+                                            }
+                                            renderData.add(textRenderData);
+                                            paragraphRenderData.setContents(renderData);
+                                            paragraphRenderDataList.add(paragraphRenderData);
+                                            cellRenderData.setParagraphs(paragraphRenderDataList);
+                                            cells.add(cellRenderData);
+                                        }
+                                        else if (j == 7) {
+                                            //绗叓鍒�
+                                            int aa= 0;
+                                            for (int m = 0; m < cycle; m++) {
+                                                aa += list.get(m);
+                                                if (i-3<aa){
+                                                    InsProduct insPro = insProductMapper.selectOne(Wrappers.<InsProduct>lambdaQuery()
+                                                            .eq(InsProduct::getState, 1)
+                                                            .eq(InsProduct::getInsSampleId, sample.getId())
+                                                            .eq(InsProduct::getInspectionItemSubclass, "鎺ョ画娓╁害")
+                                                            .isNull(InsProduct::getTemplateId)
+                                                            .eq(InsProduct::getInspectionItemClass,"鐩存祦鐢甸樆")
+                                                            .isNull(InsProduct::getInsFiberId)
+                                                            .eq(InsProduct::getInspectionItem, (m+1)+""));
+                                                    if (ObjectUtils.isNotEmpty(insPro)) {
+                                                        String insValue = insProductResultMapper.selectList(Wrappers.<InsProductResult>lambdaQuery().eq(InsProductResult::getInsProductId, insPro.getId())).get(0).getInsValue();
+                                                        JSONArray jsonArray = JSONArray.parseArray(insValue);
+                                                        JSONObject jsonObject = jsonArray.getJSONObject(i - 3 - (aa - list.get(m)));
+                                                        String vValue = jsonObject.getString("w");
+                                                        System.out.println("鎺ョ画娓╁害绗� " + (i - 2 - (aa - list.get(m))) + " 涓� 'w' 瀛楁鐨勫�兼槸: " + vValue);
+                                                        textRenderData.setText(vValue);
+                                                    }else textRenderData.setText("");
+                                                    break;
+                                                }
+                                            }
+                                            renderData.add(textRenderData);
+                                            paragraphRenderData.setContents(renderData);
+                                            paragraphRenderDataList.add(paragraphRenderData);
+                                            cellRenderData.setParagraphs(paragraphRenderDataList);
+                                            cells.add(cellRenderData);
+                                        }
+                                        else  {
+                                            //鍒ゆ柇鍚堟牸涓庝笉鍚堟牸
+                                            BigDecimal decimal1 = new BigDecimal(a);
+                                            BigDecimal decimal2 = new BigDecimal(b == null ? "0" : b);
+                                            BigDecimal decimal3 = new BigDecimal(d == null ? "0" : d);
+                                            if (decimal1.compareTo(decimal2) > 0 && decimal1.compareTo(decimal3) > 0) {
+                                                textRenderData.setText("鈭�");
+                                            } else {
+                                                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()) {
+                            /*for (CellRenderData cell : row.getCells()) {
+                                System.out.print(cell.getParagraphs().get(0).getContents());
+                            }
+                            System.out.println("");*/
+                                if (row.getCells().size() != countSize) {
+                                    throw new ErrorException("姣忚鍗曞厓鏍间笉鐩哥瓑5");
+                                }
+                            }
+                            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(14);
+                            tableStyle.setLeftBorder(borderStyle);
+                            tableStyle.setTopBorder(borderStyle);
+                            tableStyle.setRightBorder(borderStyle);
+                            tableStyle.setBottomBorder(borderStyle);
+                            tableRenderData.setTableStyle(tableStyle);
+                            Map<String, Object> table = new HashMap<>();
+                            table.put("table3", tableRenderData);
+                            table.put("report", insReport);
+                            table.put("index3", index3);
+                            tables3.add(table);
+                            index3++;
+                        }
+                    }
+
+                });
+            }
             tables3.forEach(table3 -> {
                 table3.put("tableSize3", tables3.size());
             });
-
             /*鑾峰彇闄勪欢鍥剧墖绫诲瀷*/
             List<Map<String, Object>> images = new ArrayList<>();
             List<InsOrderFile> insOrderFiles = insOrderFileMapper.selectList(Wrappers.<InsOrderFile>lambdaQuery().eq(InsOrderFile::getType, 1).eq(InsOrderFile::getInsOrderId, orderId));

--
Gitblit v1.9.3