zss
2024-12-30 97bb7a8832281eafe0ef947ea095258d355e52f5
inspect-server/src/main/java/com/yuanchu/mom/utils/WordUtils.java
@@ -94,7 +94,7 @@
    GiveCode giveCode;
    //生成站点电路试验报告
    //生成站点电路试验报告(天线)
    public void generateWord(String term, InsOrderState insOrderState) {
        AtomicInteger lable = new AtomicInteger(1);
        AtomicInteger index = new AtomicInteger();
@@ -144,6 +144,12 @@
                if (inspectionItemSubclass.contains("同极化隔离度")) {
                    aa += 1 * portRow;
                }
                if (inspectionItemSubclass.contains("同列隔离度")) {
                    aa += 1 * portRow;
                }
                if (inspectionItemSubclass.contains("端口间隔离度")) {
                    aa += 1 * portRow;
                }
                if (inspectionItemSubclass.contains("异极化隔离度")) {
                    aa += 1 * portRow;
                }
@@ -158,6 +164,22 @@
                    List<InsProductResult2> result2s = productResult2s.stream().filter(insProductResult2 ->
                            insProductMapper.selectById(insProductResult2.getInsProductId())
                                    .getInspectionItemSubclass().equals("同极化隔离度") && insProductResult2.getFrequency().equals(s)
                    ).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 = productResult2s.stream().filter(insProductResult2 ->
                            insProductMapper.selectById(insProductResult2.getInsProductId())
                                    .getInspectionItemSubclass().equals("同列隔离度") && insProductResult2.getFrequency().equals(s)
                    ).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 = productResult2s.stream().filter(insProductResult2 ->
                            insProductMapper.selectById(insProductResult2.getInsProductId())
                                    .getInspectionItemSubclass().equals("端口间隔离度") && insProductResult2.getFrequency().equals(s)
                    ).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);
@@ -205,6 +227,8 @@
            int gg = 0;
            int hh = 0;
            int mm = 0;
            int nn = 0;
            int pp = 0;
            //表格的行数
            for (int i = 0; i <= aa; i++) {
                RowRenderData rowRenderData = new RowRenderData();
@@ -433,18 +457,18 @@
                                    cells.add(cellRenderData);
                                }
                            }
                            if (inspectionItemSubclass.contains("异极化隔离度") && i > (dd == 0 ? cc : dd) && i <= (dd == 0 ? cc : dd) + portRow) {
                            if (inspectionItemSubclass.contains("同列隔离度") && i > (dd == 0 ? cc : dd) && i <= (dd == 0 ? cc : dd) + portRow) {
                                ee = (dd == 0 ? cc : dd) + portRow;
                                if (itemSet.add("异极化隔离度")) {
                                if (itemSet.add("同列隔离度")) {
                                    index.getAndIncrement();
                                }
                                List<InsProduct> products = insProducts.stream()
                                        .filter(insProduct -> insProduct.getInspectionItemSubclass().equals("异极化隔离度"))
                                        .filter(insProduct -> insProduct.getInspectionItemSubclass().equals("同列隔离度"))
                                        .collect(Collectors.toList());
                                List<InsProductResult2> result2s = productResult2s.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);
@@ -455,7 +479,7 @@
                                    cells.add(cellRenderData);
                                } else if (j == 1) {
                                    //第二列
                                    textRenderData.setText("异极化隔离度∑2" + index);
                                    textRenderData.setText("隔离度∑2" + index);
                                    renderData.add(textRenderData);
                                    paragraphRenderData.setContents(renderData);
                                    paragraphRenderDataList.add(paragraphRenderData);
@@ -525,7 +549,191 @@
                                    cells.add(cellRenderData);
                                }
                            }
                            if (inspectionItemSubclass.contains("互调") && i > (ee == 0 ? ((dd == 0 ? cc : dd)) : ee)) {
                            if (inspectionItemSubclass.contains("端口间隔离度") && i > (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) && i <= (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) + portRow) {
                                ff = (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) + portRow;
                                if (itemSet.add("端口间隔离度")) {
                                    index.getAndIncrement();
                                }
                                List<InsProduct> products = insProducts.stream()
                                        .filter(insProduct -> insProduct.getInspectionItemSubclass().equals("端口间隔离度"))
                                        .collect(Collectors.toList());
                                List<InsProductResult2> result2s = productResult2s.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 - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) - 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 - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) - 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 >(ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff)&& i <= (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) + portRow) {
                                gg = (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) + portRow;
                                if (itemSet.add("异极化隔离度")) {
                                    index.getAndIncrement();
                                }
                                List<InsProduct> products = insProducts.stream()
                                        .filter(insProduct -> insProduct.getInspectionItemSubclass().equals("异极化隔离度"))
                                        .collect(Collectors.toList());
                                List<InsProductResult2> result2s = productResult2s.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 - (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) - 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 - (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) - 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 > (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg)) {
                                if (itemSet.add("互调")) {
                                    index.getAndIncrement();
                                }
@@ -570,10 +778,10 @@
                                    cells.add(cellRenderData);
                                } else if (j == 4) {
                                    //第五列
                                    if ((i - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee)) % (angles + 1) == 1) {
                                    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 - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) - 2) % (angles + 1)]);
                                        textRenderData.setText(result2s.get(0).getAngle().split(",")[(i - (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg) - 2) % (angles + 1)]);
                                    }
                                    renderData.add(textRenderData);
                                    paragraphRenderData.setContents(renderData);
@@ -582,15 +790,15 @@
                                    cells.add(cellRenderData);
                                } else if (j == bb - 1) {
                                    //最后一列
                                    if ((i - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee)) % (angles + 1) == 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 + ((i - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) + (angles - 1)) / (angles + 1) - 1));
                                            textRenderData.setText("合格∑8" + index + ((i - (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg) + (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));
                                            textRenderData.setText("不合格∑8" + index + ((i - (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg) + (angles - 1)) / (angles + 1) - 1));
                                        } else {
                                            textRenderData.setText("不判定∑8" + index + ((i - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) + (angles - 1)) / (angles + 1) - 1));
                                            textRenderData.setText("不判定∑8" + index + ((i - (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg) + (angles - 1)) / (angles + 1) - 1));
                                        }
                                    }
                                    renderData.add(textRenderData);
@@ -599,13 +807,13 @@
                                    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);
                                    if ((i - (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg)) % (angles + 1) == 1) {
                                        textRenderData.setText(result2s.get((i - (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg)) / 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(",");
                                        String[] value = result2s.get((i - (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg)) / portRow / (angles + 2)).getValue().split("\\],\\[");
                                        String[] split = value[(i - (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg) - 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)))]);
                                            textRenderData.setText(split[((j - 5) + ((i - (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg) - 1) / (angles + 1) % portRow) * (Math.min(ports, 8)))]);
                                        } catch (Exception e) {
                                            textRenderData.setText("");
                                        }
