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