From 1c683ded6a17523c47d7e1d853736562007d26bc Mon Sep 17 00:00:00 2001 From: value <z1292839451@163.com> Date: 星期一, 03 六月 2024 09:07:34 +0800 Subject: [PATCH] 完成光纤配置进行检验操作 --- inspect-server/src/main/java/com/yuanchu/mom/service/impl/InsOrderPlanServiceImpl.java | 54 +++++++++++++++++++++++++++++++++++++++++++----------- 1 files changed, 43 insertions(+), 11 deletions(-) diff --git a/inspect-server/src/main/java/com/yuanchu/mom/service/impl/InsOrderPlanServiceImpl.java b/inspect-server/src/main/java/com/yuanchu/mom/service/impl/InsOrderPlanServiceImpl.java index e08c4cc..fe95792 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 @@ -101,6 +101,9 @@ @Resource private UserMapper userMapper; + @Resource + private CustomMapper customMapper; + @Value("${file.path}") private String imgUrl; @@ -342,9 +345,8 @@ Integer num = (type == 1 ? 5 : 4); LocalDateTime now = LocalDateTime.now(); insOrderStateMapper.update(null, Wrappers.<InsOrderState>lambdaUpdate().eq(InsOrderState::getInsOrderId, orderId).eq(InsOrderState::getLaboratory, laboratory).set(InsOrderState::getInsTime, now).set(InsOrderState::getInsState, num).set(InsOrderState::getVerifyTell, tell).set(InsOrderState::getVerifyUser, getLook.selectPowerByMethodAndUserId(null).get("userId"))); - List<InsOrderState> insOrderStates = insOrderStateMapper.selectList(Wrappers.<InsOrderState>lambdaQuery().eq(InsOrderState::getInsOrderId, orderId)); - long count = insOrderStates.stream().filter(a -> a.getInsState() == 5).count(); - if (count == insOrderStates.size() && num == 5) { + Long count = insOrderStateMapper.selectCount(Wrappers.<InsOrderState>lambdaQuery().eq(InsOrderState::getInsOrderId, orderId).ne(InsOrderState::getInsState, 5)); + if (count == 0 && num == 5) { /*鏍峰搧涓嬬殑椤圭洰鍙鏈変竴涓」鐩笉鍚堟牸鍒欐楠岀粨鏋滀负0,鍚﹀垯涓�1*/ List<InsSample> insSamples = insSampleMapper.selectList(Wrappers.<InsSample>lambdaQuery().eq(InsSample::getInsOrderId, orderId)); for (InsSample insSample : insSamples) { @@ -359,7 +361,7 @@ } InsOrder insOrder = insOrderMapper.selectById(orderId); Map<String, String> user = insProductMapper.selectUserById(insOrder.getUserId()); - List<SampleProductDto> samples = insSampleMapper.selectSampleProductListByOrderId(orderId); + List<SampleProductDto> samples = insSampleMapper.selectSampleProductListByOrderId2(orderId); InsReport insReport = new InsReport(); insReport.setCode(insOrder.getEntrustCode()); insReport.setInsOrderId(orderId); @@ -371,13 +373,16 @@ Set<String> models = new HashSet<>(); AtomicReference<Integer> productSize = new AtomicReference<>(0); String[] monthNames = {"January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"}; + AtomicReference<String> resultCh = new AtomicReference<>(""); + AtomicReference<String> resultEn = new AtomicReference<>(""); samples.forEach(a -> { + Long productCount = insProductMapper.selectCount(Wrappers.<InsProduct>lambdaQuery().eq(InsProduct::getInsSampleId, a.getId())); + productSize.set(productSize.get()+Integer.parseInt(productCount+"")); models.add(a.getModel()); standardMethod.add(baseMapper.getStandardMethodCode(a.getStandardMethodListId())); Set<String> templateSet = new HashSet<>(); getTemplateThing(set, map2, a); for (InsProduct b : a.getInsProduct()) { - productSize.set(productSize.get() + 1); if (b.getInsProductResult() != null) { List<JSONObject> jsonObjects = JSON.parseArray(b.getInsProductResult().getEquipValue(), JSONObject.class); for (JSONObject jsonObject : jsonObjects) { @@ -508,6 +513,8 @@ textRenderData.setText("鈭�"); break; case 0: + resultCh.set(resultCh.get() + "銆�" + p.getInspectionItem() + (Objects.equals(p.getInspectionItemSubclass(), "") ?"":" "+p.getInspectionItemSubclass())); + resultEn.set(resultEn.get() + "銆�" + p.getInspectionItemEn() + ((Objects.equals(p.getInspectionItemSubclassEn(), "")||Objects.equals(p.getInspectionItemSubclassEn(), null)) ?"":" "+p.getInspectionItemSubclassEn())); textRenderData.setText("脳"); break; default: @@ -544,6 +551,8 @@ textRenderData.setText("鉁�"); break; case 0: + resultCh.set(resultCh.get() + "銆�" + p.getInspectionItem() + (p.getInspectionItemSubclass().equals("")?"":" "+p.getInspectionItemSubclass())); + resultEn.set(resultEn.get() + "銆�" + p.getInspectionItemEn() + ((Objects.equals(p.getInspectionItemSubclassEn(), "")||Objects.equals(p.getInspectionItemSubclassEn(), null)) ?"":" "+p.getInspectionItemSubclassEn())); textRenderData.setText("鉁�"); break; default: @@ -577,9 +586,21 @@ } TextRenderData[] text2 = text.toArray(new TextRenderData[0]); rowRenderData = Rows.of(text2).rowAtleastHeight(1).center().create(); - rows.add(rowRenderData); + if(rowRenderData.getCells().size()!=0){ + rows.add(rowRenderData); + } TableRenderData tableRenderData = new TableRenderData(); tableRenderData.setRows(rows); + int countSize = tableRenderData.getRows().get(0).getCells().size(); + for (RowRenderData row : tableRenderData.getRows()) { + /*for (CellRenderData cell : row.getCells()) { + System.out.print(cell.getParagraphs().get(0).getContents()); + } + System.out.println("");*/ + if(row.getCells().size()!=countSize){ + throw new ErrorException("姣忚鍗曞厓鏍间笉鐩哥瓑"); + } + } TableStyle tableStyle = new TableStyle(); tableStyle.setColWidths(new int[]{650, 1600, 2000, 750, 2800, 1100, 1100}); tableStyle.setWidth("10000"); @@ -653,14 +674,20 @@ } catch (Exception e) { throw new ErrorException("鎵句笉鍒版楠屼汉鐨勭鍚�"); } - if (signatureUrl == null || "".equals(signatureUrl)) { - throw new ErrorException("鎵句笉鍒版楠屼汉鐨勭鍚�"); + Custom custom = customMapper.selectById(user.get("company")); + if(!resultCh.get().equals("")){ + resultCh.set("渚濇嵁濮旀墭瑕佹眰锛�"+resultCh.get().replaceFirst("銆�", "")+"绛夋墍妫�椤圭洰涓嶇鍚堣姹傦紝鍏朵綑鎵�妫�椤圭洰鍧囩鍚堣姹傘��"); + resultEn.set("According to commissioned requirements,"+resultEn.get().replaceFirst("銆�", "")+" these inspected items do not meet the requirements, all other inspected items meet the requirements."); + }else{ + resultCh.set("渚濇嵁濮旀墭瑕佹眰锛屾墍妫�椤圭洰鍧囩鍚堣姹傘��"); + resultEn.set("According to commissioned requirements, all the tested items meet the requirements."); } XWPFTemplate template = XWPFTemplate.compile(url, builder.build()).render( new HashMap<String, Object>() {{ put("order", insOrder); put("report", insReport); put("user", user); + put("custom", custom); put("sampleSize", samples.size()); put("tables", tables); put("tableSize", tables.size() + 1); @@ -685,6 +712,8 @@ put("seal2", null); put("formTypeCh", formType); put("formTypeEn", insOrder.getFormType()); + put("resultCh", resultCh.get()); + put("resultEn", resultEn.get()); }}); try { String name = insReport.getCode().replace("/", "") + ".docx"; @@ -791,13 +820,16 @@ public int submitPlan(Integer orderId, String laboratory, Integer verifyUser) { List<InsSample> insSamples = insSampleMapper.selectList(Wrappers.<InsSample>lambdaQuery().eq(InsSample::getInsOrderId, orderId).select(InsSample::getId)); List<Integer> ids = insSamples.stream().map(a -> a.getId()).collect(Collectors.toList()); - List<InsProduct> insProducts = insProductMapper.selectList(Wrappers.<InsProduct>lambdaQuery().in(InsProduct::getInsSampleId, ids).eq(InsProduct::getSonLaboratory, laboratory).eq(InsProduct::getState, 1).isNull(InsProduct::getInsResult)); + List<InsProduct> insProducts = insProductMapper.selectList(Wrappers.<InsProduct>lambdaQuery().in(InsProduct::getInsSampleId, ids).eq(InsProduct::getSonLaboratory, laboratory).eq(InsProduct::getState, 1).isNull(InsProduct::getInsResult).isNull(InsProduct::getInsFiberId).isNull(InsProduct::getInsFibersId)); + insProducts.addAll(insProductMapper.selectFiberInsProduct(ids)); if (insProducts.size() > 0) { String str = ""; + int count = 0; for (InsProduct product : insProducts) { - str += product.getInspectionItem() + " " + product.getInspectionItemSubclass() + "锛�"; + count++; + str += "<br/>"+count + "锛�" +product.getInspectionItem() + " " + product.getInspectionItemSubclass() + "<br/>"; } - throw new ErrorException("浠ヤ笅鏄湭妫�楠岀殑椤圭洰锛�" + str); + throw new ErrorException("<strong>瀛樺湪寰呮楠岀殑椤圭洰锛�</strong><br/>" + str); } insOrderStateMapper.update(null, Wrappers.<InsOrderState>lambdaUpdate().eq(InsOrderState::getInsOrderId, orderId).eq(InsOrderState::getLaboratory, laboratory).set(InsOrderState::getInsTime, LocalDateTime.now()).set(InsOrderState::getInsState, 3).set(InsOrderState::getVerifyUser, verifyUser)); Integer userId = getLook.selectPowerByMethodAndUserId(null).get("userId"); -- Gitblit v1.9.3