From a5b1bad21ba279ade3954852a5e281e9086042f0 Mon Sep 17 00:00:00 2001 From: zss <zss@example.com> Date: 星期二, 26 十一月 2024 15:22:52 +0800 Subject: [PATCH] 前端联调修改2.0 --- inspect-server/src/main/java/com/yuanchu/mom/utils/WordUtils.java | 1501 ++++++++++++++++++++++++++++----------------------------- 1 files changed, 743 insertions(+), 758 deletions(-) diff --git a/inspect-server/src/main/java/com/yuanchu/mom/utils/WordUtils.java b/inspect-server/src/main/java/com/yuanchu/mom/utils/WordUtils.java index bceb7d0..dc22aae 100644 --- a/inspect-server/src/main/java/com/yuanchu/mom/utils/WordUtils.java +++ b/inspect-server/src/main/java/com/yuanchu/mom/utils/WordUtils.java @@ -1,5 +1,6 @@ package com.yuanchu.mom.utils; +import cn.hutool.core.lang.UUID; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.toolkit.CollectionUtils; @@ -12,6 +13,7 @@ import com.deepoove.poi.data.style.*; import com.deepoove.poi.util.TableTools; import com.yuanchu.mom.dto.InsReportDto1; +import com.yuanchu.mom.dto.InsReportDto2; import com.yuanchu.mom.dto.SampleProductDto; import com.yuanchu.mom.exception.ErrorException; import com.yuanchu.mom.mapper.*; @@ -25,6 +27,7 @@ import org.openxmlformats.schemas.wordprocessingml.x2006.main.STMerge; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Component; + import javax.annotation.Resource; import java.io.*; import java.nio.file.Files; @@ -87,6 +90,9 @@ @Resource InsSampleUserMapper insSampleUserMapper; + @Resource + GiveCode giveCode; + //鐢熸垚绔欑偣鐢佃矾璇曢獙鎶ュ憡 public void generateWord(String term, InsOrderState insOrderState) { @@ -96,255 +102,635 @@ List<Map<String, Object>> tables = new ArrayList<>(); //鏌ヨ璁㈠崟 InsOrder insOrder = insOrderMapper.selectById(insOrderState.getInsOrderId()); - //鏌ヨ涓旇繃婊ゅ嚭鏈夌數璺瘯楠岀殑鏍峰搧 - List<InsSample> insSamples = insSampleMapper.selectSample(insOrderState.getInsOrderId()); - insSamples.forEach(insSample -> { - //鏌ヨ椤圭洰 - List<InsProduct> insProducts = insProductMapper.selectList(Wrappers.<InsProduct>lambdaQuery() - .eq(InsProduct::getInsSampleId, insSample.getId()) - .eq(InsProduct::getSonLaboratory, "鐢佃矾璇曢獙")); - //鑾峰彇鏈�澶х鍙f暟閲�,瑙掑害鏁伴噺,棰戞鏁伴噺 - List<InsProductResult2> insProductResult2s = insProductResult2Mapper.selectList(Wrappers.<InsProductResult2>lambdaQuery() - .eq(InsProductResult2::getNum, insOrderState.getNum()) - .in(InsProductResult2::getInsProductId, insProducts.stream().map(InsProduct::getId).collect(Collectors.toList()))); - //鎸夌収棰戞鍒嗚〃(鏌ヨ鎵�鏈夐娈�) - List<String> frequencys = insProductResult2s.stream().map(InsProductResult2::getFrequency).distinct().collect(Collectors.toList()); - frequencys.forEach(s -> { - int ports = 0;//绔彛鏁� - int angles = 0;//瑙掑害鏁� - for (InsProductResult2 insProductResult2 : insProductResult2s) { - if (insProductMapper.selectById(insProductResult2.getInsProductId()).getInspectionItemSubclass().equals("鐢靛帇椹绘尝姣�") && insProductResult2.getPort().split(",").length > ports) { - ports = insProductResult2.getPort().split(",").length; - } - if (insProductResult2.getAngle().split(",").length > angles) { - angles = insProductResult2.getAngle().split(",").length; - } + //鏌ヨ鏍峰搧 + InsSample insSample = insSampleMapper.selectById(insOrderState.getInsSampleId()); + //鏌ヨ椤圭洰 + List<InsProduct> insProducts = insProductMapper.selectList(Wrappers.<InsProduct>lambdaQuery() + .eq(InsProduct::getInsSampleId, insSample.getId()) + .eq(InsProduct::getSonLaboratory, "鐢佃矾璇曢獙")); + //鑾峰彇鏈�澶х鍙f暟閲�,瑙掑害鏁伴噺,棰戞鏁伴噺 + List<InsProductResult2> insProductResult2s = insProductResult2Mapper.selectList(Wrappers.<InsProductResult2>lambdaQuery() + .eq(InsProductResult2::getNum, insOrderState.getNum()) + .in(InsProductResult2::getInsProductId, insProducts.stream().map(InsProduct::getId).collect(Collectors.toList()))); + //鎸夌収棰戞鍒嗚〃(鏌ヨ鎵�鏈夐娈�) + List<String> frequencys = insProductResult2s.stream().map(InsProductResult2::getFrequency).distinct().collect(Collectors.toList()); + frequencys.forEach(s -> { + int ports = 0;//绔彛鏁� + int angles = 0;//瑙掑害鏁� + for (InsProductResult2 insProductResult2 : insProductResult2s) { + if (insProductMapper.selectById(insProductResult2.getInsProductId()).getInspectionItemSubclass().equals("鐢靛帇椹绘尝姣�") && insProductResult2.getPort().split(",").length > ports) { + ports = insProductResult2.getPort().split(",").length; } - //棰戠偣鏁� - long often = insProductResult2s.stream().filter(insProductResult2 -> insProductResult2.getFrequency().equals(s)) - .filter(insProductResult2 -> - insProductMapper.selectById(insProductResult2.getInsProductId()).getInspectionItemSubclass().equals("浜掕皟") - ).filter(insProductResult2 -> ObjectUtils.isNotEmpty(insProductResult2.getOften())).distinct().count(); - List<String> inspectionItemSubclass = insProducts.stream().map(InsProduct::getInspectionItemSubclass).collect(Collectors.toList()); - //琛屾暟 - int aa = 0; - int portRow = ports % 8 == 0 ? ports / 8 : ports / 8 + 1; - //鍏堝垽鏂槸1绠�鍗曠増杩樻槸0澶嶆潅鐗� - if (insOrderState.getVersion() == 1) { - if (inspectionItemSubclass.contains("鐢靛帇椹绘尝姣�")) { - aa += 2 * portRow; - } - if (inspectionItemSubclass.contains("鍚屾瀬鍖栭殧绂诲害")) { - aa += 1 * portRow; - } - if (inspectionItemSubclass.contains("寮傛瀬鍖栭殧绂诲害")) { - aa += 1 * portRow; - } - if (inspectionItemSubclass.contains("浜掕皟")) { - aa += (angles + 1) * portRow * often; - } - } else { - if (inspectionItemSubclass.contains("鐢靛帇椹绘尝姣�")) { - aa += (angles + 1) * portRow; - } - if (inspectionItemSubclass.contains("鍚屾瀬鍖栭殧绂诲害")) { - List<InsProductResult2> result2s = insProductResult2s.stream().filter(insProductResult2 -> - insProductMapper.selectById(insProductResult2.getInsProductId()) - .getInspectionItemSubclass().equals("鍚屾瀬鍖栭殧绂诲害") - ).collect(Collectors.toList()); - int length = result2s.get(0).getPort().split(",").length; - aa += (angles + 1) * (length % (ports > 8 ? 4 : (ports + 1) / 2) == 0 ? length / (ports > 8 ? 4 : (ports + 1) / 2) : length / (ports > 8 ? 4 : (ports + 1) / 2) + 1); - } - if (inspectionItemSubclass.contains("寮傛瀬鍖栭殧绂诲害")) { - List<InsProductResult2> result2s = insProductResult2s.stream().filter(insProductResult2 -> - insProductMapper.selectById(insProductResult2.getInsProductId()) - .getInspectionItemSubclass().equals("寮傛瀬鍖栭殧绂诲害") - ).collect(Collectors.toList()); - int length = result2s.get(0).getPort().split(",").length; - aa += (angles + 1) * (length % (ports > 8 ? 4 : (ports + 1) / 2) == 0 ? length / (ports > 8 ? 4 : (ports + 1) / 2) : length / (ports > 8 ? 4 : (ports + 1) / 2) + 1); - } - if (inspectionItemSubclass.contains("浜掕皟")) { - aa += (angles + 1) * portRow * often; - } - if (inspectionItemSubclass.contains("鏈�澶ц�﹀悎搴�")) { - aa += (angles + 1); - } - if (inspectionItemSubclass.contains("鏈�灏忚�﹀悎搴�")) { - aa += (angles + 1); - } - if (inspectionItemSubclass.contains("骞呭害鍋忓樊")) { - List<InsProductResult2> result2s = insProductResult2s.stream().filter(insProductResult2 -> - insProductMapper.selectById(insProductResult2.getInsProductId()) - .getInspectionItemSubclass().equals("骞呭害鍋忓樊") - ).collect(Collectors.toList()); - int length = result2s.get(0).getPort().split(",").length; - aa += (angles + 1) * (length % 8 == 0 ? length / 8 : length / 8 + 1); - } - if (inspectionItemSubclass.contains("鏈�澶х浉浣嶅亸宸�")) { - List<InsProductResult2> result2s = insProductResult2s.stream().filter(insProductResult2 -> - insProductMapper.selectById(insProductResult2.getInsProductId()) - .getInspectionItemSubclass().equals("鏈�澶х浉浣嶅亸宸�") - ).collect(Collectors.toList()); - int length = result2s.get(0).getPort().split(",").length; - aa += (angles + 1) * (length % 8 == 0 ? length / 8 : length / 8 + 1); - } + if (insProductResult2.getAngle().split(",").length > angles) { + angles = insProductResult2.getAngle().split(",").length; } - List<RowRenderData> rows = new ArrayList<>(); - Set<String> itemSet = new HashSet<>(); - int cc = 0; - int dd = 0; - int ee = 0; - int ff = 0; - int gg = 0; - int hh = 0; - int mm = 0; - //琛ㄦ牸鐨勮鏁� - for (int i = 0; i <= aa; i++) { - RowRenderData rowRenderData = new RowRenderData(); - RowStyle rowStyle = new RowStyle(); - rowStyle.setHeight(40); - rowRenderData.setRowStyle(rowStyle); - List<CellRenderData> cells = new ArrayList<>(); - //琛ㄦ牸鐨勫垪鏁� - int bb = ports > 8 ? 14 : ports + 6; - for (int j = 0; j < bb; j++) { - CellRenderData cellRenderData = new CellRenderData(); - CellStyle cellStyle = new CellStyle(); - cellStyle.setVertAlign(XWPFTableCell.XWPFVertAlign.CENTER); - cellRenderData.setCellStyle(cellStyle); - List<ParagraphRenderData> paragraphRenderDataList = new ArrayList<>(); - ParagraphRenderData paragraphRenderData = new ParagraphRenderData(); - ParagraphStyle paragraphStyle = new ParagraphStyle(); - paragraphStyle.setAlign(ParagraphAlignment.CENTER); - paragraphRenderData.setParagraphStyle(paragraphStyle); - List<RenderData> renderData = new ArrayList<>(); - TextRenderData textRenderData = new TextRenderData(); - Style style = new Style(); - style.setFontFamily("瀹嬩綋"); - style.setColor("000000"); - textRenderData.setStyle(style); - if (i == 0) { - //绗竴琛� - textRenderData.setText("棰戞锛�" + s + "鈭�0" + lable); - renderData.add(textRenderData); - paragraphRenderData.setContents(renderData); - paragraphRenderDataList.add(paragraphRenderData); - cellRenderData.setParagraphs(paragraphRenderDataList); - cells.add(cellRenderData); - } else { - if (insOrderState.getVersion() == 1) { - //闈炵數璋冪増鏈�(绠�鍗曠増) - if (inspectionItemSubclass.contains("鐢靛帇椹绘尝姣�") && i <= 2 * portRow) { - cc = 2 * portRow; - if (itemSet.add("鐢靛帇椹绘尝姣�")) { - index.getAndIncrement(); - } - List<InsProduct> products = insProducts.stream().filter(insProduct -> insProduct.getInspectionItemSubclass().equals("鐢靛帇椹绘尝姣�")).collect(Collectors.toList()); - List<InsProductResult2> result2s = insProductResult2s.stream() - .filter(insProductResult2 -> insProductResult2.getFrequency().equals(s) && insProductResult2.getInsProductId().equals(products.get(0).getId())) - .collect(Collectors.toList()); - //鐢靛帇椹绘尝姣旀墍鍦ㄨ - if (j == 0) { - //绗竴鍒� - textRenderData.setText(index + "鈭�1" + index); - renderData.add(textRenderData); - paragraphRenderData.setContents(renderData); - paragraphRenderDataList.add(paragraphRenderData); - cellRenderData.setParagraphs(paragraphRenderDataList); - cells.add(cellRenderData); - } else if (j == 1) { - //绗簩鍒� - textRenderData.setText("鐢靛帇椹绘尝姣斺垜2" + index); - renderData.add(textRenderData); - paragraphRenderData.setContents(renderData); - paragraphRenderDataList.add(paragraphRenderData); - cellRenderData.setParagraphs(paragraphRenderDataList); - cells.add(cellRenderData); - } else if (j == 2) { - //绗笁鍒� - textRenderData.setText(products.get(0).getUnit() + "鈭�3" + index); - renderData.add(textRenderData); - paragraphRenderData.setContents(renderData); - paragraphRenderDataList.add(paragraphRenderData); - cellRenderData.setParagraphs(paragraphRenderDataList); - cells.add(cellRenderData); - } else if (j == 3) { - //绗洓鍒� - textRenderData.setText(products.get(0).getAsk() + "鈭�4" + index); - renderData.add(textRenderData); - paragraphRenderData.setContents(renderData); - paragraphRenderDataList.add(paragraphRenderData); - cellRenderData.setParagraphs(paragraphRenderDataList); - cells.add(cellRenderData); - } else if (j == 4) { - //绗簲鍒� - if (i % 2 == 0) { - //鏈�宸�� - textRenderData.setText("鏈�宸��"); - } else { - //绔彛 - textRenderData.setText("绔彛"); - } - renderData.add(textRenderData); - paragraphRenderData.setContents(renderData); - paragraphRenderDataList.add(paragraphRenderData); - cellRenderData.setParagraphs(paragraphRenderDataList); - cells.add(cellRenderData); - } else if (j == bb - 1) { - //鏈�鍚庝竴鍒� - if (i % 2 == 0) { - //缁撹 - if (products.get(0).getInsResult() == 1) { - textRenderData.setText("鍚堟牸"); - } else if (products.get(0).getInsResult() == 0) { - textRenderData.setText("涓嶅悎鏍�"); - } else { - textRenderData.setText("涓嶅垽瀹�"); - } - } else { - textRenderData.setText("/"); - } - renderData.add(textRenderData); - paragraphRenderData.setContents(renderData); - paragraphRenderDataList.add(paragraphRenderData); - cellRenderData.setParagraphs(paragraphRenderDataList); - cells.add(cellRenderData); - } else { - //鍏朵綑鍒� - if (i % 2 == 0) { - //鏈�宸�� - String value = result2s.get(0).getValue().replaceAll("[\\[\\]\"]", ""); - try { - textRenderData.setText(value.split(",")[(j - 5) + (i - 1) / 2 * (Math.min(ports, 8))]); - } catch (Exception e) { - textRenderData.setText(""); - } - } else { - //绔彛 - try { - textRenderData.setText(result2s.get(0).getPort().split(",")[(j - 5) + (i / 2) * (Math.min(ports, 8))]); - } catch (Exception e) { - textRenderData.setText(""); - } - } - renderData.add(textRenderData); - paragraphRenderData.setContents(renderData); - paragraphRenderDataList.add(paragraphRenderData); - cellRenderData.setParagraphs(paragraphRenderDataList); - cells.add(cellRenderData); - } + } + //棰戠偣鏁� + long often = insProductResult2s.stream().filter(insProductResult2 -> insProductResult2.getFrequency().equals(s)) + .filter(insProductResult2 -> + insProductMapper.selectById(insProductResult2.getInsProductId()).getInspectionItemSubclass().equals("浜掕皟") + ).filter(insProductResult2 -> ObjectUtils.isNotEmpty(insProductResult2.getOften())).distinct().count(); + List<String> inspectionItemSubclass = insProducts.stream().map(InsProduct::getInspectionItemSubclass).collect(Collectors.toList()); + //琛屾暟 + int aa = 0; + int portRow = ports % 8 == 0 ? ports / 8 : ports / 8 + 1; + //鍏堝垽鏂槸1绠�鍗曠増杩樻槸0澶嶆潅鐗� + if (insOrderState.getVersion() == 1) { + if (inspectionItemSubclass.contains("鐢靛帇椹绘尝姣�")) { + aa += 2 * portRow; + } + if (inspectionItemSubclass.contains("鍚屾瀬鍖栭殧绂诲害")) { + aa += 1 * portRow; + } + if (inspectionItemSubclass.contains("寮傛瀬鍖栭殧绂诲害")) { + aa += 1 * portRow; + } + if (inspectionItemSubclass.contains("浜掕皟")) { + aa += (angles + 1) * portRow * often; + } + } else { + if (inspectionItemSubclass.contains("鐢靛帇椹绘尝姣�")) { + aa += (angles + 1) * portRow; + } + if (inspectionItemSubclass.contains("鍚屾瀬鍖栭殧绂诲害")) { + List<InsProductResult2> result2s = insProductResult2s.stream().filter(insProductResult2 -> + insProductMapper.selectById(insProductResult2.getInsProductId()) + .getInspectionItemSubclass().equals("鍚屾瀬鍖栭殧绂诲害") + ).collect(Collectors.toList()); + int length = result2s.get(0).getPort().split(",").length; + aa += (angles + 1) * (length % (ports > 8 ? 4 : (ports + 1) / 2) == 0 ? length / (ports > 8 ? 4 : (ports + 1) / 2) : length / (ports > 8 ? 4 : (ports + 1) / 2) + 1); + } + if (inspectionItemSubclass.contains("寮傛瀬鍖栭殧绂诲害")) { + List<InsProductResult2> result2s = insProductResult2s.stream().filter(insProductResult2 -> + insProductMapper.selectById(insProductResult2.getInsProductId()) + .getInspectionItemSubclass().equals("寮傛瀬鍖栭殧绂诲害") + ).collect(Collectors.toList()); + int length = result2s.get(0).getPort().split(",").length; + aa += (angles + 1) * (length % (ports > 8 ? 4 : (ports + 1) / 2) == 0 ? length / (ports > 8 ? 4 : (ports + 1) / 2) : length / (ports > 8 ? 4 : (ports + 1) / 2) + 1); + } + if (inspectionItemSubclass.contains("浜掕皟")) { + aa += (angles + 1) * portRow * often; + } + if (inspectionItemSubclass.contains("鏈�澶ц�﹀悎搴�")) { + aa += (angles + 1); + } + if (inspectionItemSubclass.contains("鏈�灏忚�﹀悎搴�")) { + aa += (angles + 1); + } + if (inspectionItemSubclass.contains("骞呭害鍋忓樊")) { + List<InsProductResult2> result2s = insProductResult2s.stream().filter(insProductResult2 -> + insProductMapper.selectById(insProductResult2.getInsProductId()) + .getInspectionItemSubclass().equals("骞呭害鍋忓樊") + ).collect(Collectors.toList()); + int length = result2s.get(0).getPort().split(",").length; + aa += (angles + 1) * (length % 8 == 0 ? length / 8 : length / 8 + 1); + } + if (inspectionItemSubclass.contains("鏈�澶х浉浣嶅亸宸�")) { + List<InsProductResult2> result2s = insProductResult2s.stream().filter(insProductResult2 -> + insProductMapper.selectById(insProductResult2.getInsProductId()) + .getInspectionItemSubclass().equals("鏈�澶х浉浣嶅亸宸�") + ).collect(Collectors.toList()); + int length = result2s.get(0).getPort().split(",").length; + aa += (angles + 1) * (length % 8 == 0 ? length / 8 : length / 8 + 1); + } + } + List<RowRenderData> rows = new ArrayList<>(); + Set<String> itemSet = new HashSet<>(); + int cc = 0; + int dd = 0; + int ee = 0; + int ff = 0; + int gg = 0; + int hh = 0; + int mm = 0; + //琛ㄦ牸鐨勮鏁� + for (int i = 0; i <= aa; i++) { + RowRenderData rowRenderData = new RowRenderData(); + RowStyle rowStyle = new RowStyle(); + rowStyle.setHeight(40); + rowRenderData.setRowStyle(rowStyle); + List<CellRenderData> cells = new ArrayList<>(); + //琛ㄦ牸鐨勫垪鏁� + int bb = ports > 8 ? 14 : ports + 6; + for (int j = 0; j < bb; j++) { + CellRenderData cellRenderData = new CellRenderData(); + CellStyle cellStyle = new CellStyle(); + cellStyle.setVertAlign(XWPFTableCell.XWPFVertAlign.CENTER); + cellRenderData.setCellStyle(cellStyle); + List<ParagraphRenderData> paragraphRenderDataList = new ArrayList<>(); + ParagraphRenderData paragraphRenderData = new ParagraphRenderData(); + ParagraphStyle paragraphStyle = new ParagraphStyle(); + paragraphStyle.setAlign(ParagraphAlignment.CENTER); + paragraphRenderData.setParagraphStyle(paragraphStyle); + List<RenderData> renderData = new ArrayList<>(); + TextRenderData textRenderData = new TextRenderData(); + Style style = new Style(); + style.setFontFamily("瀹嬩綋"); + style.setColor("000000"); + textRenderData.setStyle(style); + if (i == 0) { + //绗竴琛� + textRenderData.setText("棰戞锛�" + s + "鈭�0" + lable); + renderData.add(textRenderData); + paragraphRenderData.setContents(renderData); + paragraphRenderDataList.add(paragraphRenderData); + cellRenderData.setParagraphs(paragraphRenderDataList); + cells.add(cellRenderData); + } else { + if (insOrderState.getVersion() == 1) { + //闈炵數璋冪増鏈�(绠�鍗曠増) + if (inspectionItemSubclass.contains("鐢靛帇椹绘尝姣�") && i <= 2 * portRow) { + cc = 2 * portRow; + if (itemSet.add("鐢靛帇椹绘尝姣�")) { + index.getAndIncrement(); } - if (inspectionItemSubclass.contains("鍚屾瀬鍖栭殧绂诲害") && i > cc && i <= cc + portRow) { - dd = cc + portRow; + List<InsProduct> products = insProducts.stream().filter(insProduct -> insProduct.getInspectionItemSubclass().equals("鐢靛帇椹绘尝姣�")).collect(Collectors.toList()); + List<InsProductResult2> result2s = insProductResult2s.stream() + .filter(insProductResult2 -> insProductResult2.getFrequency().equals(s) && insProductResult2.getInsProductId().equals(products.get(0).getId())) + .collect(Collectors.toList()); + //鐢靛帇椹绘尝姣旀墍鍦ㄨ + if (j == 0) { + //绗竴鍒� + textRenderData.setText(index + "鈭�1" + index); + renderData.add(textRenderData); + paragraphRenderData.setContents(renderData); + paragraphRenderDataList.add(paragraphRenderData); + cellRenderData.setParagraphs(paragraphRenderDataList); + cells.add(cellRenderData); + } else if (j == 1) { + //绗簩鍒� + textRenderData.setText("鐢靛帇椹绘尝姣斺垜2" + index); + renderData.add(textRenderData); + paragraphRenderData.setContents(renderData); + paragraphRenderDataList.add(paragraphRenderData); + cellRenderData.setParagraphs(paragraphRenderDataList); + cells.add(cellRenderData); + } else if (j == 2) { + //绗笁鍒� + textRenderData.setText(products.get(0).getUnit() + "鈭�3" + index); + renderData.add(textRenderData); + paragraphRenderData.setContents(renderData); + paragraphRenderDataList.add(paragraphRenderData); + cellRenderData.setParagraphs(paragraphRenderDataList); + cells.add(cellRenderData); + } else if (j == 3) { + //绗洓鍒� + textRenderData.setText(products.get(0).getAsk() + "鈭�4" + index); + renderData.add(textRenderData); + paragraphRenderData.setContents(renderData); + paragraphRenderDataList.add(paragraphRenderData); + cellRenderData.setParagraphs(paragraphRenderDataList); + cells.add(cellRenderData); + } else if (j == 4) { + //绗簲鍒� + if (i % 2 == 0) { + //鏈�宸�� + textRenderData.setText("鏈�宸��"); + } else { + //绔彛 + textRenderData.setText("绔彛"); + } + renderData.add(textRenderData); + paragraphRenderData.setContents(renderData); + paragraphRenderDataList.add(paragraphRenderData); + cellRenderData.setParagraphs(paragraphRenderDataList); + cells.add(cellRenderData); + } else if (j == bb - 1) { + //鏈�鍚庝竴鍒� + if (i % 2 == 0) { + //缁撹 + if (products.get(0).getInsResult() == 1) { + textRenderData.setText("鍚堟牸"); + } else if (products.get(0).getInsResult() == 0) { + textRenderData.setText("涓嶅悎鏍�"); + } else { + textRenderData.setText("涓嶅垽瀹�"); + } + } else { + textRenderData.setText("/"); + } + renderData.add(textRenderData); + paragraphRenderData.setContents(renderData); + paragraphRenderDataList.add(paragraphRenderData); + cellRenderData.setParagraphs(paragraphRenderDataList); + cells.add(cellRenderData); + } else { + //鍏朵綑鍒� + if (i % 2 == 0) { + //鏈�宸�� + String value = result2s.get(0).getValue().replaceAll("[\\[\\]\"]", ""); + try { + textRenderData.setText(value.split(",")[(j - 5) + (i - 1) / 2 * (Math.min(ports, 8))]); + } catch (Exception e) { + textRenderData.setText(""); + } + } else { + //绔彛 + try { + textRenderData.setText(result2s.get(0).getPort().split(",")[(j - 5) + (i / 2) * (Math.min(ports, 8))]); + } catch (Exception e) { + textRenderData.setText(""); + } + } + renderData.add(textRenderData); + paragraphRenderData.setContents(renderData); + paragraphRenderDataList.add(paragraphRenderData); + cellRenderData.setParagraphs(paragraphRenderDataList); + cells.add(cellRenderData); + } + } + if (inspectionItemSubclass.contains("鍚屾瀬鍖栭殧绂诲害") && i > cc && i <= cc + portRow) { + dd = cc + portRow; + if (itemSet.add("鍚屾瀬鍖栭殧绂诲害")) { + index.getAndIncrement(); + } + List<InsProduct> products = insProducts.stream() + .filter(insProduct -> insProduct.getInspectionItemSubclass().equals("鍚屾瀬鍖栭殧绂诲害")) + .collect(Collectors.toList()); + List<InsProductResult2> result2s = insProductResult2s.stream() + .filter(insProductResult2 -> insProductResult2.getFrequency().equals(s) && insProductResult2.getInsProductId().equals(products.get(0).getId())) + .collect(Collectors.toList()); + //鍚屾瀬鍖栭殧绂诲害鎵�鍦ㄨ + if (j == 0) { + //绗竴鍒� + textRenderData.setText(index + "鈭�1" + index); + renderData.add(textRenderData); + paragraphRenderData.setContents(renderData); + paragraphRenderDataList.add(paragraphRenderData); + cellRenderData.setParagraphs(paragraphRenderDataList); + cells.add(cellRenderData); + } else if (j == 1) { + //绗簩鍒� + textRenderData.setText("鍚屾瀬鍖栭殧绂诲害鈭�2" + index); + renderData.add(textRenderData); + paragraphRenderData.setContents(renderData); + paragraphRenderDataList.add(paragraphRenderData); + cellRenderData.setParagraphs(paragraphRenderDataList); + cells.add(cellRenderData); + } else if (j == 2) { + //绗笁鍒� + textRenderData.setText(products.get(0).getUnit() + "鈭�3" + index); + renderData.add(textRenderData); + paragraphRenderData.setContents(renderData); + paragraphRenderDataList.add(paragraphRenderData); + cellRenderData.setParagraphs(paragraphRenderDataList); + cells.add(cellRenderData); + } else if (j == 3) { + //绗洓鍒� + textRenderData.setText(products.get(0).getAsk() + "鈭�4" + index); + renderData.add(textRenderData); + paragraphRenderData.setContents(renderData); + paragraphRenderDataList.add(paragraphRenderData); + cellRenderData.setParagraphs(paragraphRenderDataList); + cells.add(cellRenderData); + } else if (j == 4) { + //绗簲鍒� + textRenderData.setText("鏈�宸��"); + renderData.add(textRenderData); + paragraphRenderData.setContents(renderData); + paragraphRenderDataList.add(paragraphRenderData); + cellRenderData.setParagraphs(paragraphRenderDataList); + cells.add(cellRenderData); + } else if (j == bb - 1) { + //鏈�鍚庝竴鍒� + if (products.get(0).getInsResult() == 1) { + textRenderData.setText("鍚堟牸"); + } else if (products.get(0).getInsResult() == 0) { + textRenderData.setText("涓嶅悎鏍�"); + } else { + textRenderData.setText("涓嶅垽瀹�"); + } + renderData.add(textRenderData); + paragraphRenderData.setContents(renderData); + paragraphRenderDataList.add(paragraphRenderData); + cellRenderData.setParagraphs(paragraphRenderDataList); + cells.add(cellRenderData); + } else if (j % 2 == 0) { + String value = result2s.get(0).getValue().replaceAll("[\\[\\]\"]", ""); + try { + textRenderData.setText(value.split(",")[(j - 6) / 2 + (i - cc - 1) * 4] + "鈭�5" + i + (j - 6)); + } catch (Exception e) { + textRenderData.setText(""); + } + renderData.add(textRenderData); + paragraphRenderData.setContents(renderData); + paragraphRenderDataList.add(paragraphRenderData); + cellRenderData.setParagraphs(paragraphRenderDataList); + cells.add(cellRenderData); + } else { + String value = result2s.get(0).getValue().replaceAll("[\\[\\]\"]", ""); + try { + textRenderData.setText(value.split(",")[(j - 5) / 2 + (i - cc - 1) * 4] + "鈭�5" + i + (j - 5)); + } catch (Exception e) { + textRenderData.setText(""); + } + renderData.add(textRenderData); + paragraphRenderData.setContents(renderData); + paragraphRenderDataList.add(paragraphRenderData); + cellRenderData.setParagraphs(paragraphRenderDataList); + cells.add(cellRenderData); + } + } + if (inspectionItemSubclass.contains("寮傛瀬鍖栭殧绂诲害") && i > (dd == 0 ? cc : dd) && i <= (dd == 0 ? cc : dd) + portRow) { + ee = (dd == 0 ? cc : dd) + portRow; + if (itemSet.add("寮傛瀬鍖栭殧绂诲害")) { + index.getAndIncrement(); + } + List<InsProduct> products = insProducts.stream() + .filter(insProduct -> insProduct.getInspectionItemSubclass().equals("寮傛瀬鍖栭殧绂诲害")) + .collect(Collectors.toList()); + List<InsProductResult2> result2s = insProductResult2s.stream() + .filter(insProductResult2 -> insProductResult2.getFrequency().equals(s) && insProductResult2.getInsProductId().equals(products.get(0).getId())) + .collect(Collectors.toList()); + //寮傛瀬鍖栭殧绂诲害鎵�鍦ㄨ + if (j == 0) { + //绗竴鍒� + textRenderData.setText(index + "鈭�1" + index); + renderData.add(textRenderData); + paragraphRenderData.setContents(renderData); + paragraphRenderDataList.add(paragraphRenderData); + cellRenderData.setParagraphs(paragraphRenderDataList); + cells.add(cellRenderData); + } else if (j == 1) { + //绗簩鍒� + textRenderData.setText("寮傛瀬鍖栭殧绂诲害鈭�2" + index); + renderData.add(textRenderData); + paragraphRenderData.setContents(renderData); + paragraphRenderDataList.add(paragraphRenderData); + cellRenderData.setParagraphs(paragraphRenderDataList); + cells.add(cellRenderData); + } else if (j == 2) { + //绗笁鍒� + textRenderData.setText(products.get(0).getUnit() + "鈭�3" + index); + renderData.add(textRenderData); + paragraphRenderData.setContents(renderData); + paragraphRenderDataList.add(paragraphRenderData); + cellRenderData.setParagraphs(paragraphRenderDataList); + cells.add(cellRenderData); + } else if (j == 3) { + //绗洓鍒� + textRenderData.setText(products.get(0).getAsk() + "鈭�4" + index); + renderData.add(textRenderData); + paragraphRenderData.setContents(renderData); + paragraphRenderDataList.add(paragraphRenderData); + cellRenderData.setParagraphs(paragraphRenderDataList); + cells.add(cellRenderData); + } else if (j == 4) { + //绗簲鍒� + textRenderData.setText("鏈�宸��"); + renderData.add(textRenderData); + paragraphRenderData.setContents(renderData); + paragraphRenderDataList.add(paragraphRenderData); + cellRenderData.setParagraphs(paragraphRenderDataList); + cells.add(cellRenderData); + } else if (j == bb - 1) { + //鏈�鍚庝竴鍒� + if (products.get(0).getInsResult() == 1) { + textRenderData.setText("鍚堟牸"); + } else if (products.get(0).getInsResult() == 0) { + textRenderData.setText("涓嶅悎鏍�"); + } else { + textRenderData.setText("涓嶅垽瀹�"); + } + renderData.add(textRenderData); + paragraphRenderData.setContents(renderData); + paragraphRenderDataList.add(paragraphRenderData); + cellRenderData.setParagraphs(paragraphRenderDataList); + cells.add(cellRenderData); + } else if (j % 2 == 0) { + String value = result2s.get(0).getValue().replaceAll("[\\[\\]\"]", ""); + try { + textRenderData.setText(value.split(",")[(j - 6) / 2 + (i - (dd == 0 ? cc : dd) - 1) * 4] + "鈭�5" + i + (j - 6)); + } catch (Exception e) { + textRenderData.setText(""); + } + renderData.add(textRenderData); + paragraphRenderData.setContents(renderData); + paragraphRenderDataList.add(paragraphRenderData); + cellRenderData.setParagraphs(paragraphRenderDataList); + cells.add(cellRenderData); + } else { + String value = result2s.get(0).getValue().replaceAll("[\\[\\]\"]", ""); + try { + textRenderData.setText(value.split(",")[(j - 5) / 2 + (i - (dd == 0 ? cc : dd) - 1) * 4] + "鈭�5" + i + (j - 5)); + } catch (Exception e) { + textRenderData.setText(""); + } + renderData.add(textRenderData); + paragraphRenderData.setContents(renderData); + paragraphRenderDataList.add(paragraphRenderData); + cellRenderData.setParagraphs(paragraphRenderDataList); + cells.add(cellRenderData); + } + } + if (inspectionItemSubclass.contains("浜掕皟") && i > (ee == 0 ? ((dd == 0 ? cc : dd)) : ee)) { + if (itemSet.add("浜掕皟")) { + index.getAndIncrement(); + } + List<InsProduct> products = insProducts.stream() + .filter(insProduct -> insProduct.getInspectionItemSubclass().equals("浜掕皟")) + .collect(Collectors.toList()); + List<InsProductResult2> result2s = insProductResult2s.stream() + .filter(insProductResult2 -> insProductResult2.getFrequency().equals(s) && insProductResult2.getInsProductId().equals(products.get(0).getId())) + .collect(Collectors.toList()); + //浜掕皟鎵�鍦ㄨ + if (j == 0) { + //绗竴鍒� + textRenderData.setText(index + "鈭�1" + index); + renderData.add(textRenderData); + paragraphRenderData.setContents(renderData); + paragraphRenderDataList.add(paragraphRenderData); + cellRenderData.setParagraphs(paragraphRenderDataList); + cells.add(cellRenderData); + } else if (j == 1) { + //绗簩鍒� + textRenderData.setText("浜掕皟鈭�2" + index); + renderData.add(textRenderData); + paragraphRenderData.setContents(renderData); + paragraphRenderDataList.add(paragraphRenderData); + cellRenderData.setParagraphs(paragraphRenderDataList); + cells.add(cellRenderData); + } else if (j == 2) { + //绗笁鍒� + textRenderData.setText(products.get(0).getUnit() + "鈭�3" + index); + renderData.add(textRenderData); + paragraphRenderData.setContents(renderData); + paragraphRenderDataList.add(paragraphRenderData); + cellRenderData.setParagraphs(paragraphRenderDataList); + cells.add(cellRenderData); + } else if (j == 3) { + //绗洓鍒� + textRenderData.setText(products.get(0).getAsk() + "鈭�4" + index); + renderData.add(textRenderData); + paragraphRenderData.setContents(renderData); + paragraphRenderDataList.add(paragraphRenderData); + cellRenderData.setParagraphs(paragraphRenderDataList); + cells.add(cellRenderData); + } else if (j == 4) { + //绗簲鍒� + if ((i - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee)) % (angles + 1) == 1) { + textRenderData.setText("瑙掑害"); + } else { + textRenderData.setText(result2s.get(0).getAngle().split(",")[(i - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) - 2) % (angles + 1)]); + } + renderData.add(textRenderData); + paragraphRenderData.setContents(renderData); + paragraphRenderDataList.add(paragraphRenderData); + cellRenderData.setParagraphs(paragraphRenderDataList); + cells.add(cellRenderData); + } else if (j == bb - 1) { + //鏈�鍚庝竴鍒� + if ((i - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee)) % (angles + 1) == 1) { + textRenderData.setText("/"); + } else { + if (products.get(0).getInsResult() == 1) { + textRenderData.setText("鍚堟牸鈭�8" + index + ((i - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) + (angles - 1)) / (angles + 1) - 1)); + } else if (products.get(0).getInsResult() == 0) { + textRenderData.setText("涓嶅悎鏍尖垜8" + index + ((i - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) + (angles - 1)) / (angles + 1) - 1)); + } else { + textRenderData.setText("涓嶅垽瀹氣垜8" + index + ((i - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) + (angles - 1)) / (angles + 1) - 1)); + } + } + renderData.add(textRenderData); + paragraphRenderData.setContents(renderData); + paragraphRenderDataList.add(paragraphRenderData); + cellRenderData.setParagraphs(paragraphRenderDataList); + cells.add(cellRenderData); + } else { + if ((i - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee)) % (angles + 1) == 1) { + textRenderData.setText(result2s.get((i - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee)) / portRow / (angles + 1)).getOften() + "鈭�6" + i + index); + } else { + String[] value = result2s.get((i - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee)) / portRow / (angles + 2)).getValue().split("\\],\\["); + String[] split = value[(i - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) - 2) % (angles + 1)].replaceAll("[\\[\\]\"]", "").split(","); + try { + textRenderData.setText(split[((j - 5) + ((i - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) - 1) / (angles + 1) % portRow) * (Math.min(ports, 8)))]); + } catch (Exception e) { + textRenderData.setText(""); + } + } + renderData.add(textRenderData); + paragraphRenderData.setContents(renderData); + paragraphRenderDataList.add(paragraphRenderData); + cellRenderData.setParagraphs(paragraphRenderDataList); + cells.add(cellRenderData); + } + } + } else { + //鐢佃皟鐗堟湰(澶嶆潅鐗�) + if (inspectionItemSubclass.contains("鐢靛帇椹绘尝姣�") && i <= (angles + 1) * portRow) { + cc = (angles + 1) * portRow; + if (itemSet.add("鐢靛帇椹绘尝姣�")) { + index.getAndIncrement(); + } + List<InsProduct> products = insProducts.stream().filter(insProduct -> insProduct.getInspectionItemSubclass().equals("鐢靛帇椹绘尝姣�")).collect(Collectors.toList()); + List<InsProductResult2> result2s = insProductResult2s.stream() + .filter(insProductResult2 -> insProductResult2.getFrequency().equals(s) && insProductResult2.getInsProductId().equals(products.get(0).getId())) + .collect(Collectors.toList()); + //鐢靛帇椹绘尝姣旀墍鍦ㄨ + if (j == 0) { + //绗竴鍒� + textRenderData.setText(index + "鈭�1" + index); + renderData.add(textRenderData); + paragraphRenderData.setContents(renderData); + paragraphRenderDataList.add(paragraphRenderData); + cellRenderData.setParagraphs(paragraphRenderDataList); + cells.add(cellRenderData); + } else if (j == 1) { + //绗簩鍒� + textRenderData.setText("鐢靛帇椹绘尝姣斺垜2" + index); + renderData.add(textRenderData); + paragraphRenderData.setContents(renderData); + paragraphRenderDataList.add(paragraphRenderData); + cellRenderData.setParagraphs(paragraphRenderDataList); + cells.add(cellRenderData); + } else if (j == 2) { + //绗笁鍒� + textRenderData.setText(products.get(0).getUnit() + "鈭�3" + index); + renderData.add(textRenderData); + paragraphRenderData.setContents(renderData); + paragraphRenderDataList.add(paragraphRenderData); + cellRenderData.setParagraphs(paragraphRenderDataList); + cells.add(cellRenderData); + } else if (j == 3) { + //绗洓鍒� + textRenderData.setText(products.get(0).getAsk() + "鈭�4" + index); + renderData.add(textRenderData); + paragraphRenderData.setContents(renderData); + paragraphRenderDataList.add(paragraphRenderData); + cellRenderData.setParagraphs(paragraphRenderDataList); + cells.add(cellRenderData); + } else if (j == 4) { + //绗簲鍒� + if (i % (angles + 1) == 1) { + //绔彛 + textRenderData.setText("绔彛"); + } else { + //瑙掑害 + textRenderData.setText(result2s.get(0).getAngle().split(",")[(i + (angles - 1)) % (angles + 1)]); + } + renderData.add(textRenderData); + paragraphRenderData.setContents(renderData); + paragraphRenderDataList.add(paragraphRenderData); + cellRenderData.setParagraphs(paragraphRenderDataList); + cells.add(cellRenderData); + } else if (j == bb - 1) { + //鏈�鍚庝竴鍒� + if (i % (angles + 1) == 1) { + textRenderData.setText("/"); + } else { + //缁撹 + if (products.get(0).getInsResult() == 1) { + textRenderData.setText("鍚堟牸鈭�8" + index + ((i + (angles - 1)) / (angles + 1) - 1)); + } else if (products.get(0).getInsResult() == 0) { + textRenderData.setText("涓嶅悎鏍尖垜8" + index + ((i + (angles - 1)) / (angles + 1) - 1)); + } else { + textRenderData.setText("涓嶅垽瀹氣垜8" + index + ((i + (angles - 1)) / (angles + 1) - 1)); + } + } + renderData.add(textRenderData); + paragraphRenderData.setContents(renderData); + paragraphRenderDataList.add(paragraphRenderData); + cellRenderData.setParagraphs(paragraphRenderDataList); + cells.add(cellRenderData); + } else { + //鍏朵綑鍒� + if (i % (angles + 1) == 1) { + //绔彛 + try { + textRenderData.setText(result2s.get(0).getPort().split(",")[(j - 5) + (i / (angles + 1)) * (Math.min(ports, 8))]); + } catch (Exception e) { + textRenderData.setText(""); + } + } else { + //鏈�宸�� + String[] value = result2s.get(0).getValue().split("\\],\\["); + String[] split = value[(i + (angles - 1)) % (angles + 1)].replaceAll("[\\[\\]\"]", "").split(","); + try { + textRenderData.setText(split[(j - 5) + ((i + (angles - 1)) / (angles + 1) - 1) * (Math.min(ports, 8))]); + } catch (Exception e) { + textRenderData.setText(""); + } + } + renderData.add(textRenderData); + paragraphRenderData.setContents(renderData); + paragraphRenderDataList.add(paragraphRenderData); + cellRenderData.setParagraphs(paragraphRenderDataList); + cells.add(cellRenderData); + } + } + if (inspectionItemSubclass.contains("鍚屾瀬鍖栭殧绂诲害")) { + List<InsProduct> products = insProducts.stream().filter(insProduct -> insProduct.getInspectionItemSubclass().equals("鍚屾瀬鍖栭殧绂诲害")).collect(Collectors.toList()); + List<InsProductResult2> result2s = insProductResult2s.stream() + .filter(insProductResult2 -> insProductResult2.getFrequency().equals(s) && insProductResult2.getInsProductId().equals(products.get(0).getId())) + .collect(Collectors.toList()); + int length = result2s.get(0).getPort().split(",").length; + int portRow2 = (length % (ports > 8 ? 4 : (ports + 1) / 2) == 0 ? length / (ports > 8 ? 4 : (ports + 1) / 2) : length / (ports > 8 ? 4 : (ports + 1) / 2) + 1); + int k = (angles + 1) * portRow2; + if (i > cc && i <= cc + k) { + dd = cc + k; if (itemSet.add("鍚屾瀬鍖栭殧绂诲害")) { index.getAndIncrement(); } - List<InsProduct> products = insProducts.stream() - .filter(insProduct -> insProduct.getInspectionItemSubclass().equals("鍚屾瀬鍖栭殧绂诲害")) - .collect(Collectors.toList()); - List<InsProductResult2> result2s = insProductResult2s.stream() - .filter(insProductResult2 -> insProductResult2.getFrequency().equals(s) && insProductResult2.getInsProductId().equals(products.get(0).getId())) - .collect(Collectors.toList()); //鍚屾瀬鍖栭殧绂诲害鎵�鍦ㄨ if (j == 0) { //绗竴鍒� @@ -380,7 +766,13 @@ cells.add(cellRenderData); } else if (j == 4) { //绗簲鍒� - textRenderData.setText("鏈�宸��"); + 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); @@ -388,24 +780,17 @@ 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("涓嶅悎鏍�"); + if ((i - cc) % (angles + 1) == 1) { + 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(""); + //缁撹 + 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); @@ -413,11 +798,40 @@ 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(""); + //鍏朵綑鍒� + 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); @@ -426,17 +840,20 @@ cells.add(cellRenderData); } } - if (inspectionItemSubclass.contains("寮傛瀬鍖栭殧绂诲害") && i > (dd == 0 ? cc : dd) && i <= (dd == 0 ? cc : dd) + portRow) { - ee = (dd == 0 ? cc : dd) + portRow; + } + if (inspectionItemSubclass.contains("寮傛瀬鍖栭殧绂诲害")) { + List<InsProduct> products = insProducts.stream().filter(insProduct -> insProduct.getInspectionItemSubclass().equals("寮傛瀬鍖栭殧绂诲害")).collect(Collectors.toList()); + List<InsProductResult2> result2s = insProductResult2s.stream() + .filter(insProductResult2 -> insProductResult2.getFrequency().equals(s) && insProductResult2.getInsProductId().equals(products.get(0).getId())) + .collect(Collectors.toList()); + int length = result2s.get(0).getPort().split(",").length; + int portRow2 = (length % (ports > 8 ? 4 : (ports + 1) / 2) == 0 ? length / (ports > 8 ? 4 : (ports + 1) / 2) : length / (ports > 8 ? 4 : (ports + 1) / 2) + 1); + int k = (angles + 1) * portRow2; + if (i > (dd == 0 ? cc : dd) && i <= (dd == 0 ? cc : dd) + k) { + ee = (dd == 0 ? cc : dd) + k; if (itemSet.add("寮傛瀬鍖栭殧绂诲害")) { index.getAndIncrement(); } - List<InsProduct> products = insProducts.stream() - .filter(insProduct -> insProduct.getInspectionItemSubclass().equals("寮傛瀬鍖栭殧绂诲害")) - .collect(Collectors.toList()); - List<InsProductResult2> result2s = insProductResult2s.stream() - .filter(insProductResult2 -> insProductResult2.getFrequency().equals(s) && insProductResult2.getInsProductId().equals(products.get(0).getId())) - .collect(Collectors.toList()); //寮傛瀬鍖栭殧绂诲害鎵�鍦ㄨ if (j == 0) { //绗竴鍒� @@ -472,191 +889,7 @@ cells.add(cellRenderData); } else if (j == 4) { //绗簲鍒� - textRenderData.setText("鏈�宸��"); - renderData.add(textRenderData); - paragraphRenderData.setContents(renderData); - paragraphRenderDataList.add(paragraphRenderData); - cellRenderData.setParagraphs(paragraphRenderDataList); - cells.add(cellRenderData); - } else if (j == bb - 1) { - //鏈�鍚庝竴鍒� - if (products.get(0).getInsResult() == 1) { - textRenderData.setText("鍚堟牸"); - } else if (products.get(0).getInsResult() == 0) { - textRenderData.setText("涓嶅悎鏍�"); - } else { - textRenderData.setText("涓嶅垽瀹�"); - } - renderData.add(textRenderData); - paragraphRenderData.setContents(renderData); - paragraphRenderDataList.add(paragraphRenderData); - cellRenderData.setParagraphs(paragraphRenderDataList); - cells.add(cellRenderData); - } else if (j % 2 == 0) { - String value = result2s.get(0).getValue().replaceAll("[\\[\\]\"]", ""); - try { - textRenderData.setText(value.split(",")[(j - 6) / 2 + (i - (dd == 0 ? cc : dd) - 1) * 4] + "鈭�5" + i + (j - 6)); - } catch (Exception e) { - textRenderData.setText(""); - } - renderData.add(textRenderData); - paragraphRenderData.setContents(renderData); - paragraphRenderDataList.add(paragraphRenderData); - cellRenderData.setParagraphs(paragraphRenderDataList); - cells.add(cellRenderData); - } else { - String value = result2s.get(0).getValue().replaceAll("[\\[\\]\"]", ""); - try { - textRenderData.setText(value.split(",")[(j - 5) / 2 + (i - (dd == 0 ? cc : dd) - 1) * 4] + "鈭�5" + i + (j - 5)); - } catch (Exception e) { - textRenderData.setText(""); - } - renderData.add(textRenderData); - paragraphRenderData.setContents(renderData); - paragraphRenderDataList.add(paragraphRenderData); - cellRenderData.setParagraphs(paragraphRenderDataList); - cells.add(cellRenderData); - } - } - if (inspectionItemSubclass.contains("浜掕皟") && i > (ee == 0 ? ((dd == 0 ? cc : dd)) : ee)) { - if (itemSet.add("浜掕皟")) { - index.getAndIncrement(); - } - List<InsProduct> products = insProducts.stream() - .filter(insProduct -> insProduct.getInspectionItemSubclass().equals("浜掕皟")) - .collect(Collectors.toList()); - List<InsProductResult2> result2s = insProductResult2s.stream() - .filter(insProductResult2 -> insProductResult2.getFrequency().equals(s) && insProductResult2.getInsProductId().equals(products.get(0).getId())) - .collect(Collectors.toList()); - //浜掕皟鎵�鍦ㄨ - if (j == 0) { - //绗竴鍒� - textRenderData.setText(index + "鈭�1" + index); - renderData.add(textRenderData); - paragraphRenderData.setContents(renderData); - paragraphRenderDataList.add(paragraphRenderData); - cellRenderData.setParagraphs(paragraphRenderDataList); - cells.add(cellRenderData); - } else if (j == 1) { - //绗簩鍒� - textRenderData.setText("浜掕皟鈭�2" + index); - renderData.add(textRenderData); - paragraphRenderData.setContents(renderData); - paragraphRenderDataList.add(paragraphRenderData); - cellRenderData.setParagraphs(paragraphRenderDataList); - cells.add(cellRenderData); - } else if (j == 2) { - //绗笁鍒� - textRenderData.setText(products.get(0).getUnit() + "鈭�3" + index); - renderData.add(textRenderData); - paragraphRenderData.setContents(renderData); - paragraphRenderDataList.add(paragraphRenderData); - cellRenderData.setParagraphs(paragraphRenderDataList); - cells.add(cellRenderData); - } else if (j == 3) { - //绗洓鍒� - textRenderData.setText(products.get(0).getAsk() + "鈭�4" + index); - renderData.add(textRenderData); - paragraphRenderData.setContents(renderData); - paragraphRenderDataList.add(paragraphRenderData); - cellRenderData.setParagraphs(paragraphRenderDataList); - cells.add(cellRenderData); - } else if (j == 4) { - //绗簲鍒� - if ((i - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee)) % (angles + 1) == 1) { - textRenderData.setText("瑙掑害"); - } else { - textRenderData.setText(result2s.get(0).getAngle().split(",")[(i - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) - 2) % (angles + 1)]); - } - renderData.add(textRenderData); - paragraphRenderData.setContents(renderData); - paragraphRenderDataList.add(paragraphRenderData); - cellRenderData.setParagraphs(paragraphRenderDataList); - cells.add(cellRenderData); - } else if (j == bb - 1) { - //鏈�鍚庝竴鍒� - if ((i - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee)) % (angles + 1) == 1) { - textRenderData.setText("/"); - } else { - if (products.get(0).getInsResult() == 1) { - textRenderData.setText("鍚堟牸鈭�8" + index + ((i - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) + (angles - 1)) / (angles + 1) - 1)); - } else if (products.get(0).getInsResult() == 0) { - textRenderData.setText("涓嶅悎鏍尖垜8" + index + ((i - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) + (angles - 1)) / (angles + 1) - 1)); - } else { - textRenderData.setText("涓嶅垽瀹氣垜8" + index + ((i - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) + (angles - 1)) / (angles + 1) - 1)); - } - } - renderData.add(textRenderData); - paragraphRenderData.setContents(renderData); - paragraphRenderDataList.add(paragraphRenderData); - cellRenderData.setParagraphs(paragraphRenderDataList); - cells.add(cellRenderData); - } else { - if ((i - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee)) % (angles + 1) == 1) { - textRenderData.setText(result2s.get((i - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee)) / portRow / (angles + 1)).getOften() + "鈭�6" + i + index); - } else { - String[] value = result2s.get((i - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee)) / portRow / (angles + 2)).getValue().split("\\],\\["); - String[] split = value[(i - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) - 2) % (angles + 1)].replaceAll("[\\[\\]\"]", "").split(","); - try { - textRenderData.setText(split[((j - 5) + ((i - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) - 1) / (angles + 1) % portRow) * (Math.min(ports, 8)))]); - } catch (Exception e) { - textRenderData.setText(""); - } - } - renderData.add(textRenderData); - paragraphRenderData.setContents(renderData); - paragraphRenderDataList.add(paragraphRenderData); - cellRenderData.setParagraphs(paragraphRenderDataList); - cells.add(cellRenderData); - } - } - } else { - //鐢佃皟鐗堟湰(澶嶆潅鐗�) - if (inspectionItemSubclass.contains("鐢靛帇椹绘尝姣�") && i <= (angles + 1) * portRow) { - cc = (angles + 1) * portRow; - if (itemSet.add("鐢靛帇椹绘尝姣�")) { - index.getAndIncrement(); - } - List<InsProduct> products = insProducts.stream().filter(insProduct -> insProduct.getInspectionItemSubclass().equals("鐢靛帇椹绘尝姣�")).collect(Collectors.toList()); - List<InsProductResult2> result2s = insProductResult2s.stream() - .filter(insProductResult2 -> insProductResult2.getFrequency().equals(s) && insProductResult2.getInsProductId().equals(products.get(0).getId())) - .collect(Collectors.toList()); - //鐢靛帇椹绘尝姣旀墍鍦ㄨ - if (j == 0) { - //绗竴鍒� - textRenderData.setText(index + "鈭�1" + index); - renderData.add(textRenderData); - paragraphRenderData.setContents(renderData); - paragraphRenderDataList.add(paragraphRenderData); - cellRenderData.setParagraphs(paragraphRenderDataList); - cells.add(cellRenderData); - } else if (j == 1) { - //绗簩鍒� - textRenderData.setText("鐢靛帇椹绘尝姣斺垜2" + index); - renderData.add(textRenderData); - paragraphRenderData.setContents(renderData); - paragraphRenderDataList.add(paragraphRenderData); - cellRenderData.setParagraphs(paragraphRenderDataList); - cells.add(cellRenderData); - } else if (j == 2) { - //绗笁鍒� - textRenderData.setText(products.get(0).getUnit() + "鈭�3" + index); - renderData.add(textRenderData); - paragraphRenderData.setContents(renderData); - paragraphRenderDataList.add(paragraphRenderData); - cellRenderData.setParagraphs(paragraphRenderDataList); - cells.add(cellRenderData); - } else if (j == 3) { - //绗洓鍒� - textRenderData.setText(products.get(0).getAsk() + "鈭�4" + index); - renderData.add(textRenderData); - paragraphRenderData.setContents(renderData); - paragraphRenderDataList.add(paragraphRenderData); - cellRenderData.setParagraphs(paragraphRenderDataList); - cells.add(cellRenderData); - } else if (j == 4) { - //绗簲鍒� - if (i % (angles + 1) == 1) { + if ((i - (dd == 0 ? cc : dd)) % (angles + 1) == 1) { //绔彛 textRenderData.setText("绔彛"); } else { @@ -670,16 +903,16 @@ cells.add(cellRenderData); } else if (j == bb - 1) { //鏈�鍚庝竴鍒� - if (i % (angles + 1) == 1) { + if ((i - (dd == 0 ? cc : dd)) % (angles + 1) == 1) { textRenderData.setText("/"); } else { //缁撹 if (products.get(0).getInsResult() == 1) { - textRenderData.setText("鍚堟牸鈭�8" + index + ((i + (angles - 1)) / (angles + 1) - 1)); + textRenderData.setText("鍚堟牸鈭�8" + index + ((i - (dd == 0 ? cc : dd)) / (angles + 2))); } else if (products.get(0).getInsResult() == 0) { - textRenderData.setText("涓嶅悎鏍尖垜8" + index + ((i + (angles - 1)) / (angles + 1) - 1)); + textRenderData.setText("涓嶅悎鏍尖垜8" + index + ((i - (dd == 0 ? cc : dd)) / (angles + 2))); } else { - textRenderData.setText("涓嶅垽瀹氣垜8" + index + ((i + (angles - 1)) / (angles + 1) - 1)); + textRenderData.setText("涓嶅垽瀹氣垜8" + index + ((i - (dd == 0 ? cc : dd)) / (angles + 2))); } } renderData.add(textRenderData); @@ -688,234 +921,6 @@ cellRenderData.setParagraphs(paragraphRenderDataList); cells.add(cellRenderData); } else { - //鍏朵綑鍒� - if (i % (angles + 1) == 1) { - //绔彛 - try { - textRenderData.setText(result2s.get(0).getPort().split(",")[(j - 5) + (i / (angles + 1)) * (Math.min(ports, 8))]); - } catch (Exception e) { - textRenderData.setText(""); - } - } else { - //鏈�宸�� - String[] value = result2s.get(0).getValue().split("\\],\\["); - String[] split = value[(i + (angles - 1)) % (angles + 1)].replaceAll("[\\[\\]\"]", "").split(","); - try { - textRenderData.setText(split[(j - 5) + ((i + (angles - 1)) / (angles + 1) - 1) * (Math.min(ports, 8))]); - } catch (Exception e) { - textRenderData.setText(""); - } - } - renderData.add(textRenderData); - paragraphRenderData.setContents(renderData); - paragraphRenderDataList.add(paragraphRenderData); - cellRenderData.setParagraphs(paragraphRenderDataList); - cells.add(cellRenderData); - } - } - if (inspectionItemSubclass.contains("鍚屾瀬鍖栭殧绂诲害")) { - List<InsProduct> products = insProducts.stream().filter(insProduct -> insProduct.getInspectionItemSubclass().equals("鍚屾瀬鍖栭殧绂诲害")).collect(Collectors.toList()); - List<InsProductResult2> result2s = insProductResult2s.stream() - .filter(insProductResult2 -> insProductResult2.getFrequency().equals(s) && insProductResult2.getInsProductId().equals(products.get(0).getId())) - .collect(Collectors.toList()); - int length = result2s.get(0).getPort().split(",").length; - int portRow2 = (length % (ports > 8 ? 4 : (ports + 1) / 2) == 0 ? length / (ports > 8 ? 4 : (ports + 1) / 2) : length / (ports > 8 ? 4 : (ports + 1) / 2) + 1); - int k = (angles + 1) * portRow2; - if (i > cc && i <= cc + k) { - dd = cc + k; - if (itemSet.add("鍚屾瀬鍖栭殧绂诲害")) { - index.getAndIncrement(); - } - //鍚屾瀬鍖栭殧绂诲害鎵�鍦ㄨ - if (j == 0) { - //绗竴鍒� - textRenderData.setText(index + "鈭�1" + index); - renderData.add(textRenderData); - paragraphRenderData.setContents(renderData); - paragraphRenderDataList.add(paragraphRenderData); - cellRenderData.setParagraphs(paragraphRenderDataList); - cells.add(cellRenderData); - } else if (j == 1) { - //绗簩鍒� - textRenderData.setText("鍚屾瀬鍖栭殧绂诲害鈭�2" + index); - renderData.add(textRenderData); - paragraphRenderData.setContents(renderData); - paragraphRenderDataList.add(paragraphRenderData); - cellRenderData.setParagraphs(paragraphRenderDataList); - cells.add(cellRenderData); - } else if (j == 2) { - //绗笁鍒� - textRenderData.setText(products.get(0).getUnit() + "鈭�3" + index); - renderData.add(textRenderData); - paragraphRenderData.setContents(renderData); - paragraphRenderDataList.add(paragraphRenderData); - cellRenderData.setParagraphs(paragraphRenderDataList); - cells.add(cellRenderData); - } else if (j == 3) { - //绗洓鍒� - textRenderData.setText(products.get(0).getAsk() + "鈭�4" + index); - renderData.add(textRenderData); - paragraphRenderData.setContents(renderData); - paragraphRenderDataList.add(paragraphRenderData); - cellRenderData.setParagraphs(paragraphRenderDataList); - cells.add(cellRenderData); - } else if (j == 4) { - //绗簲鍒� - if ((i - cc) % (angles + 1) == 1) { - //绔彛 - textRenderData.setText("绔彛"); - } else { - //瑙掑害 - textRenderData.setText(result2s.get(0).getAngle().split(",")[(i + (angles - 1)) % (angles + 1)]); - } - renderData.add(textRenderData); - paragraphRenderData.setContents(renderData); - paragraphRenderDataList.add(paragraphRenderData); - cellRenderData.setParagraphs(paragraphRenderDataList); - cells.add(cellRenderData); - } else if (j == bb - 1) { - //鏈�鍚庝竴鍒� - if ((i - cc) % (angles + 1) == 1) { - textRenderData.setText("/"); - } else { - //缁撹 - if (products.get(0).getInsResult() == 1) { - textRenderData.setText("鍚堟牸鈭�8" + index + ((i - cc) / (angles + 2))); - } else if (products.get(0).getInsResult() == 0) { - textRenderData.setText("涓嶅悎鏍尖垜8" + index + ((i - cc) / (angles + 2))); - } else { - textRenderData.setText("涓嶅垽瀹氣垜8" + index + ((i - cc) / (angles + 2))); - } - } - renderData.add(textRenderData); - paragraphRenderData.setContents(renderData); - paragraphRenderDataList.add(paragraphRenderData); - cellRenderData.setParagraphs(paragraphRenderDataList); - cells.add(cellRenderData); - } else { - //鍏朵綑鍒� - if ((i - cc) % (angles + 1) == 1) { - //绔彛 - if (j % 2 == 0) { - try { - textRenderData.setText(result2s.get(0).getPort().split(",")[(j - 6) / 2 + ((i - cc) / (angles + 1)) * (ports > 8 ? 4 : (ports + 1) / 2)] + "鈭�5" + i + (j - 6)); - } catch (Exception e) { - textRenderData.setText(""); - } - } else { - try { - textRenderData.setText(result2s.get(0).getPort().split(",")[(j - 5) / 2 + ((i - cc) / (angles + 1)) * (ports > 8 ? 4 : (ports + 1) / 2)] + "鈭�5" + i + (j - 5)); - } catch (Exception e) { - textRenderData.setText(""); - } - } - - } else { - //鏈�宸�� - String[] value = result2s.get(0).getValue().split("\\],\\["); - String[] split = value[(i + (angles - 1)) % (angles + 1)].replaceAll("[\\[\\]\"]", "").split(","); - if (j % 2 == 0) { - try { - textRenderData.setText(split[(j - 6) / 2 + ((i - cc) / (angles + 2)) * (ports > 8 ? 4 : (ports + 1) / 2)] + "鈭�5" + i + (j - 6)); - } catch (Exception e) { - textRenderData.setText(""); - } - } else { - try { - textRenderData.setText(split[(j - 5) / 2 + ((i - cc) / (angles + 2)) * (ports > 8 ? 4 : (ports + 1) / 2)] + "鈭�5" + i + (j - 5)); - } catch (Exception e) { - textRenderData.setText(""); - } - } - } - renderData.add(textRenderData); - paragraphRenderData.setContents(renderData); - paragraphRenderDataList.add(paragraphRenderData); - cellRenderData.setParagraphs(paragraphRenderDataList); - cells.add(cellRenderData); - } - } - } - if (inspectionItemSubclass.contains("寮傛瀬鍖栭殧绂诲害")) { - List<InsProduct> products = insProducts.stream().filter(insProduct -> insProduct.getInspectionItemSubclass().equals("寮傛瀬鍖栭殧绂诲害")).collect(Collectors.toList()); - List<InsProductResult2> result2s = insProductResult2s.stream() - .filter(insProductResult2 -> insProductResult2.getFrequency().equals(s) && insProductResult2.getInsProductId().equals(products.get(0).getId())) - .collect(Collectors.toList()); - int length = result2s.get(0).getPort().split(",").length; - int portRow2 = (length % (ports > 8 ? 4 : (ports + 1) / 2) == 0 ? length / (ports > 8 ? 4 : (ports + 1) / 2) : length / (ports > 8 ? 4 : (ports + 1) / 2) + 1); - int k = (angles + 1) * portRow2; - if (i > (dd == 0 ? cc : dd) && i <= (dd == 0 ? cc : dd) + k) { - ee = (dd == 0 ? cc : dd) + k; - if (itemSet.add("寮傛瀬鍖栭殧绂诲害")) { - index.getAndIncrement(); - } - //寮傛瀬鍖栭殧绂诲害鎵�鍦ㄨ - if (j == 0) { - //绗竴鍒� - textRenderData.setText(index + "鈭�1" + index); - renderData.add(textRenderData); - paragraphRenderData.setContents(renderData); - paragraphRenderDataList.add(paragraphRenderData); - cellRenderData.setParagraphs(paragraphRenderDataList); - cells.add(cellRenderData); - } else if (j == 1) { - //绗簩鍒� - textRenderData.setText("寮傛瀬鍖栭殧绂诲害鈭�2" + index); - renderData.add(textRenderData); - paragraphRenderData.setContents(renderData); - paragraphRenderDataList.add(paragraphRenderData); - cellRenderData.setParagraphs(paragraphRenderDataList); - cells.add(cellRenderData); - } else if (j == 2) { - //绗笁鍒� - textRenderData.setText(products.get(0).getUnit() + "鈭�3" + index); - renderData.add(textRenderData); - paragraphRenderData.setContents(renderData); - paragraphRenderDataList.add(paragraphRenderData); - cellRenderData.setParagraphs(paragraphRenderDataList); - cells.add(cellRenderData); - } else if (j == 3) { - //绗洓鍒� - textRenderData.setText(products.get(0).getAsk() + "鈭�4" + index); - renderData.add(textRenderData); - paragraphRenderData.setContents(renderData); - paragraphRenderDataList.add(paragraphRenderData); - cellRenderData.setParagraphs(paragraphRenderDataList); - cells.add(cellRenderData); - } else if (j == 4) { - //绗簲鍒� - if ((i - (dd == 0 ? cc : dd)) % (angles + 1) == 1) { - //绔彛 - textRenderData.setText("绔彛"); - } else { - //瑙掑害 - textRenderData.setText(result2s.get(0).getAngle().split(",")[(i + (angles - 1)) % (angles + 1)]); - } - renderData.add(textRenderData); - paragraphRenderData.setContents(renderData); - paragraphRenderDataList.add(paragraphRenderData); - cellRenderData.setParagraphs(paragraphRenderDataList); - cells.add(cellRenderData); - } else if (j == bb - 1) { - //鏈�鍚庝竴鍒� - if ((i - (dd == 0 ? cc : dd)) % (angles + 1) == 1) { - textRenderData.setText("/"); - } else { - //缁撹 - if (products.get(0).getInsResult() == 1) { - textRenderData.setText("鍚堟牸鈭�8" + index + ((i - (dd == 0 ? cc : dd)) / (angles + 2))); - } else if (products.get(0).getInsResult() == 0) { - textRenderData.setText("涓嶅悎鏍尖垜8" + index + ((i - (dd == 0 ? cc : dd)) / (angles + 2))); - } else { - textRenderData.setText("涓嶅垽瀹氣垜8" + index + ((i - (dd == 0 ? cc : dd)) / (angles + 2))); - } - } - renderData.add(textRenderData); - paragraphRenderData.setContents(renderData); - paragraphRenderDataList.add(paragraphRenderData); - cellRenderData.setParagraphs(paragraphRenderDataList); - cells.add(cellRenderData); - } else { //鍏朵綑鍒� if ((i - (dd == 0 ? cc : dd)) % (angles + 1) == 1) { //绔彛 @@ -1485,35 +1490,25 @@ tables.add(table); lable.getAndIncrement(); }); - }); - String url; - try { - ZipSecureFile.setMinInflateRatio(0.0001); - InputStream inputStream = this.getClass().getResourceAsStream("/static/word1.docx"); - File file = File.createTempFile("temp", ".tmp"); - OutputStream outputStream = new FileOutputStream(file); - IOUtils.copy(inputStream, outputStream); - url = file.getAbsolutePath(); - } catch (FileNotFoundException e) { - throw new ErrorException("鎵句笉鍒版ā鏉挎枃浠�"); - } catch (IOException e) { - throw new RuntimeException(e); - } + ZipSecureFile.setMinInflateRatio(0.0001); + InputStream inputStream = this.getClass().getResourceAsStream("/static/word1.docx"); + ConfigureBuilder builder = Configure.builder(); builder.useSpringEL(true); - XWPFTemplate template = XWPFTemplate.compile(url, builder.build()).render( + XWPFTemplate template = XWPFTemplate.compile(inputStream, builder.build()).render( new HashMap<String, Object>() {{ put("title", title); put("tables", tables); }}); - String name = insOrder.getEntrustCode().replace("/", "") + "-" + title + ".docx"; + String name = insOrder.getEntrustCode().replace("/", "") + "-" +insSample.getSampleCode()+"-"+ title + ".docx"; + String url = UUID.randomUUID() + "_" + name; try { - template.writeAndClose(Files.newOutputStream(Paths.get(wordUrl + "/" + name))); + template.writeAndClose(Files.newOutputStream(Paths.get(wordUrl + "/" + url))); } catch (IOException e) { throw new RuntimeException(e); } // 澶勭悊鍚堝苟鍗曞厓鏍肩殑闂 - String path = wordUrl + "/" + name; + String path = wordUrl + "/" + url; try { ZipSecureFile.setMinInflateRatio(0.0001); FileInputStream stream = new FileInputStream(path); @@ -1589,27 +1584,27 @@ } 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(name); + insOrderFile.setFileUrl(url); insOrderFile.setSonLaboratory("鐢佃矾璇曢獙"); insOrderFileMapper.insert(insOrderFile); } //鐢熸垚鎬绘姤鍛� - public void generateReport(Integer orderId, List<InsReportDto1> insReportDto1s) { + public void generateReport(Integer orderId, InsReportDto1 insReportDto1) { LocalDateTime now = LocalDateTime.now(); InsOrder insOrder = insOrderMapper.selectById(orderId); //濮旀墭閮ㄩ棬 departLims String departLims = userMapper.selectDepartLims(insOrder.getPrepareUser()); - //samples鏄繃婊ゆ帀娌℃湁妫�楠岄」鐩殑鏍峰搧 - List<SampleProductDto> samples = insSampleMapper.selectSampleProductListByOrderId(orderId); - String sampleCode = samples.get(0).getSampleCode(); + SampleProductDto insSample = insSampleMapper.selectSampleProductListByOrderId(insReportDto1.getSampleId()); + String sampleCode = insSample.getSampleCode(); InsReport insReport = new InsReport(); - insReport.setCode(insOrder.getEntrustCode().replace("WT", "TXJC")); + insReport.setCode(giveCode.giveCode("TXJC-", "ins_report", "-", "yyMMdd")); + insReport.setInsSampleId(insSample.getId()); insReport.setInsOrderId(orderId); Set<String> standardMethod = new HashSet<>(); Set<String> deviceSet = new HashSet<>(); @@ -1620,7 +1615,7 @@ AtomicReference<Integer> productSize2 = new AtomicReference<>(0); AtomicReference<Integer> productSize3 = new AtomicReference<>(0); String[] monthNames = {"January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"}; - samples.forEach(s -> { + SampleProductDto s=insSample; models.add(s.getModel()); standardMethod.addAll(standardMethodListMapper.selectList(Wrappers.<StandardMethodList>lambdaQuery() .in(StandardMethodList::getId, Arrays.stream(s.getStandardMethodListId().replaceAll("[\\[\\]]", "").split(",")) @@ -1657,13 +1652,13 @@ .collect(Collectors.toSet()); labToDeviceMap.put(entry.getKey(), productIds); } - for (InsReportDto1 insReportDto1 : insReportDto1s) { - String laboratory = insReportDto1.getLaboratory(); + for (InsReportDto2 insReportDto2 : insReportDto1.getInsReportDto2s()) { + String laboratory = insReportDto2.getLaboratory(); if (!labToDeviceMap.containsKey(laboratory)) { continue; } Set<Integer> productIds = labToDeviceMap.get(laboratory); - Integer num = insReportDto1.getNum(); + Integer num = insReportDto2.getNum(); //鏅�氳瘯楠岀粨鏋滆〃 List<InsProductResult> insProductResults = insProductResultMapper.selectList( Wrappers.<InsProductResult>lambdaQuery() @@ -1692,7 +1687,7 @@ } } } - }); + /*妫�楠屾儏鍐典竴瑙堣〃*/ List<Map<String, String>> tables = new ArrayList<>(); @@ -1701,7 +1696,7 @@ List<Map<String, Object>> tables4 = new ArrayList<>(); Integer indexs = 1; //鍒ゆ柇鏄惁鏈夌數璺瘯楠�,鐜璇曢獙 - List<String> strings = insReportDto1s.stream().map(InsReportDto1::getLaboratory).distinct().collect(Collectors.toList()); + List<String> strings = insReportDto1.getInsReportDto2s().stream().map(InsReportDto2::getLaboratory).distinct().collect(Collectors.toList()); if (strings.contains("杩戝満") || strings.contains("杩滃満")) { Map<String, String> table = new HashMap<>(); table.put("indexs", indexs + ""); @@ -1712,6 +1707,7 @@ /*杈愬皠鐨勮瘯楠岃〃*/ List<InsOrderFile> insOrderFiles = insOrderFileMapper.selectList(Wrappers.<InsOrderFile>lambdaQuery() .eq(InsOrderFile::getInsOrderId, orderId) + .eq(InsOrderFile::getInsSampleId, insReportDto1.getSampleId()) .like(InsOrderFile::getFileName, "瑙f瀽鐨勮緪灏勭珯鐐规姤鍛�") .and(wrapper -> wrapper .eq(InsOrderFile::getSonLaboratory, "杩滃満") @@ -1815,8 +1811,7 @@ strings.remove("鐢佃矾璇曢獙"); strings.remove("杩戝満"); strings.remove("杩滃満"); - List<Integer> productIdes = samples.stream().flatMap(sampleProductDto -> - sampleProductDto.getInsProduct().stream().map(InsProduct::getId)).collect(Collectors.toList()); + List<Integer> productIdes = insSample.getInsProduct().stream().map(InsProduct::getId).collect(Collectors.toList()); List<Integer> collect = insProductResult2Mapper.selectList(Wrappers.<InsProductResult2>lambdaQuery() .in(InsProductResult2::getInsProductId, productIdes)) .stream().map(InsProductResult2::getResult).distinct().collect(Collectors.toList()); @@ -1851,9 +1846,9 @@ indexs += 1; /*鍒涘缓鐜璇曢獙鏉′欢琛�2*(椤圭洰鏁�+1)*/ - List<InsProduct> products = samples.stream().flatMap(sampleProductDto -> sampleProductDto.getInsProduct().stream() + List<InsProduct> products = insSample.getInsProduct().stream() .filter(insProduct -> !insProduct.getInspectionItem().equals("鐢佃矾璇曢獙")) - .filter(insProduct -> !insProduct.getInspectionItem().equals("杈愬皠璇曢獙"))) + .filter(insProduct -> !insProduct.getInspectionItem().equals("杈愬皠璇曢獙")) .map(insProduct -> { InsProduct product = new InsProduct(); product.setInspectionItemSubclass(insProduct.getInspectionItemSubclass()); @@ -1965,13 +1960,12 @@ indexs += 1; } /*鍕鹃�夌殑鐢佃矾璇曢獙琛�*/ - List<InsSample> insSamples = insSampleMapper.selectSample(orderId); - for (InsReportDto1 insReportDto1 : insReportDto1s) { - InsOrderUser insOrderUser = insOrderUserMapper.selectById(insReportDto1.getInsOrderUsersId()); + for (InsReportDto2 insReportDto2 : insReportDto1.getInsReportDto2s()) { + InsOrderUser insOrderUser = insOrderUserMapper.selectById(insReportDto2.getInsOrderUsersId()); InsOrderState orderState = insOrderStateMapper.selectById(insOrderUser.getInsOrderStateId()); if (orderState.getLaboratory().equals("鐢佃矾璇曢獙")) { orderState.setNum(insOrderUser.getNum()); - getWord1(insOrderUser.getTerm(), orderState, insSamples, tables2); + getWord1(insOrderUser.getTerm(), orderState, tables2); } } } @@ -1987,9 +1981,9 @@ tables.add(table2); /*鍒涘缓鐜璇曢獙鏉′欢琛�2*(椤圭洰鏁�+1)*/ - List<InsProduct> products = samples.stream().flatMap(sampleProductDto -> sampleProductDto.getInsProduct().stream() + List<InsProduct> products = insSample.getInsProduct().stream() .filter(insProduct -> !insProduct.getInspectionItem().equals("鐢佃矾璇曢獙")) - .filter(insProduct -> !insProduct.getInspectionItem().equals("杈愬皠璇曢獙"))) + .filter(insProduct -> !insProduct.getInspectionItem().equals("杈愬皠璇曢獙")) .map(insProduct -> { InsProduct product = new InsProduct(); product.setInspectionItemSubclass(insProduct.getInspectionItemSubclass()); @@ -2090,23 +2084,11 @@ tables4.add(table4); } } - - String url; - try { - ZipSecureFile.setMinInflateRatio(0.0001); - InputStream inputStream = this.getClass().getResourceAsStream("/static/report-template.docx"); - File file = File.createTempFile("temp", ".tmp"); - OutputStream outputStream = new FileOutputStream(file); - IOUtils.copy(inputStream, outputStream); - url = file.getAbsolutePath(); - } catch (FileNotFoundException e) { - throw new ErrorException("鎵句笉鍒版ā鏉挎枃浠�"); - } catch (IOException e) { - throw new RuntimeException(e); - } + ZipSecureFile.setMinInflateRatio(0.0001); + InputStream inputStream = this.getClass().getResourceAsStream("/static/report-template.docx"); StringBuilder standardMethod2 = new StringBuilder(); - for (String s : standardMethod) { - standardMethod2.append("锛沑n").append(s); + for (String s1 : standardMethod) { + standardMethod2.append("锛沑n").append(s1); } standardMethod2.append("锛沑n").append("GB/T 9410-2008 銆婄Щ鍔ㄩ�氫俊澶╃嚎閫氱敤鎶�鏈鑼冦��"); standardMethod2.replace(0, 1, ""); @@ -2116,8 +2098,8 @@ } Map<String, String> codeStr = new HashMap<>(); codeStr.put("鎶ュ憡缂栧彿", insReport.getCode()); - codeStr.put("鏍峰搧鍚嶇О", insOrder.getSample()); - codeStr.put("瑙勬牸鍨嬪彿", samples.get(0).getModel()); + codeStr.put("鏍峰搧鍚嶇О", insSample.getSample()); + codeStr.put("瑙勬牸鍨嬪彿", insSample.getModel()); codeStr.put("鍙戞斁鏃ユ湡", now.format(DateTimeFormatter.ofPattern("yyyy-MM-dd"))); String codePath; try { @@ -2139,7 +2121,9 @@ List<Map<String, String>> finalDeviceList = deviceList; List<Map<String, String>> sampleList = insSampleMapper.selectSampleList(orderId); Integer userId = insSampleUserMapper.selectOne(Wrappers.<InsSampleUser>lambdaQuery() - .eq(InsSampleUser::getInsSampleId, orderId).last("limit 1")).getUserId(); + .eq(InsSampleUser::getInsSampleId, insReportDto1.getSampleId()) + .eq(InsSampleUser::getState,0) + .last("limit 1")).getUserId(); String signatureUrl; try { signatureUrl = userMapper.selectById(userId).getSignatureUrl(); @@ -2171,17 +2155,18 @@ insOrder.setPhone("/"); } //妫�楠岄」鐩殑鐜 - InsProduct insProduct = insProductMapper.selectList(Wrappers.<InsProduct>lambdaQuery().eq(InsProduct::getState, 1).eq(InsProduct::getInsSampleId, samples.get(0).getId())).get(0); + InsProduct insProduct = insProductMapper.selectList(Wrappers.<InsProduct>lambdaQuery() + .eq(InsProduct::getState, 1) + .eq(InsProduct::getInsSampleId, insReportDto1.getSampleId())).get(0); String environment = ""; environment = (ObjectUtils.isNotEmpty(insProduct.getTemperature()) ? insProduct.getTemperature() + "鈩� " : "") + (ObjectUtils.isNotEmpty(insProduct.getHumidity()) ? insProduct.getHumidity() + "%" : ""); String finalEnvironment = environment; - List<SampleProductDto> finalSamples = samples; String title3 = ""; if (tables3.size() > 0) { title3 = "杈愬皠鏂瑰悜鍥惧弬鏁�"; } String finalTitle = title3; - XWPFTemplate template = XWPFTemplate.compile(url, builder.build()).render( + XWPFTemplate template = XWPFTemplate.compile(inputStream, builder.build()).render( new HashMap<String, Object>() {{ put("order", insOrder); put("report", insReport); @@ -2189,7 +2174,7 @@ put("sampleCode", sampleCode); put("environment", finalEnvironment); put("custom", custom); - put("sampleSize", finalSamples.size()); + put("sampleSize", "1"); put("standardMethod", (standardMethod2.toString().equals("null") ? "" : standardMethod2)); put("deviceList", finalDeviceList); put("tables", tables); @@ -2343,11 +2328,12 @@ //鐢佃矾鎶ュ憡鐢ㄤ簬鎬绘姤鍛婄殑鏂规硶 - private void getWord1(String term, InsOrderState insOrderState, List<InsSample> insSamples, List<Map<String, Object>> tables2) { + private void getWord1(String term, InsOrderState insOrderState,List<Map<String, Object>> tables2) { AtomicInteger lable = new AtomicInteger(1); AtomicInteger index = new AtomicInteger(); String title = term + "鐢佃矾鍙傛暟"; - insSamples.forEach(insSample -> { + InsSample insSample = insSampleMapper.selectById(insOrderState.getInsSampleId()); + //鏌ヨ椤圭洰 List<InsProduct> insProducts = insProductMapper.selectList(Wrappers.<InsProduct>lambdaQuery() .eq(InsProduct::getInsSampleId, insSample.getId()) @@ -3735,7 +3721,6 @@ tables2.add(table2); lable.getAndIncrement(); }); - }); } // 姘村钩鍚堝苟鍗曞厓鏍� -- Gitblit v1.9.3