@@ -843,8 +1051,8 @@
                                    }
                                }
                            }
                            if (inspectionItemSubclass.contains("异极化隔离度")) {
                                List<InsProduct> products = insProducts.stream().filter(insProduct -> insProduct.getInspectionItemSubclass().equals("异极化隔离度")).collect(Collectors.toList());
                            if (inspectionItemSubclass.contains("同列隔离度")) {
                                List<InsProduct> products = insProducts.stream().filter(insProduct -> insProduct.getInspectionItemSubclass().equals("同列隔离度")).collect(Collectors.toList());
                                List<InsProductResult2> result2s = productResult2s.stream()
                                        .filter(insProductResult2 -> insProductResult2.getFrequency().equals(s) && insProductResult2.getInsProductId().equals(products.get(0).getId()))
                                        .collect(Collectors.toList());
@@ -853,10 +1061,10 @@
                                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("异极化隔离度")) {
                                    if (itemSet.add("同列隔离度")) {
                                        index.getAndIncrement();
                                    }
                                    //异极化隔离度所在行
                                    //隔离度所在行
                                    if (j == 0) {
                                        //第一列
                                        textRenderData.setText(index + "∑1" + index);
@@ -867,7 +1075,7 @@
                                        cells.add(cellRenderData);
                                    } else if (j == 1) {
                                        //第二列
                                        textRenderData.setText("异极化隔离度∑2" + index);
                                        textRenderData.setText("隔离度∑2" + index);
                                        renderData.add(textRenderData);
                                        paragraphRenderData.setContents(renderData);
                                        paragraphRenderDataList.add(paragraphRenderData);
@@ -923,18 +1131,264 @@
                                        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("端口间隔离度")) {
                                List<InsProduct> products = insProducts.stream().filter(insProduct -> insProduct.getInspectionItemSubclass().equals("端口间隔离度")).collect(Collectors.toList());
                                List<InsProductResult2> result2s = productResult2s.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 > (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) && i <= (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) + k) {
                                    ff = (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) + 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 - (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 + 2)));
                                            } else if (products.get(0).getInsResult() == 0) {
                                                textRenderData.setText("不合格∑8" + index + ((i - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee)) / (angles + 2)));
                                            } else {
                                                textRenderData.setText("不判定∑8" + index + ((i - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee)) / (angles + 2)));
                                            }
                                        }
                                        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) {
                                            //端口
                                            if (j % 2 == 0) {
                                                try {
                                                    textRenderData.setText(result2s.get(0).getPort().split(",")[(j - 6) / 2 + ((i - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee)) / (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 - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee)) / (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 - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee)) / (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 - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee)) / (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 = productResult2s.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 > (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) && i <= (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) + k) {
                                    gg = (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) + 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 - (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 + ((i - (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff)) / (angles + 2)));
                                            } else if (products.get(0).getInsResult() == 0) {
                                                textRenderData.setText("不合格∑8" + index + ((i - (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff)) / (angles + 2)));
                                            } else {
                                                textRenderData.setText("不判定∑8" + index + ((i - (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff)) / (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 ((i - (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff)) % (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));
                                                        textRenderData.setText(result2s.get(0).getPort().split(",")[(j - 6) / 2 + ((i - (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff)) / (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));
                                                        textRenderData.setText(result2s.get(0).getPort().split(",")[(j - 5) / 2 + ((i - (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff)) / (angles + 1)) * (ports > 8 ? 4 : (ports + 1) / 2)] + "∑5" + i + (j - 5));
                                                    } catch (Exception e) {
                                                        textRenderData.setText("");
                                                    }
@@ -945,13 +1399,13 @@
                                                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));
                                                        textRenderData.setText(split[(j - 6) / 2 + ((i - (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff)) / (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));
                                                        textRenderData.setText(split[(j - 5) / 2 + ((i - (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff)) / (angles + 2)) * (ports > 8 ? 4 : (ports + 1) / 2)] + "∑5" + i + (j - 5));
                                                    } catch (Exception e) {
                                                        textRenderData.setText("");
                                                    }
@@ -965,8 +1419,8 @@
                                        }
                                    }
                                }
                            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 (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) * portRow * often)) {
                                    hh = (int) ((gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg) + (angles + 1) * portRow * often);
                                    if (itemSet.add("互调")) {
                                        index.getAndIncrement();
                                    }
@@ -1009,7 +1463,7 @@
                                        cells.add(cellRenderData);
                                    } else if (j == 4) {
                                        //第五列
                                        if ((i - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee)) % (angles + 1) == 1) {
                                        if ((i - (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg)) % (angles + 1) == 1) {
                                            //角度
                                            textRenderData.setText("角度");
                                        } else {
@@ -1023,16 +1477,16 @@
                                        cells.add(cellRenderData);
                                    } else if (j == bb - 1) {
                                        //最后一列
                                        if ((i - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee)) % (angles + 1) == 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 + ((i - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) + (angles - 1)) / (angles + 1) - 1));
                                                textRenderData.setText("合格∑8" + index + ((i - (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg) + (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));
                                                textRenderData.setText("不合格∑8" + index + ((i - (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg) + (angles - 1)) / (angles + 1) - 1));
                                            } else {
                                                textRenderData.setText("不判定∑8" + index + ((i - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) + (angles - 1)) / (angles + 1) - 1));
                                                textRenderData.setText("不判定∑8" + index + ((i - (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg) + (angles - 1)) / (angles + 1) - 1));
                                            }
                                        }
                                        renderData.add(textRenderData);
@@ -1042,15 +1496,15 @@
                                        cells.add(cellRenderData);
                                    } else {
                                        //其余列
                                        if ((i - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee)) % (angles + 1) == 1) {
                                        if ((i - (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg)) % (angles + 1) == 1) {
                                            //频点
                                            textRenderData.setText(result2s.get((i - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee)) / portRow / (angles + 1)).getOften() + "∑6" + i + index);
                                            textRenderData.setText(result2s.get((i - (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg)) / 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[] value = result2s.get((i - (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg)) / 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 - (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg) - 1) / (angles + 1) % portRow) * (Math.min(ports, 8)))]);
                                            } catch (Exception e) {
                                                textRenderData.setText("");
                                            }
