From 09d162f650213d4d48c611d0d8ce4aa7628daf76 Mon Sep 17 00:00:00 2001 From: zss <zss@example.com> Date: 星期二, 18 六月 2024 16:35:59 +0800 Subject: [PATCH] 报告生成添加附件 --- inspect-server/src/main/java/com/yuanchu/mom/service/impl/InsOrderServiceImpl.java | 59 +++++++++++++++++++++++++++++++++++++++++++++++------------ 1 files changed, 47 insertions(+), 12 deletions(-) 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 a832e63..f38a6eb 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 @@ -24,10 +24,7 @@ import java.time.LocalDate; import java.time.LocalDateTime; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import java.util.Objects; +import java.util.*; import java.util.concurrent.atomic.AtomicInteger; import java.util.stream.Collectors; @@ -133,7 +130,7 @@ public int addInsOrder(List<SampleProductDto> list, InsOrder insOrder, List<List<Integer>> pairing) { insOrder.setState(0); String code = customMapper.selectById(insOrder.getCompanyId()).getCode2(); - insOrder.setEntrustCode(giveCode.giveCode("JCZX-" + code + "-", "ins_order", "-", "yyyyMMdd")); + insOrder.setEntrustCode(giveCode.giveCode("JCZX-" + code + "-", "ins_order", "", "yyMMdd")); insOrderMapper.insert(insOrder); AtomicInteger count = new AtomicInteger(); list.forEach(a -> { @@ -141,11 +138,43 @@ a.setId(null); a.setInsOrderId(insOrder.getId()); if (StrUtil.isEmpty(a.getSampleCode())) { - a.setSampleCode(giveCode.giveCode("", "ins_sample", "", "yyMMdd")+"-"+count.get()); + a.setSampleCode(insOrder.getEntrustCode().split("-")[2]+"-"+count.get()); } insSampleMapper.insert(a); if (ObjectUtil.isNotEmpty(a.getInsProduct())) { addInsProductMethod(a.getId(), a.getInsProduct(), null, 0); + } + if(ObjectUtil.isNotEmpty(a.getInsulating())){ + List<InsProduct> ip2 = new ArrayList<>(); + for (Integer i = 0; i < a.getInsulating().getNum(); i++) { + ip2.addAll(a.getInsulating().getInsProduct()); + } + for (InsProduct product : ip2) { + product.setStandardMethodListId(a.getInsulating().getStandardMethodListId()); + } + addInsProductMethod(a.getId(), ip2, null, 0); + } + if(ObjectUtil.isNotEmpty(a.getSheath())){ + for (InsProduct product : a.getSheath().getInsProduct()) { + product.setStandardMethodListId(a.getSheath().getStandardMethodListId()); + } + addInsProductMethod(a.getId(), a.getSheath().getInsProduct(), null, 0); + } + if(ObjectUtil.isNotEmpty(a.getChildSampleList())){ + for (SampleProductDto b : a.getChildSampleList()) { + for (int i = 0; i < b.getNum(); i++) { + b.setId(null); + b.setInsOrderId(insOrder.getId()); + b.setParentId(a.getId()); + if (StrUtil.isEmpty(b.getSampleCode())) { + b.setSampleCode(giveCode.giveCode("", "ins_sample", "", "yyMMdd")); + } + insSampleMapper.insert(b); + if (ObjectUtil.isNotEmpty(b.getInsProduct())) { + addInsProductMethod(b.getId(), b.getInsProduct(), null, 0); + } + } + } } if (ObjectUtil.isNotEmpty(a.getBushing())) { for (BushingDto bushingDto : a.getBushing()) { @@ -172,22 +201,28 @@ } } } - }); + }) ; for (List<Integer> i : pairing) { - SampleProductDto sample = JSON.parseObject(JSON.toJSONString(list.get(i.get(0))), SampleProductDto.class); + SampleProductDto sample = JSON.parseObject(JSON.toJSONString(list.get(i.get(0) - 1)), SampleProductDto.class); sample.setSampleCode(list.get(i.get(0)-1).getSampleCode() + "/" +list.get(i.get(1)-1).getSampleCode()); sample.setId(null); insSampleMapper.insert(sample); - InsProduct insProduct = sample.getInsProduct().stream().filter(a -> Objects.equals(a.getInspectionItem(), "鐔旀帴鎹熻��")).findFirst().get(); - insProduct.setId(null); - insProduct.setInsSampleId(sample.getId()); - insProductMapper.insert(insProduct); + try { + InsProduct insProduct = sample.getInsProduct().stream().filter(a -> Objects.equals(a.getInspectionItem(), "鐔旀帴鎹熻��")).findFirst().get(); + insProduct.setId(null); + insProduct.setInsSampleId(sample.getId()); + insProductMapper.insert(insProduct); + }catch (Exception e){} } return insOrder.getId(); } private void addInsProductMethod(Integer sampleId, List<InsProduct> productList, Integer id, Integer type) { for (InsProduct product : productList) { + if(product.getState()==1 && (product.getAsk().indexOf("D")>-1||product.getAsk().indexOf("W")>-1||product.getAsk().indexOf("X")>-1 + ||product.getAsk().indexOf("RTS")>-1||product.getAsk().indexOf("H")>-1||product.getAsk().indexOf("L")>-1)){ + throw new ErrorException("鎻愪氦澶辫触锛屽瓨鍦ㄦ湭濉啓鐨勫彉閲忥細"+product.getInspectionItem()+" "+product.getInspectionItemSubclass()); + } if(product.getState()==1 && !product.getInspectionItem().equals("鐔旀帴鎹熻��")){ switch (type){ case 1: -- Gitblit v1.9.3