From b03b37e1d649631e31f33704a49a46f05aa7dc9f Mon Sep 17 00:00:00 2001 From: Crunchy <3114200645@qq.com> Date: 星期三, 03 七月 2024 16:14:21 +0800 Subject: [PATCH] 2024-7-3 标准库的导入 --- inspect-server/src/main/java/com/yuanchu/mom/service/impl/StandardTreeServiceImpl.java | 178 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++--- 1 files changed, 168 insertions(+), 10 deletions(-) diff --git a/inspect-server/src/main/java/com/yuanchu/mom/service/impl/StandardTreeServiceImpl.java b/inspect-server/src/main/java/com/yuanchu/mom/service/impl/StandardTreeServiceImpl.java index c0339db..8a3deb0 100644 --- a/inspect-server/src/main/java/com/yuanchu/mom/service/impl/StandardTreeServiceImpl.java +++ b/inspect-server/src/main/java/com/yuanchu/mom/service/impl/StandardTreeServiceImpl.java @@ -68,6 +68,10 @@ @Override @Transactional(rollbackFor = Exception.class) public int addStandardTree(StandardTree standardTree) { + StandardTree tree = standardTreeMapper.selectOne(Wrappers.<StandardTree>lambdaQuery().eq(StandardTree::getModel, standardTree.getModel())); + if (tree != null) { + throw new ErrorException("璇ュ瀷鍙峰凡瀛樺湪"); + } return standardTreeMapper.insert(standardTree); } @@ -77,7 +81,11 @@ String[] trees = tree.split(" - "); switch (trees.length) { case 5: - standardTreeMapper.delete(Wrappers.<StandardTree>lambdaUpdate().eq(StandardTree::getFactory, trees[0]).eq(StandardTree::getLaboratory, trees[1]).eq(StandardTree::getSampleType, trees[2]).eq(StandardTree::getSample, trees[3]).eq(StandardTree::getModel, trees[4])); + if (trees[3] == null) { + standardTreeMapper.delete(Wrappers.<StandardTree>lambdaUpdate().eq(StandardTree::getFactory, trees[0]).eq(StandardTree::getLaboratory, trees[1]).eq(StandardTree::getSampleType, trees[2]).isNull(StandardTree::getSample).eq(StandardTree::getModel, trees[4])); + } else { + standardTreeMapper.delete(Wrappers.<StandardTree>lambdaUpdate().eq(StandardTree::getFactory, trees[0]).eq(StandardTree::getLaboratory, trees[1]).eq(StandardTree::getSampleType, trees[2]).eq(StandardTree::getSample, trees[3]).eq(StandardTree::getModel, trees[4])); + } break; /*case 4: standardTreeMapper.delete(Wrappers.<StandardTree>lambdaUpdate().eq(StandardTree::getFactory, trees[0]).eq(StandardTree::getLaboratory, trees[1]).eq(StandardTree::getSampleType, trees[2]).eq(StandardTree::getSample, trees[3])); @@ -134,7 +142,7 @@ public int upStandardProducts(Map<String, Object> product) { List<Integer> ids = JSON.parseArray(product.get("ids") + ""); StandardProductList productList = JSON.parseObject(JSON.toJSONString(product.get("standardProductList")), StandardProductList.class); - if(productList.getMethodS() != null){ + if (productList.getMethodS() != null) { standardProductListMapper.update(productList, Wrappers.<StandardProductList>lambdaUpdate().in(StandardProductList::getId, ids).like(StandardProductList::getMethod, productList.getMethodS())); return 1; } @@ -150,6 +158,10 @@ .select(StandardTree::getModel, StandardTree::getSample)); } + /** + * 娌冲彛妫�娴嬩腑蹇冨鍏� + * @param file + */ @Override @Transactional(rollbackFor = Exception.class) public void inExcelOfTree(MultipartFile file) { @@ -177,6 +189,10 @@ str.setStandardMethodListId(standardMethodId); str.setSampleType(list.get(1) + ""); if (list.get(2) != null) { + String sample = baseMapper.selSample(list.get(2) + ""); + if (sample == null) { + throw new ErrorException("鏍峰搧涓嶅瓨鍦細" + list.get(2)); + } str.setSample(list.get(2) + ""); } else { str.setSample(null); @@ -206,7 +222,7 @@ } StandardProductList db_str; try { - db_str = standardProductListMapper.getOne(str.getStandardMethodListId(),str.getInspectionItem(),str.getSample(),str.getInspectionItemSubclass(),str.getModel()); + db_str = standardProductListMapper.getOne(str.getStandardMethodListId(), str.getInspectionItem(), str.getSample(), str.getInspectionItemSubclass(), str.getModel()); } catch (Exception e) { throw new ErrorException("閲嶅鏌ヨ锛�" + str.getInspectionItem() + " " + str.getInspectionItemSubclass()); } @@ -215,7 +231,7 @@ str.setStructureItemParameterId(db_str.getStructureItemParameterId()); } if (list.get(8) != null) { - str.setMethodS(list.get(8)+""); + str.setMethodS(list.get(8) + ""); } if (list.get(11) == null) { @@ -251,18 +267,150 @@ str.setFactory("涓ぉ绉戞妧妫�娴嬩腑蹇�"); str.setLaboratory(laboratory.get()); str.setState(1); - str.setTree(str.getFactory() + " - " + str.getLaboratory() + " - " + str.getSampleType() + " - " + str.getSample() + " - " + (str.getModel() == null?"":str.getModel())); - str.setStructureItemParameterId(standardTreeMapper.getStructureItemParameterId("\""+str.getSampleType()+"\"", str.getInspectionItem(), str.getInspectionItemSubclass())); - if(str.getStructureItemParameterId() == null){ + str.setTree(str.getFactory() + " - " + str.getLaboratory() + " - " + str.getSampleType() + " - " + str.getSample() + " - " + (str.getModel() == null ? "" : str.getModel())); + try { + str.setStructureItemParameterId(standardTreeMapper.getStructureItemParameterId("\"" + str.getSampleType() + "\"", str.getInspectionItem(), str.getInspectionItemSubclass())); + } catch (Exception e) { + str.setStructureItemParameterId(standardTreeMapper.getStructureItemParameterId("\"" + str.getSampleType() + "\",\"" + str.getSample() + "\"", str.getInspectionItem(), str.getInspectionItemSubclass())); + } + if (str.getStructureItemParameterId() == null) { throw new ErrorException("妫�楠岄」鐩笉瀛樺湪锛�" + str.getInspectionItem() + " " + str.getInspectionItemSubclass()); } lists.add(str); } }); - lists.forEach(a->{ - if(a.getId() != null){ + lists.forEach(a -> { + if (a.getId() != null) { standardProductListMapper.updateById(a); - }else{ + } else { + standardProductListMapper.insert(a); + } + }); + } + + @Override + public void importWorkstationExcel(MultipartFile file) { + InputStream inputStream; + try { + inputStream = file.getInputStream(); + } catch (IOException e) { + throw new RuntimeException(e); + } + List<StandardProductList> lists = new ArrayList<>(); + AtomicReference<String> laboratory = new AtomicReference<>(); + ExcelUtil.readBySax(inputStream, 0, (i, l, list) -> { + StandardProductList str = new StandardProductList(); + if (i == 0 && l == 1) { + laboratory.set(standardTreeMapper.getLaboratory(list.get(1) + "")); + if (laboratory.get() == null) { + throw new ErrorException("妫�楠屽璞′笉瀛樺湪锛�" + list.get(1)); + } + } + if (i == 0 && l >= 1) { + Integer standardMethodId = standardMethodListService.getStandardMethodId(list.get(0) + ""); + if (standardMethodId == null) { + throw new ErrorException("鏍囧噯缂栧彿涓嶅瓨鍦細" + list.get(0)); + } + str.setStandardMethodListId(standardMethodId); + str.setSampleType(list.get(1) + ""); + if (list.get(2) != null) { + String sample = baseMapper.selSample(list.get(2) + ""); + if (sample == null) { + throw new ErrorException("鏍峰搧涓嶅瓨鍦細" + list.get(2)); + } + str.setSample(list.get(2) + ""); + } else { + str.setSample(null); + } + if (list.get(3) != null) { + str.setModel(list.get(3) + ""); + Long aLong = standardTreeMapper.selectCount(Wrappers.<StandardTree>lambdaQuery() + .eq(StandardTree::getModel, str.getModel()) + .eq(StandardTree::getSampleType, list.get(1) + "")); + if (aLong == 0) { + StandardTree standardTree = new StandardTree(); + standardTree.setFactory("涓ぉ绉戞妧妫�娴嬩腑蹇�"); + standardTree.setLaboratory(laboratory.get()); + standardTree.setSampleType(str.getSampleType()); + standardTree.setSample(str.getSample()); + standardTree.setModel(str.getModel()); + standardTreeMapper.insert(standardTree); + } + } else { + str.setModel(null); + } + str.setInspectionItemClass(list.get(4).toString()); + str.setInspectionItemClassEn(list.get(5).toString()); + // 寮�濮嬪姞2 + str.setInspectionItem(list.get(6) + ""); + if (list.get(8) == null) { + str.setInspectionItemSubclass(""); + } else { + str.setInspectionItemSubclass(list.get(8).toString()); + } + StandardProductList db_str; + try { + db_str = standardProductListMapper.getOne(str.getStandardMethodListId(), str.getInspectionItem(), str.getSample(), str.getInspectionItemSubclass(), str.getModel()); + } catch (Exception e) { + throw new ErrorException("閲嶅鏌ヨ锛�" + str.getInspectionItem() + " " + str.getInspectionItemSubclass()); + } + if (ObjectUtils.isNotEmpty(db_str)) { + str.setId(db_str.getId()); + str.setStructureItemParameterId(db_str.getStructureItemParameterId()); + } + if (list.get(10) != null) { + str.setMethodS(list.get(10) + ""); + } + + if (list.get(13) == null) { + str.setTell(null); + } else { + str.setTell(list.get(13).toString()); + } + + if (list.get(14) == null) { + str.setAsk(null); + } else { + str.setAsk(list.get(14).toString()); + } + + if (list.get(15) == null) { + str.setPrice(null); + } else { + str.setPrice((list.get(15).toString())); + } + + if (list.get(16) == null) { + str.setManHour(null); + } else { + str.setManHour(list.get(16).toString()); + } + + StandardTemplate standTempIdByName = standardTemplateService.getStandTempIdByName(String.valueOf(list.get(23))); + if (standTempIdByName != null) { + str.setTemplateId(standTempIdByName.getId()); + } else { + throw new ErrorException("妯℃澘涓嶅瓨鍦細" + list.get(23)); + } + str.setFactory("涓ぉ绉戞妧妫�娴嬩腑蹇�"); + str.setLaboratory(laboratory.get()); + str.setState(1); + str.setTree(str.getFactory() + " - " + str.getLaboratory() + " - " + str.getSampleType() + " - " + str.getSample() + " - " + (str.getModel() == null ? "" : str.getModel())); + try { + str.setStructureItemParameterId(standardTreeMapper.getStructureItemParameterId("\"" + str.getSampleType() + "\"", str.getInspectionItem(), str.getInspectionItemSubclass())); + } catch (Exception e) { + str.setStructureItemParameterId(standardTreeMapper.getStructureItemParameterId("\"" + str.getSampleType() + "\",\"" + str.getSample() + "\"", str.getInspectionItem(), str.getInspectionItemSubclass())); + } + if (str.getStructureItemParameterId() == null) { + throw new ErrorException("妫�楠岄」鐩笉瀛樺湪锛�" + str.getInspectionItem() + " " + str.getInspectionItemSubclass()); + } + lists.add(str); + } + }); + lists.forEach(a -> { + if (a.getId() != null) { + standardProductListMapper.updateById(a); + } else { standardProductListMapper.insert(a); } }); @@ -277,6 +425,16 @@ public void resetTreeOfHour(String tree, Integer standardId) { standardProductListMapper.update(null, Wrappers.<StandardProductList>lambdaUpdate().like(StandardProductList::getTree, tree).eq(StandardProductList::getStandardMethodListId, standardId).set(StandardProductList::getManHour, null)); } + + @Override + public void resetTreeOfAsk(String tree, Integer standardId) { + standardProductListMapper.update(null, Wrappers.<StandardProductList>lambdaUpdate().like(StandardProductList::getTree, tree).eq(StandardProductList::getStandardMethodListId, standardId) + .set(StandardProductList::getAsk, null) + .set(StandardProductList::getTell, null) + .set(StandardProductList::getSection, null) + .set(StandardProductList::getPrice, null) + .set(StandardProductList::getManHour, null)); + } } -- Gitblit v1.9.3