@@ -1062,8 +1516,8 @@
                                        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 (inspectionItemSubclass.contains("最大耦合度") && 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) + (angles + 1))) {
                                    mm = ((hh==0?(gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg):hh) + (angles + 1));
                                    if (itemSet.add("最大耦合度")) {
                                        index.getAndIncrement();
                                    }
@@ -1106,7 +1560,7 @@
                                        cells.add(cellRenderData);
                                    } else if (j == 4) {
                                        //第五列
                                        if ((i - (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff)) % (angles + 1) == 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 {
@@ -1120,7 +1574,7 @@
                                        cells.add(cellRenderData);
                                    } else if (j == bb - 1) {
                                        //最后一列
                                        if ((i - (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff)) % (angles + 1) == 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 {
                                            //结论
@@ -1139,7 +1593,7 @@
                                        cells.add(cellRenderData);
                                    } else {
                                        //其余列
                                        if ((i - (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff)) % (angles + 1) == 1) {
                                        if ((i - (hh==0?(gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg):hh)) % (angles + 1) == 1) {
                                            //频点
                                            textRenderData.setText(result2s.get(0).getOften() + "∑6" + index);
                                        } else {
@@ -1155,8 +1609,8 @@
                                        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 (inspectionItemSubclass.contains("最小耦合度") && i > (mm == 0 ? (hh==0?(gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg):hh) : mm) && i <= ((mm == 0 ? (hh==0?(gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg):hh) : mm) + (angles + 1))) {
                                    nn = (mm == 0 ? (hh==0?(gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg):hh) : mm) + (angles + 1);
                                    if (itemSet.add("最小耦合度")) {
                                        index.getAndIncrement();
                                    }
@@ -1199,7 +1653,7 @@
                                        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) {
                                        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 {
@@ -1213,7 +1667,7 @@
                                        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) {
                                        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 {
                                            //结论
@@ -1232,7 +1686,7 @@
                                        cells.add(cellRenderData);
                                    } else {
                                        //其余列
                                        if ((i - (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg)) % (angles + 1) == 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(result2s.get(0).getOften() + "∑6" + index);
                                        } else {
@@ -1256,8 +1710,8 @@
                                    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 (i > (nn == 0 ? (mm == 0 ? (hh==0?(gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg):hh) : mm) : nn) && i <= (nn == 0 ? (mm == 0 ? (hh==0?(gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg):hh) : mm) : nn) + k) {
                                        pp = (nn == 0 ? (mm == 0 ? (hh==0?(gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg):hh) : mm) : nn) + k;
                                        if (itemSet.add("幅度偏差")) {
                                            index.getAndIncrement();
                                        }
@@ -1296,7 +1750,7 @@
                                            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) {
                                            if ((i - (nn == 0 ? (mm == 0 ? (hh==0?(gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg):hh) : mm) : nn)) % (angles + 1) == 1) {
                                                //频段
                                                textRenderData.setText("频段");
                                            } else {
@@ -1310,16 +1764,16 @@
                                            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) {
                                            if ((i - (nn == 0 ? (mm == 0 ? (hh==0?(gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg):hh) : mm) : nn)) % (angles + 1) == 1) {
                                                textRenderData.setText("/");
                                            } 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)));
                                                    textRenderData.setText("合格∑8" + index + ((i - (nn == 0 ? (mm == 0 ? (hh==0?(gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg):hh) : mm) : nn)) / (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)));
                                                    textRenderData.setText("不合格∑8" + index + ((i - (nn == 0 ? (mm == 0 ? (hh==0?(gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg):hh) : mm) : nn)) / (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)));
                                                    textRenderData.setText("不判定∑8" + index + ((i - (nn == 0 ? (mm == 0 ? (hh==0?(gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg):hh) : mm) : nn)) / (angles + 2)));
                                                }
                                            }
                                            renderData.add(textRenderData);
@@ -1329,10 +1783,10 @@
                                            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) {
                                            if ((i - (nn == 0 ? (mm == 0 ? (hh==0?(gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg):hh) : mm) : nn)) % (angles + 1) == 1) {
                                                //频段
                                                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)]);
                                                    textRenderData.setText(result2s.get(0).getPort().split(",")[(j - 5) + ((i - (nn == 0 ? (mm == 0 ? (hh==0?(gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg):hh) : mm) : nn)) / (angles + 2)) * Math.min(length, 8)]);
                                                } catch (Exception e) {
                                                    textRenderData.setText("");
                                                }
@@ -1341,7 +1795,7 @@
                                                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)]);
                                                    textRenderData.setText(split[(j - 5) + ((i - (nn == 0 ? (mm == 0 ? (hh==0?(gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg):hh) : mm) : nn)) / (angles + 2)) * Math.min(length, 8)]);
                                                } catch (Exception e) {
                                                    textRenderData.setText("");
                                                }
@@ -1362,7 +1816,7 @@
                                    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 (i > (pp == 0 ? (nn == 0 ? (mm == 0 ? (hh==0?(gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg):hh) : mm) : nn) : pp)) {
                                        if (itemSet.add("最大相位偏差")) {
                                            index.getAndIncrement();
                                        }
@@ -1401,7 +1855,7 @@
                                            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) {
                                            if ((i - (pp == 0 ? (nn == 0 ? (mm == 0 ? (hh==0?(gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg):hh) : mm) : nn) : pp)) % (angles + 1) == 1) {
                                                //频段
                                                textRenderData.setText("频段");
                                            } else {
@@ -1415,16 +1869,16 @@
                                            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) {
                                            if ((i - (pp == 0 ? (nn == 0 ? (mm == 0 ? (hh==0?(gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg):hh) : mm) : nn) : pp)) % (angles + 1) == 1) {
                                                textRenderData.setText("/");
                                            } 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)));
                                                    textRenderData.setText("合格∑8" + index + ((i - (pp == 0 ? (nn == 0 ? (mm == 0 ? (hh==0?(gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg):hh) : mm) : nn) : pp)) / (angles + 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)));
                                                    textRenderData.setText("不合格∑8" + index + ((i - (pp == 0 ? (nn == 0 ? (mm == 0 ? (hh==0?(gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg):hh) : mm) : nn) : pp)) / (angles + 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)));
                                                    textRenderData.setText("不判定∑8" + index + ((i - (pp == 0 ? (nn == 0 ? (mm == 0 ? (hh==0?(gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg):hh) : mm) : nn) : pp)) / (angles + 2)));
                                                }
                                            }
                                            renderData.add(textRenderData);
@@ -1434,10 +1888,10 @@
                                            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) {
                                            if ((i - (pp == 0 ? (nn == 0 ? (mm == 0 ? (hh==0?(gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg):hh) : mm) : nn) : pp)) % (angles + 1) == 1) {
                                                //端口
                                                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)]);
                                                    textRenderData.setText(result2s.get(0).getPort().split(",")[(j - 5) + ((i - (pp == 0 ? (nn == 0 ? (mm == 0 ? (hh==0?(gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg):hh) : mm) : nn) : pp)) / (angles + 2)) * Math.min(length, 8)]);
                                                } catch (Exception e) {
                                                    textRenderData.setText("");
                                                }
@@ -1446,7 +1900,7 @@
                                                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)]);
                                                    textRenderData.setText(split[(j - 5) + ((i - (pp == 0 ? (nn == 0 ? (mm == 0 ? (hh==0?(gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg):hh) : mm) : nn) : pp)) / (angles + 2)) * Math.min(length, 8)]);
                                                } catch (Exception e) {
                                                    textRenderData.setText("");
                                                }
@@ -1492,6 +1946,1962 @@
                tables.add(table);
                lable.getAndIncrement();
            });
        ZipSecureFile.setMinInflateRatio(0.0001);
        InputStream inputStream = this.getClass().getResourceAsStream("/static/word1.docx");
        ConfigureBuilder builder = Configure.builder();
        builder.useSpringEL(true);
        XWPFTemplate template = XWPFTemplate.compile(inputStream, builder.build()).render(
                new HashMap<String, Object>() {{
                    put("title", title);
                    put("tables", tables);
                }});
        String name = insOrder.getEntrustCode().replace("/", "") + "-" +insSample.getSampleCode()+"-"+ title + ".docx";
        String url = UUID.randomUUID() + "_" + name;
        try {
            template.writeAndClose(Files.newOutputStream(Paths.get(wordUrl + "/" + url)));
        } catch (IOException e) {
            throw new RuntimeException(e);
        }
        // 处理合并单元格的问题
        String path = wordUrl + "/" + url;
        try {
            ZipSecureFile.setMinInflateRatio(0.0001);
            FileInputStream stream = new FileInputStream(path);
            XWPFDocument document = new XWPFDocument(stream);
            List<XWPFTable> xwpfTables = document.getTables();
            for (int i = 0; i < xwpfTables.size(); i++) {
                Set<String> set1 = new HashSet<>();
                Map<String, Map<String, Integer>> maps = new HashMap<>();
                for (int j = 0; j < xwpfTables.get(i).getRows().size(); j++) {
                    for (int k = 0; k < xwpfTables.get(i).getRows().get(j).getTableCells().size(); k++) {
                        if (xwpfTables.get(i).getRows().get(j).getTableCells().get(k).getText().indexOf("∑") > -1) {
                            String[] split = xwpfTables.get(i).getRows().get(j).getTableCells().get(k).getText().split("∑");
                            if (set1.add(split[1])) {
                                Map<String, Integer> map = new HashMap<>();
                                map.put("sr", j);
                                map.put("sc", k);
                                map.put("er", j + 0);
                                map.put("ec", k + 0);
                                maps.put(split[1], map);
                            } else {
                                Map<String, Integer> map1 = maps.get(split[1]);
                                if (j == map1.get("sr")) {
                                    map1.put("ec", map1.get("ec") + 1);
                                } else if (k == map1.get("sc")) {
                                    map1.put("er", map1.get("er") + 1);
                                }
                            }
                            String str = xwpfTables.get(i).getRows().get(j).getTableCells().get(k).getText().split("∑")[0];
                            xwpfTables.get(i).getRows().get(j).getTableCells().get(k).removeParagraph(0);
                            xwpfTables.get(i).getRows().get(j).getTableCells().get(k).setText(str);
                            xwpfTables.get(i).getRows().get(j).getTableCells().get(k).setVerticalAlignment(XWPFTableCell.XWPFVertAlign.CENTER);
                            xwpfTables.get(i).getRows().get(j).getTableCells().get(k).getParagraphArray(0).setAlignment(org.apache.poi.xwpf.usermodel.ParagraphAlignment.CENTER);
                        }
                    }
                }
                // 单元格排序, 避免格式错乱
                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 (Map.Entry<String, Map<String, Integer>> entry : entries) {
                    list.add(entry.getKey());
                }
                /*List<String> list = new ArrayList<>();
                for (String s : maps.keySet()) {
                    list.add(s);
                }*/
                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++) {
                        if (v.get("ec") > v.get("sc")) {
                            try {
                                TableTools.mergeCellsHorizonal(xwpfTables.get(i), v.get("sr") + j, v.get("sc"), v.get("ec"));
                            } catch (Exception e) {
                            }
                        }
                    }
                    if (v.get("er") > v.get("sr")) {
                        try {
                            TableTools.mergeCellsVertically(xwpfTables.get(i), v.get("sc"), v.get("sr"), v.get("er"));
                        } catch (Exception e) {
                        }
                    }
                }
            }
            FileOutputStream fileOutputStream = new FileOutputStream(path);
            document.write(fileOutputStream);
            fileOutputStream.close();
        } catch (FileNotFoundException e) {
            throw new RuntimeException(e);
        } catch (IOException e) {
            throw new RuntimeException(e);
        }
        InsOrderFile insOrderFile = new InsOrderFile();
        insOrderFile.setInsOrderId(insOrderState.getInsOrderId());
        insOrderFile.setInsSampleId(insOrderState.getInsSampleId());
        insOrderFile.setFileName(name);
        insOrderFile.setType(2);
        insOrderFile.setFileUrl(url);
        insOrderFile.setSonLaboratory("电路试验");
        insOrderFileMapper.insert(insOrderFile);
    }
    //生成站点电路试验报告(无源器件)
    public void generateWord2(String term, InsOrderState insOrderState) {
        AtomicInteger lable = new AtomicInteger(1);
        AtomicInteger index = new AtomicInteger();
        String title = term + "电路参数";
        List<Map<String, Object>> tables = new ArrayList<>();
        //查询订单
        InsOrder insOrder = insOrderMapper.selectById(insOrderState.getInsOrderId());
        //查询样品
        InsSample insSample = insSampleMapper.selectById(insOrderState.getInsSampleId());
        //查询项目
        List<InsProduct> insProducts = insProductMapper.selectList(Wrappers.<InsProduct>lambdaQuery()
                .eq(InsProduct::getState,1)
                .eq(InsProduct::getInsSampleId, insSample.getId())
                .eq(InsProduct::getSonLaboratory, "电路试验"));
        //获取最大端口数量,角度数量,频段数量
        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;//角度数
            List<InsProductResult2> productResult2s = insProductResult2s.stream().filter(insProductResult2 -> insProductResult2.getFrequency().equals(s)).collect(Collectors.toList());
            for (InsProductResult2 insProductResult2 : productResult2s) {
                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 = productResult2s.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 += 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 = productResult2s.stream().filter(insProductResult2 ->
                            insProductMapper.selectById(insProductResult2.getInsProductId())
                                    .getInspectionItemSubclass().equals("同极化隔离度") && insProductResult2.getFrequency().equals(s)
                    ).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 = productResult2s.stream().filter(insProductResult2 ->
                            insProductMapper.selectById(insProductResult2.getInsProductId())
                                    .getInspectionItemSubclass().equals("同列隔离度") && insProductResult2.getFrequency().equals(s)
                    ).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 = productResult2s.stream().filter(insProductResult2 ->
                            insProductMapper.selectById(insProductResult2.getInsProductId())
                                    .getInspectionItemSubclass().equals("端口间隔离度") && insProductResult2.getFrequency().equals(s)
                    ).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 = productResult2s.stream().filter(insProductResult2 ->
                            insProductMapper.selectById(insProductResult2.getInsProductId())
                                    .getInspectionItemSubclass().equals("异极化隔离度") && insProductResult2.getFrequency().equals(s)
                    ).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 = productResult2s.stream().filter(insProductResult2 ->
                            insProductMapper.selectById(insProductResult2.getInsProductId())
                                    .getInspectionItemSubclass().equals("幅度偏差")&& insProductResult2.getFrequency().equals(s)
                    ).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 = productResult2s.stream().filter(insProductResult2 ->
                            insProductMapper.selectById(insProductResult2.getInsProductId())
                                    .getInspectionItemSubclass().equals("最大相位偏差")&& insProductResult2.getFrequency().equals(s)
                    ).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;
            int nn = 0;
            int pp = 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 = productResult2s.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 = productResult2s.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 = productResult2s.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) && i <= (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) + portRow) {
                                ff = (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) + portRow;
                                if (itemSet.add("端口间隔离度")) {
                                    index.getAndIncrement();
                                }
                                List<InsProduct> products = insProducts.stream()
                                        .filter(insProduct -> insProduct.getInspectionItemSubclass().equals("端口间隔离度"))
                                        .collect(Collectors.toList());
                                List<InsProductResult2> result2s = productResult2s.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 - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) - 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 - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) - 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 >(ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff)&& i <= (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) + portRow) {
                                gg = (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) + portRow;
                                if (itemSet.add("异极化隔离度")) {
                                    index.getAndIncrement();
                                }
                                List<InsProduct> products = insProducts.stream()
                                        .filter(insProduct -> insProduct.getInspectionItemSubclass().equals("异极化隔离度"))
                                        .collect(Collectors.toList());
                                List<InsProductResult2> result2s = productResult2s.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 - (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) - 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 - (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) - 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 > (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg)) {
                                if (itemSet.add("互调")) {
                                    index.getAndIncrement();
                                }
                                List<InsProduct> products = insProducts.stream()
                                        .filter(insProduct -> insProduct.getInspectionItemSubclass().equals("互调"))
                                        .collect(Collectors.toList());
                                List<InsProductResult2> result2s = productResult2s.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 - (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg) - 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 - (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 + ((i - (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg) + (angles - 1)) / (angles + 1) - 1));
                                        } else if (products.get(0).getInsResult() == 0) {
                                            textRenderData.setText("不合格∑8" + index + ((i - (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg) + (angles - 1)) / (angles + 1) - 1));
                                        } else {
                                            textRenderData.setText("不判定∑8" + index + ((i - (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg) + (angles - 1)) / (angles + 1) - 1));
                                        }
                                    }
                                    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((i - (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg)) / portRow / (angles + 1)).getOften() + "∑6" + i + index);
                                    } else {
                                        String[] value = result2s.get((i - (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg)) / portRow / (angles + 2)).getValue().split("\\],\\[");
                                        String[] split = value[(i - (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg) - 2) % (angles + 1)].replaceAll("[\\[\\]\"]", "").split(",");
                                        try {
                                            textRenderData.setText(split[((j - 5) + ((i - (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg) - 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 = productResult2s.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 = productResult2s.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 = productResult2s.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("端口间隔离度")) {
                                List<InsProduct> products = insProducts.stream().filter(insProduct -> insProduct.getInspectionItemSubclass().equals("端口间隔离度")).collect(Collectors.toList());
                                List<InsProductResult2> result2s = productResult2s.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 > (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) && i <= (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) + k) {
                                    ff = (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) + 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 - (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 + 2)));
                                            } else if (products.get(0).getInsResult() == 0) {
                                                textRenderData.setText("不合格∑8" + index + ((i - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee)) / (angles + 2)));
                                            } else {
                                                textRenderData.setText("不判定∑8" + index + ((i - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee)) / (angles + 2)));
                                            }
                                        }
                                        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) {
                                            //端口
                                            if (j % 2 == 0) {
                                                try {
                                                    textRenderData.setText(result2s.get(0).getPort().split(",")[(j - 6) / 2 + ((i - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee)) / (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 - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee)) / (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 - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee)) / (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 - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee)) / (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 = productResult2s.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 > (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) && i <= (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) + k) {
                                    gg = (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) + 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 - (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 + ((i - (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff)) / (angles + 2)));
                                            } else if (products.get(0).getInsResult() == 0) {
                                                textRenderData.setText("不合格∑8" + index + ((i - (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff)) / (angles + 2)));
                                            } else {
                                                textRenderData.setText("不判定∑8" + index + ((i - (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff)) / (angles + 2)));
                                            }
                                        }
                                        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) {
                                            //端口
                                            if (j % 2 == 0) {
                                                try {
                                                    textRenderData.setText(result2s.get(0).getPort().split(",")[(j - 6) / 2 + ((i - (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff)) / (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 - (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff)) / (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 - (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff)) / (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 - (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff)) / (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 > (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) * portRow * often)) {
                                hh = (int) ((gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg) + (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 = productResult2s.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 + ((i - (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg) + (angles - 1)) / (angles + 1) - 1));
                                        } else if (products.get(0).getInsResult() == 0) {
                                            textRenderData.setText("不合格∑8" + index + ((i - (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg) + (angles - 1)) / (angles + 1) - 1));
                                        } else {
                                            textRenderData.setText("不判定∑8" + index + ((i - (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg) + (angles - 1)) / (angles + 1) - 1));
                                        }
                                    }
                                    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((i - (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg)) / portRow / (angles + 1)).getOften() + "∑6" + i + index);
                                    } else {
                                        //最差值
                                        String[] value = result2s.get((i - (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg)) / portRow / (angles + 2)).getValue().split("\\],\\[");
                                        String[] split = value[(i + (angles - 1)) % (angles + 1)].replaceAll("[\\[\\]\"]", "").split(",");
                                        try {
                                            textRenderData.setText(split[((j - 5) + ((i - (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg) - 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 > (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) + (angles + 1))) {
                                mm = ((hh==0?(gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg):hh) + (angles + 1));
                                if (itemSet.add("最大耦合度")) {
                                    index.getAndIncrement();
                                }
                                List<InsProduct> products = insProducts.stream().filter(insProduct -> insProduct.getInspectionItemSubclass().equals("最大耦合度")).collect(Collectors.toList());
                                List<InsProductResult2> result2s = productResult2s.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 - (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);
                                        } 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 - (hh==0?(gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg):hh)) % (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 > (mm == 0 ? (hh==0?(gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg):hh) : mm) && i <= ((mm == 0 ? (hh==0?(gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg):hh) : mm) + (angles + 1))) {
                                nn = (mm == 0 ? (hh==0?(gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg):hh) : mm) + (angles + 1);
                                if (itemSet.add("最小耦合度")) {
                                    index.getAndIncrement();
                                }
                                List<InsProduct> products = insProducts.stream().filter(insProduct -> insProduct.getInspectionItemSubclass().equals("最小耦合度")).collect(Collectors.toList());
                                List<InsProductResult2> result2s = productResult2s.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 - (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);
                                        } 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 - (mm == 0 ? (hh==0?(gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg):hh) : mm)) % (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 = productResult2s.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 > (nn == 0 ? (mm == 0 ? (hh==0?(gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg):hh) : mm) : nn) && i <= (nn == 0 ? (mm == 0 ? (hh==0?(gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg):hh) : mm) : nn) + k) {
                                    pp = (nn == 0 ? (mm == 0 ? (hh==0?(gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg):hh) : mm) : nn) + 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 - (nn == 0 ? (mm == 0 ? (hh==0?(gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg):hh) : mm) : nn)) % (angles + 1) == 1) {
                                            //频段
                                            textRenderData.setText("频段");
                                        } 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 - (nn == 0 ? (mm == 0 ? (hh==0?(gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg):hh) : mm) : nn)) % (angles + 1) == 1) {
                                            textRenderData.setText("/");
                                        } else {
                                            //结论
                                            if (products.get(0).getInsResult() == 1) {
                                                textRenderData.setText("合格∑8" + index + ((i - (nn == 0 ? (mm == 0 ? (hh==0?(gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg):hh) : mm) : nn)) / (angles + 2)));
                                            } else if (products.get(0).getInsResult() == 0) {
                                                textRenderData.setText("不合格∑8" + index + ((i - (nn == 0 ? (mm == 0 ? (hh==0?(gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg):hh) : mm) : nn)) / (angles + 2)));
                                            } else {
                                                textRenderData.setText("不判定∑8" + index + ((i - (nn == 0 ? (mm == 0 ? (hh==0?(gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg):hh) : mm) : nn)) / (angles + 2)));
                                            }
                                        }
                                        renderData.add(textRenderData);
                                        paragraphRenderData.setContents(renderData);
                                        paragraphRenderDataList.add(paragraphRenderData);
                                        cellRenderData.setParagraphs(paragraphRenderDataList);
                                        cells.add(cellRenderData);
                                    } else {
                                        //其余列
                                        if ((i - (nn == 0 ? (mm == 0 ? (hh==0?(gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg):hh) : mm) : nn)) % (angles + 1) == 1) {
                                            //频段
                                            try {
                                                textRenderData.setText(result2s.get(0).getPort().split(",")[(j - 5) + ((i - (nn == 0 ? (mm == 0 ? (hh==0?(gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg):hh) : mm) : nn)) / (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 - (nn == 0 ? (mm == 0 ? (hh==0?(gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg):hh) : mm) : nn)) / (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 = productResult2s.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 > (pp == 0 ? (nn == 0 ? (mm == 0 ? (hh==0?(gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg):hh) : mm) : nn) : pp)) {
                                    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 - (pp == 0 ? (nn == 0 ? (mm == 0 ? (hh==0?(gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg):hh) : mm) : nn) : pp)) % (angles + 1) == 1) {
                                            //频段
                                            textRenderData.setText("频段");
                                        } 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 - (pp == 0 ? (nn == 0 ? (mm == 0 ? (hh==0?(gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg):hh) : mm) : nn) : pp)) % (angles + 1) == 1) {
                                            textRenderData.setText("/");
                                        } else {
                                            //结论
                                            if (products.get(0).getInsResult() == 1) {
                                                textRenderData.setText("合格∑8" + index + ((i - (pp == 0 ? (nn == 0 ? (mm == 0 ? (hh==0?(gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg):hh) : mm) : nn) : pp)) / (angles + 2)));
                                            } else if (products.get(0).getInsResult() == 0) {
                                                textRenderData.setText("不合格∑8" + index + ((i - (pp == 0 ? (nn == 0 ? (mm == 0 ? (hh==0?(gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg):hh) : mm) : nn) : pp)) / (angles + 2)));
                                            } else {
                                                textRenderData.setText("不判定∑8" + index + ((i - (pp == 0 ? (nn == 0 ? (mm == 0 ? (hh==0?(gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg):hh) : mm) : nn) : pp)) / (angles + 2)));
                                            }
                                        }
                                        renderData.add(textRenderData);
                                        paragraphRenderData.setContents(renderData);
                                        paragraphRenderDataList.add(paragraphRenderData);
                                        cellRenderData.setParagraphs(paragraphRenderDataList);
                                        cells.add(cellRenderData);
                                    } else {
                                        //其余列
                                        if ((i - (pp == 0 ? (nn == 0 ? (mm == 0 ? (hh==0?(gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg):hh) : mm) : nn) : pp)) % (angles + 1) == 1) {
                                            //端口
                                            try {
                                                textRenderData.setText(result2s.get(0).getPort().split(",")[(j - 5) + ((i - (pp == 0 ? (nn == 0 ? (mm == 0 ? (hh==0?(gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg):hh) : mm) : nn) : pp)) / (angles + 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 - (pp == 0 ? (nn == 0 ? (mm == 0 ? (hh==0?(gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg):hh) : mm) : nn) : pp)) / (angles + 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> table = new HashMap<>();
            table.put("table", tableRenderData);
            tables.add(table);
            lable.getAndIncrement();
        });
        ZipSecureFile.setMinInflateRatio(0.0001);
        InputStream inputStream = this.getClass().getResourceAsStream("/static/word1.docx");
@@ -1967,7 +4377,11 @@
                InsOrderState orderState = insOrderStateMapper.selectById(insOrderUser.getInsOrderStateId());
                if (orderState.getLaboratory().equals("电路试验")) {
                    orderState.setNum(insOrderUser.getNum());
                    getWord1(insOrderUser.getTerm(), orderState, tables2);
                    if(!insOrder.getSampleType().equals("无源器件")){
                        getWord1(insOrderUser.getTerm(), orderState, tables2);
                    }else {
                        getWord2(insOrderUser.getTerm(), orderState, tables2);
                    }
                }
            }
        }
@@ -2329,25 +4743,24 @@
    }
    //电路报告用于总报告的方法
    //电路报告用于总报告的方法(天线)
    private void getWord1(String term, InsOrderState insOrderState,List<Map<String, Object>> tables2) {
        AtomicInteger lable = new AtomicInteger(1);
        AtomicInteger index = new AtomicInteger();
        String title = term + "电路参数";
        InsSample insSample = insSampleMapper.selectById(insOrderState.getInsSampleId());
            //查询项目
            List<InsProduct> insProducts = insProductMapper.selectList(Wrappers.<InsProduct>lambdaQuery()
        //查询项目
        List<InsProduct> insProducts = insProductMapper.selectList(Wrappers.<InsProduct>lambdaQuery()
                    .eq(InsProduct::getState,1)
                    .eq(InsProduct::getInsSampleId, insSample.getId())
                    .eq(InsProduct::getSonLaboratory, "电路试验"));
            //获取最大端口数量,角度数量,频段数量
            List<InsProductResult2> insProductResult2s = insProductResult2Mapper.selectList(Wrappers.<InsProductResult2>lambdaQuery()
        //获取最大端口数量,角度数量,频段数量
        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 -> {
        //按照频段分表(查询所有频段)
        List<String> frequencys = insProductResult2s.stream().map(InsProductResult2::getFrequency).distinct().collect(Collectors.toList());
        frequencys.forEach(s -> {
                int ports = 0;//端口数
                int angles = 0;//角度数
                List<InsProductResult2> productResult2s = insProductResult2s.stream().filter(insProductResult2 -> insProductResult2.getFrequency().equals(s)).collect(Collectors.toList());
@@ -2376,20 +4789,43 @@
                    if (inspectionItemSubclass.contains("同极化隔离度")) {
                        aa += 1 * portRow;
                    }
                    if (inspectionItemSubclass.contains("同列隔离度")) {
                        aa += 1 * portRow;
                    }
                    if (inspectionItemSubclass.contains("端口间隔离度")) {
                        aa += 1 * portRow;
                    }
                    if (inspectionItemSubclass.contains("异极化隔离度")) {
                        aa += 1 * portRow;
                    }
                    if (inspectionItemSubclass.contains("互调")) {
                        aa += (angles + 1) * portRow * often;
                    }
                } else {
                }
                else {
                    if (inspectionItemSubclass.contains("电压驻波比")) {
                        aa += (angles + 1) * portRow;
                    }
                    if (inspectionItemSubclass.contains("同极化隔离度")) {
                        List<InsProductResult2> result2s = productResult2s.stream().filter(insProductResult2 ->
                                insProductMapper.selectById(insProductResult2.getInsProductId())
                                        .getInspectionItemSubclass().equals("同极化隔离度")&& insProductResult2.getFrequency().equals(s)
                                        .getInspectionItemSubclass().equals("同极化隔离度") && insProductResult2.getFrequency().equals(s)
                        ).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 = productResult2s.stream().filter(insProductResult2 ->
                                insProductMapper.selectById(insProductResult2.getInsProductId())
                                        .getInspectionItemSubclass().equals("同列隔离度") && insProductResult2.getFrequency().equals(s)
                        ).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 = productResult2s.stream().filter(insProductResult2 ->
                                insProductMapper.selectById(insProductResult2.getInsProductId())
                                        .getInspectionItemSubclass().equals("端口间隔离度") && insProductResult2.getFrequency().equals(s)
                        ).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);
@@ -2397,7 +4833,7 @@
                    if (inspectionItemSubclass.contains("异极化隔离度")) {
                        List<InsProductResult2> result2s = productResult2s.stream().filter(insProductResult2 ->
                                insProductMapper.selectById(insProductResult2.getInsProductId())
                                        .getInspectionItemSubclass().equals("异极化隔离度")&& insProductResult2.getFrequency().equals(s)
                                        .getInspectionItemSubclass().equals("异极化隔离度") && insProductResult2.getFrequency().equals(s)
                        ).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);
@@ -2437,6 +4873,8 @@
                int gg = 0;
                int hh = 0;
                int mm = 0;
                int nn = 0;
                int pp = 0;
                //表格的行数
                for (int i = 0; i <= aa; i++) {
                    RowRenderData rowRenderData = new RowRenderData();
@@ -2665,18 +5103,18 @@
                                        cells.add(cellRenderData);
                                    }
                                }
                                if (inspectionItemSubclass.contains("异极化隔离度") && i > (dd == 0 ? cc : dd) && i <= (dd == 0 ? cc : dd) + portRow) {
                                if (inspectionItemSubclass.contains("同列隔离度") && i > (dd == 0 ? cc : dd) && i <= (dd == 0 ? cc : dd) + portRow) {
                                    ee = (dd == 0 ? cc : dd) + portRow;
                                    if (itemSet.add("异极化隔离度")) {
                                    if (itemSet.add("同列隔离度")) {
                                        index.getAndIncrement();
                                    }
                                    List<InsProduct> products = insProducts.stream()
                                            .filter(insProduct -> insProduct.getInspectionItemSubclass().equals("异极化隔离度"))
                                            .filter(insProduct -> insProduct.getInspectionItemSubclass().equals("同列隔离度"))
                                            .collect(Collectors.toList());
                                    List<InsProductResult2> result2s = productResult2s.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);
@@ -2687,7 +5125,7 @@
                                        cells.add(cellRenderData);
                                    } else if (j == 1) {
                                        //第二列
                                        textRenderData.setText("异极化隔离度∑2" + index);
                                        textRenderData.setText("隔离度∑2" + index);
                                        renderData.add(textRenderData);
                                        paragraphRenderData.setContents(renderData);
                                        paragraphRenderDataList.add(paragraphRenderData);
@@ -2757,7 +5195,191 @@
                                        cells.add(cellRenderData);
                                    }
                                }
                                if (inspectionItemSubclass.contains("互调") && i > (ee == 0 ? ((dd == 0 ? cc : dd)) : ee)) {
                                if (inspectionItemSubclass.contains("端口间隔离度") && i > (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) && i <= (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) + portRow) {
                                    ff = (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) + portRow;
                                    if (itemSet.add("端口间隔离度")) {
                                        index.getAndIncrement();
                                    }
                                    List<InsProduct> products = insProducts.stream()
                                            .filter(insProduct -> insProduct.getInspectionItemSubclass().equals("端口间隔离度"))
                                            .collect(Collectors.toList());
                                    List<InsProductResult2> result2s = productResult2s.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 - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) - 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 - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) - 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 >(ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff)&& i <= (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) + portRow) {
                                    gg = (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) + portRow;
                                    if (itemSet.add("异极化隔离度")) {
                                        index.getAndIncrement();
                                    }
                                    List<InsProduct> products = insProducts.stream()
                                            .filter(insProduct -> insProduct.getInspectionItemSubclass().equals("异极化隔离度"))
                                            .collect(Collectors.toList());
                                    List<InsProductResult2> result2s = productResult2s.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 - (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) - 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 - (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) - 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 > (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg)) {
                                    if (itemSet.add("互调")) {
                                        index.getAndIncrement();
                                    }
@@ -2802,10 +5424,10 @@
                                        cells.add(cellRenderData);
                                    } else if (j == 4) {
                                        //第五列
                                        if ((i - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee)) % (angles + 1) == 1) {
                                        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 - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) - 2) % (angles + 1)]);
                                            textRenderData.setText(result2s.get(0).getAngle().split(",")[(i - (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg) - 2) % (angles + 1)]);
                                        }
                                        renderData.add(textRenderData);
                                        paragraphRenderData.setContents(renderData);
@@ -2814,15 +5436,15 @@
                                        cells.add(cellRenderData);
                                    } else if (j == bb - 1) {
                                        //最后一列
                                        if ((i - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee)) % (angles + 1) == 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 + ((i - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) + (angles - 1)) / (angles + 1) - 1));
                                                textRenderData.setText("合格∑8" + index + ((i - (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg) + (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));
                                                textRenderData.setText("不合格∑8" + index + ((i - (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg) + (angles - 1)) / (angles + 1) - 1));
                                            } else {
                                                textRenderData.setText("不判定∑8" + index + ((i - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) + (angles - 1)) / (angles + 1) - 1));
                                                textRenderData.setText("不判定∑8" + index + ((i - (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg) + (angles - 1)) / (angles + 1) - 1));
                                            }
                                        }
                                        renderData.add(textRenderData);
@@ -2831,13 +5453,13 @@
                                        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);
                                        if ((i - (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg)) % (angles + 1) == 1) {
                                            textRenderData.setText(result2s.get((i - (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg)) / 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(",");
                                            String[] value = result2s.get((i - (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg)) / portRow / (angles + 2)).getValue().split("\\],\\[");
                                            String[] split = value[(i - (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg) - 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)))]);
                                                textRenderData.setText(split[((j - 5) + ((i - (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg) - 1) / (angles + 1) % portRow) * (Math.min(ports, 8)))]);
                                            } catch (Exception e) {
                                                textRenderData.setText("");
                                            }
@@ -3075,8 +5697,8 @@
                                        }
                                    }
                                }
                                if (inspectionItemSubclass.contains("异极化隔离度")) {
                                    List<InsProduct> products = insProducts.stream().filter(insProduct -> insProduct.getInspectionItemSubclass().equals("异极化隔离度")).collect(Collectors.toList());
                                if (inspectionItemSubclass.contains("同列隔离度")) {
                                    List<InsProduct> products = insProducts.stream().filter(insProduct -> insProduct.getInspectionItemSubclass().equals("同列隔离度")).collect(Collectors.toList());
                                    List<InsProductResult2> result2s = productResult2s.stream()
                                            .filter(insProductResult2 -> insProductResult2.getFrequency().equals(s) && insProductResult2.getInsProductId().equals(products.get(0).getId()))
                                            .collect(Collectors.toList());
@@ -3085,10 +5707,10 @@
                                    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("异极化隔离度")) {
                                        if (itemSet.add("同列隔离度")) {
                                            index.getAndIncrement();
                                        }
                                        //异极化隔离度所在行
                                        //隔离度所在行
                                        if (j == 0) {
                                            //第一列
                                            textRenderData.setText(index + "∑1" + index);
@@ -3099,7 +5721,7 @@
                                            cells.add(cellRenderData);
                                        } else if (j == 1) {
                                            //第二列
                                            textRenderData.setText("异极化隔离度∑2" + index);
                                            textRenderData.setText("隔离度∑2" + index);
                                            renderData.add(textRenderData);
                                            paragraphRenderData.setContents(renderData);
                                            paragraphRenderDataList.add(paragraphRenderData);
@@ -3171,6 +5793,7 @@
                                                        textRenderData.setText("");
                                                    }
                                                }
                                            } else {
                                                //最差值
                                                String[] value = result2s.get(0).getValue().split("\\],\\[");
@@ -3197,8 +5820,253 @@
                                        }
                                    }
                                }
                                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 (inspectionItemSubclass.contains("端口间隔离度")) {
                                    List<InsProduct> products = insProducts.stream().filter(insProduct -> insProduct.getInspectionItemSubclass().equals("端口间隔离度")).collect(Collectors.toList());
                                    List<InsProductResult2> result2s = productResult2s.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 > (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) && i <= (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) + k) {
                                        ff = (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) + 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 - (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 + 2)));
                                                } else if (products.get(0).getInsResult() == 0) {
                                                    textRenderData.setText("不合格∑8" + index + ((i - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee)) / (angles + 2)));
                                                } else {
                                                    textRenderData.setText("不判定∑8" + index + ((i - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee)) / (angles + 2)));
                                                }
                                            }
                                            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) {
                                                //端口
                                                if (j % 2 == 0) {
                                                    try {
                                                        textRenderData.setText(result2s.get(0).getPort().split(",")[(j - 6) / 2 + ((i - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee)) / (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 - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee)) / (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 - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee)) / (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 - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee)) / (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 = productResult2s.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 > (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) && i <= (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) + k) {
                                        gg = (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) + 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 - (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 + ((i - (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff)) / (angles + 2)));
                                                } else if (products.get(0).getInsResult() == 0) {
                                                    textRenderData.setText("不合格∑8" + index + ((i - (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff)) / (angles + 2)));
                                                } else {
                                                    textRenderData.setText("不判定∑8" + index + ((i - (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff)) / (angles + 2)));
                                                }
                                            }
                                            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) {
                                                //端口
                                                if (j % 2 == 0) {
                                                    try {
                                                        textRenderData.setText(result2s.get(0).getPort().split(",")[(j - 6) / 2 + ((i - (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff)) / (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 - (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff)) / (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 - (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff)) / (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 - (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff)) / (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 > (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) * portRow * often)) {
                                    hh = (int) ((gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg) + (angles + 1) * portRow * often);
                                    if (itemSet.add("互调")) {
                                        index.getAndIncrement();
                                    }
@@ -3241,7 +6109,7 @@
                                        cells.add(cellRenderData);
                                    } else if (j == 4) {
                                        //第五列
                                        if ((i - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee)) % (angles + 1) == 1) {
                                        if ((i - (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg)) % (angles + 1) == 1) {
                                            //角度
                                            textRenderData.setText("角度");
                                        } else {
@@ -3255,16 +6123,16 @@
                                        cells.add(cellRenderData);
                                    } else if (j == bb - 1) {
                                        //最后一列
                                        if ((i - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee)) % (angles + 1) == 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 + ((i - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) + (angles - 1)) / (angles + 1) - 1));
                                                textRenderData.setText("合格∑8" + index + ((i - (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg) + (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));
                                                textRenderData.setText("不合格∑8" + index + ((i - (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg) + (angles - 1)) / (angles + 1) - 1));
                                            } else {
                                                textRenderData.setText("不判定∑8" + index + ((i - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) + (angles - 1)) / (angles + 1) - 1));
                                                textRenderData.setText("不判定∑8" + index + ((i - (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg) + (angles - 1)) / (angles + 1) - 1));
                                            }
                                        }
                                        renderData.add(textRenderData);
@@ -3274,15 +6142,15 @@
                                        cells.add(cellRenderData);
                                    } else {
                                        //其余列
                                        if ((i - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee)) % (angles + 1) == 1) {
                                        if ((i - (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg)) % (angles + 1) == 1) {
                                            //频点
                                            textRenderData.setText(result2s.get((i - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee)) / portRow / (angles + 1)).getOften() + "∑6" + i + index);
                                            textRenderData.setText(result2s.get((i - (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg)) / 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[] value = result2s.get((i - (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg)) / 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 - (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg) - 1) / (angles + 1) % portRow) * (Math.min(ports, 8)))]);
                                            } catch (Exception e) {
                                                textRenderData.setText("");
                                            }
@@ -3294,8 +6162,8 @@
                                        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 (inspectionItemSubclass.contains("最大耦合度") && 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) + (angles + 1))) {
                                    mm = ((hh==0?(gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg):hh) + (angles + 1));
                                    if (itemSet.add("最大耦合度")) {
                                        index.getAndIncrement();
                                    }
@@ -3338,7 +6206,7 @@
                                        cells.add(cellRenderData);
                                    } else if (j == 4) {
                                        //第五列
                                        if ((i - (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff)) % (angles + 1) == 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 {
@@ -3352,7 +6220,7 @@
                                        cells.add(cellRenderData);
                                    } else if (j == bb - 1) {
                                        //最后一列
                                        if ((i - (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff)) % (angles + 1) == 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 {
                                            //结论
@@ -3371,7 +6239,7 @@
                                        cells.add(cellRenderData);
                                    } else {
                                        //其余列
                                        if ((i - (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff)) % (angles + 1) == 1) {
                                        if ((i - (hh==0?(gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg):hh)) % (angles + 1) == 1) {
                                            //频点
                                            textRenderData.setText(result2s.get(0).getOften() + "∑6" + index);
                                        } else {
@@ -3387,8 +6255,8 @@
                                        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 (inspectionItemSubclass.contains("最小耦合度") && i > (mm == 0 ? (hh==0?(gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg):hh) : mm) && i <= ((mm == 0 ? (hh==0?(gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg):hh) : mm) + (angles + 1))) {
                                    nn = (mm == 0 ? (hh==0?(gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg):hh) : mm) + (angles + 1);
                                    if (itemSet.add("最小耦合度")) {
                                        index.getAndIncrement();
                                    }
@@ -3431,7 +6299,7 @@
                                        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) {
                                        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 {
@@ -3445,7 +6313,7 @@
                                        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) {
                                        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 {
                                            //结论
@@ -3464,7 +6332,7 @@
                                        cells.add(cellRenderData);
                                    } else {
                                        //其余列
                                        if ((i - (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg)) % (angles + 1) == 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(result2s.get(0).getOften() + "∑6" + index);
                                        } else {
@@ -3488,8 +6356,8 @@
                                    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 (i > (nn == 0 ? (mm == 0 ? (hh==0?(gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg):hh) : mm) : nn) && i <= (nn == 0 ? (mm == 0 ? (hh==0?(gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg):hh) : mm) : nn) + k) {
                                        pp = (nn == 0 ? (mm == 0 ? (hh==0?(gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg):hh) : mm) : nn) + k;
                                        if (itemSet.add("幅度偏差")) {
                                            index.getAndIncrement();
                                        }
@@ -3528,7 +6396,7 @@
                                            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) {
                                            if ((i - (nn == 0 ? (mm == 0 ? (hh==0?(gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg):hh) : mm) : nn)) % (angles + 1) == 1) {
                                                //频段
                                                textRenderData.setText("频段");
                                            } else {
@@ -3542,16 +6410,16 @@
                                            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) {
                                            if ((i - (nn == 0 ? (mm == 0 ? (hh==0?(gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg):hh) : mm) : nn)) % (angles + 1) == 1) {
                                                textRenderData.setText("/");
                                            } 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)));
                                                    textRenderData.setText("合格∑8" + index + ((i - (nn == 0 ? (mm == 0 ? (hh==0?(gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg):hh) : mm) : nn)) / (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)));
                                                    textRenderData.setText("不合格∑8" + index + ((i - (nn == 0 ? (mm == 0 ? (hh==0?(gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg):hh) : mm) : nn)) / (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)));
                                                    textRenderData.setText("不判定∑8" + index + ((i - (nn == 0 ? (mm == 0 ? (hh==0?(gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg):hh) : mm) : nn)) / (angles + 2)));
                                                }
                                            }
                                            renderData.add(textRenderData);
@@ -3561,10 +6429,10 @@
                                            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) {
                                            if ((i - (nn == 0 ? (mm == 0 ? (hh==0?(gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg):hh) : mm) : nn)) % (angles + 1) == 1) {
                                                //频段
                                                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)]);
                                                    textRenderData.setText(result2s.get(0).getPort().split(",")[(j - 5) + ((i - (nn == 0 ? (mm == 0 ? (hh==0?(gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg):hh) : mm) : nn)) / (angles + 2)) * Math.min(length, 8)]);
                                                } catch (Exception e) {
                                                    textRenderData.setText("");
                                                }
@@ -3573,7 +6441,7 @@
                                                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)]);
                                                    textRenderData.setText(split[(j - 5) + ((i - (nn == 0 ? (mm == 0 ? (hh==0?(gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg):hh) : mm) : nn)) / (angles + 2)) * Math.min(length, 8)]);
                                                } catch (Exception e) {
                                                    textRenderData.setText("");
                                                }
@@ -3594,7 +6462,7 @@
                                    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 (i > (pp == 0 ? (nn == 0 ? (mm == 0 ? (hh==0?(gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg):hh) : mm) : nn) : pp)) {
                                        if (itemSet.add("最大相位偏差")) {
                                            index.getAndIncrement();
                                        }
@@ -3633,7 +6501,7 @@
                                            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) {
                                            if ((i - (pp == 0 ? (nn == 0 ? (mm == 0 ? (hh==0?(gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg):hh) : mm) : nn) : pp)) % (angles + 1) == 1) {
                                                //频段
                                                textRenderData.setText("频段");
                                            } else {
@@ -3647,16 +6515,16 @@
                                            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) {
                                            if ((i - (pp == 0 ? (nn == 0 ? (mm == 0 ? (hh==0?(gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg):hh) : mm) : nn) : pp)) % (angles + 1) == 1) {
                                                textRenderData.setText("/");
                                            } 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)));
                                                    textRenderData.setText("合格∑8" + index + ((i - (pp == 0 ? (nn == 0 ? (mm == 0 ? (hh==0?(gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg):hh) : mm) : nn) : pp)) / (angles + 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)));
                                                    textRenderData.setText("不合格∑8" + index + ((i - (pp == 0 ? (nn == 0 ? (mm == 0 ? (hh==0?(gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg):hh) : mm) : nn) : pp)) / (angles + 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)));
                                                    textRenderData.setText("不判定∑8" + index + ((i - (pp == 0 ? (nn == 0 ? (mm == 0 ? (hh==0?(gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg):hh) : mm) : nn) : pp)) / (angles + 2)));
                                                }
                                            }
                                            renderData.add(textRenderData);
@@ -3666,10 +6534,10 @@
                                            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) {
                                            if ((i - (pp == 0 ? (nn == 0 ? (mm == 0 ? (hh==0?(gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg):hh) : mm) : nn) : pp)) % (angles + 1) == 1) {
                                                //端口
                                                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)]);
                                                    textRenderData.setText(result2s.get(0).getPort().split(",")[(j - 5) + ((i - (pp == 0 ? (nn == 0 ? (mm == 0 ? (hh==0?(gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg):hh) : mm) : nn) : pp)) / (angles + 2)) * Math.min(length, 8)]);
                                                } catch (Exception e) {
                                                    textRenderData.setText("");
                                                }
@@ -3678,7 +6546,7 @@
                                                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)]);
                                                    textRenderData.setText(split[(j - 5) + ((i - (pp == 0 ? (nn == 0 ? (mm == 0 ? (hh==0?(gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg):hh) : mm) : nn) : pp)) / (angles + 2)) * Math.min(length, 8)]);
                                                } catch (Exception e) {
                                                    textRenderData.setText("");
                                                }
@@ -3727,6 +6595,11 @@
            });
    }
    //电路报告用于总报告的方法(无源器件)
    private void getWord2(String term, InsOrderState insOrderState,List<Map<String, Object>> tables2){
    }
    // 水平合并单元格
    private static void mergeCellsHorizontally(XWPFTable table, int row, int fromCol, int toCol) {
        for (int i = fromCol; i <= toCol; i++) {