From 9f19d3a24f8474bf6f9eb9401888c44b34b381e6 Mon Sep 17 00:00:00 2001 From: zss <zss@example.com> Date: 星期四, 21 十一月 2024 14:29:50 +0800 Subject: [PATCH] 第一次改动(检验任务与样品关联,附件与样品关联,报告与样品关联) --- inspect-server/src/main/java/com/yuanchu/mom/service/impl/InsOrderPlanServiceImpl.java | 279 +++++++++++++++++++++++++------------------------------ 1 files changed, 125 insertions(+), 154 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 b4c8a56..69a5707 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 @@ -78,8 +78,6 @@ private ShiftTimeMapper shiftTimeMapper; @Resource private PerformanceShiftMapper performanceShiftMapper; - @Resource - private WarehouseHistoryMapper warehouseHistoryMapper; @Resource private WarehouseService warehouseService; @@ -87,14 +85,8 @@ @Value("${wordUrl}") private String wordUrl; - @Value("${twoCode}") - private String twoCode; - @Resource WordUtils wordUtils; - - @Resource - private InsReportMapper insReportMapper; @Resource private InsProductResultMapper insProductResultMapper; @@ -119,9 +111,6 @@ @Resource private UserMapper userMapper; - - @Resource - private CustomMapper customMapper; @Value("${file.path}") private String imgUrl; @@ -180,20 +169,23 @@ } @Override - public Map<String, Object> doInsOrder(Integer id, String laboratory) { + public Map<String, Object> doInsOrder(Integer sampleId, String laboratory) { + InsSample insSample = insSampleMapper.selectById(sampleId); InsOrder insOrder = new InsOrder(); - insOrder.setId(id); - InsOrder order = insOrderMapper.selectById(id); + insOrder.setId(insSample.getInsOrderId()); + InsOrder order = insOrderMapper.selectById(insSample.getInsOrderId()); if (BeanUtil.isEmpty(order.getInsTime())) { - insOrder.setInsTime(LocalDateTime.now()); + insOrder.setInsTime(LocalDateTime.now());//璁㈠崟鐨勬楠屾椂闂� insOrderMapper.updateById(insOrder); + //鏇存柊妫�楠屼换鍔¤〃鐨勬楠屾椂闂� insOrderStateMapper.update(null, Wrappers.<InsOrderState>lambdaUpdate() - .eq(InsOrderState::getInsOrderId, id) + .eq(InsOrderState::getInsOrderId, insSample.getInsOrderId()) + .eq(InsOrderState::getInsSampleId, sampleId) .eq(InsOrderState::getLaboratory, laboratory) .set(InsOrderState::getInsTime, LocalDateTime.now()) .set(InsOrderState::getInsState, 1)); } - Map<String, Object> map = insOrderService.getInsOrderAndSample(id, laboratory); + Map<String, Object> map = insOrderService.getInsOrderAndSample(sampleId, laboratory); List<SampleProductDto> list = JSON.parseArray(JSON.toJSONString(map.get("sampleProduct")), SampleProductDto.class); map.put("sampleProduct", list); return map; @@ -220,9 +212,6 @@ insProduct.setInsProductResult(insProductResult); } } - /*if (insProducts.size() == 0) { - insProducts = insSampleMapper.getIns2Product1(id, laboratory); - }*/ break; case 1: //鍏夌氦甯� @@ -270,12 +259,10 @@ } @Override - public List<String> checkSubmitPlan(Integer orderId, String laboratory) { + public List<String> checkSubmitPlan(Integer sampleId, String laboratory) { List<String> collect = new ArrayList<>(); - 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::getInsSampleId, sampleId) .eq(InsProduct::getSonLaboratory, laboratory) .eq(InsProduct::getState, 1) .eq(InsProduct::getInsResult, 0)); @@ -294,17 +281,22 @@ Integer insOrderId = insOrderFile.getInsOrderId(); insOrderFile.setInsOrderId(null); String sonLaboratory = null; + Integer sampleId = null; if (ObjectUtils.isNotEmpty(insOrderFile.getSonLaboratory())) { sonLaboratory = insOrderFile.getSonLaboratory(); insOrderFile.setSonLaboratory(null); } - IPage<InsOrderFile> insOrderFileIPage = insOrderFileMapper.getFileList(page, QueryWrappers.queryWrappers(insOrderFile), insOrderId, sonLaboratory); + if (ObjectUtils.isNotEmpty(insOrderFile.getInsSampleId())) { + sampleId = insOrderFile.getInsSampleId(); + insOrderFile.setInsSampleId(null); + } + IPage<InsOrderFile> insOrderFileIPage = insOrderFileMapper.getFileList(page, QueryWrappers.queryWrappers(insOrderFile), insOrderId, sonLaboratory,sampleId); map.put("body", insOrderFileIPage); return map; } @Override - public int uploadFile(Integer orderId, MultipartFile file, String sonLaboratory) { + public int uploadFile(Integer orderId, MultipartFile file, String sonLaboratory, Integer sampleId) { String urlString; String pathName; String path; @@ -312,6 +304,9 @@ String contentType = file.getContentType(); InsOrderFile insOrderFile = new InsOrderFile(); insOrderFile.setInsOrderId(orderId); + if (ObjectUtils.isNotEmpty(sampleId)) { + insOrderFile.setInsSampleId(sampleId); + } insOrderFile.setFileName(filename); if (contentType != null && contentType.startsWith("image/")) { // 鏄浘鐗� @@ -327,34 +322,21 @@ if (!realpath.exists()) { realpath.mkdirs(); } - pathName = file.getOriginalFilename().replace("#","&"); + pathName = UUID.randomUUID() + "_"+file.getOriginalFilename().replace("#", "&"); urlString = realpath + "/" + pathName; file.transferTo(new File(urlString)); insOrderFile.setFileUrl(pathName); - if (ObjectUtils.isNotEmpty(sonLaboratory)) { - insOrderFile.setSonLaboratory(sonLaboratory); - //鍒犻櫎閲嶅鐨勬暟鎹� - insOrderFileMapper.delete(Wrappers.<InsOrderFile>lambdaQuery() - .eq(InsOrderFile::getInsOrderId, orderId) - .eq(InsOrderFile::getType, insOrderFile.getType()) - .eq(InsOrderFile::getFileName, insOrderFile.getFileName()) - .eq(InsOrderFile::getSonLaboratory, insOrderFile.getSonLaboratory()) - .eq(InsOrderFile::getFileUrl, insOrderFile.getFileUrl())); - } else { - //鍒犻櫎閲嶅鐨勬暟鎹� - insOrderFileMapper.delete(Wrappers.<InsOrderFile>lambdaQuery() - .eq(InsOrderFile::getInsOrderId, orderId) - .eq(InsOrderFile::getType, insOrderFile.getType()) - .eq(InsOrderFile::getFileName, insOrderFile.getFileName()) - .isNull(InsOrderFile::getSonLaboratory) - .eq(InsOrderFile::getFileUrl, insOrderFile.getFileUrl())); - } insOrderFileMapper.insert(insOrderFile); //濡傛灉鏄緪灏勮瘯楠�(杩戝満/杩滅▼涓婁紶鐨刢sv鏂囦欢) String[] split = filename.split("\\."); if (ObjectUtils.isNotEmpty(sonLaboratory) && (sonLaboratory.equals("杩戝満") || sonLaboratory.equals("杩滃満")) && split[split.length - 1].equals("csv")) { - fuSheUtils.getFuSheWord(sonLaboratory, insOrderFile); + //鍒ゆ柇鏄摢绉峜sv鏂囦欢,鏄惁鏈夆�斺�� + if (!file.getOriginalFilename().contains("鈥斺��")) { + fuSheUtils.getFuSheWord1(sonLaboratory, insOrderFile); + } else { + fuSheUtils.getFuSheWord2(sonLaboratory, insOrderFile); + } } } catch (Exception e) { System.err.println("闄勪欢涓婁紶閿欒"); @@ -363,9 +345,11 @@ } @Override - public List<String> upPlanUser2(Integer orderId) { - List<Integer> sampleId = insSampleMapper.selectList(Wrappers.<InsSample>lambdaQuery().eq(InsSample::getInsOrderId, orderId)).stream().map(InsSample::getId).collect(Collectors.toList()); - List<String> sonLaboratory = insProductMapper.selectList(Wrappers.<InsProduct>lambdaQuery().eq(InsProduct::getState, 1).in(InsProduct::getInsSampleId, sampleId)).stream().map(InsProduct::getSonLaboratory).distinct().collect(Collectors.toList()); + public List<String> upPlanUser2(Integer sampleId) { + List<String> sonLaboratory = insProductMapper.selectList(Wrappers.<InsProduct>lambdaQuery() + .eq(InsProduct::getState, 1) + .eq(InsProduct::getInsSampleId, sampleId)) + .stream().map(InsProduct::getSonLaboratory).distinct().collect(Collectors.toList()); return sonLaboratory; } @@ -383,17 +367,15 @@ /*鏍峰搧鍏ュ簱*/ warehouseService.inWarehouse(trees, sampleCode); /*鏂板妫�楠屼换鍔�*/ - //鍏堝垽鏂璁㈠崟鏄惁鏈夎繖涓珯鐐圭殑椤圭洰 + //鍏堝垽鏂鏍峰搧鏄惁鏈夎繖涓珯鐐圭殑椤圭洰 InsSample insSample = insSampleMapper.selectOne(Wrappers.<InsSample>lambdaQuery().eq(InsSample::getSampleCode, sampleCode)); - List<Integer> sampleIds = insSampleMapper.selectList(Wrappers.<InsSample>lambdaQuery() - .eq(InsSample::getInsOrderId, insSample.getInsOrderId())).stream().map(InsSample::getId).collect(Collectors.toList()); List<String> collect = insProductMapper.selectList(Wrappers.<InsProduct>lambdaQuery() .eq(InsProduct::getState, 1) - .in(InsProduct::getInsSampleId, sampleIds)).stream().map(InsProduct::getSonLaboratory).collect(Collectors.toList()); + .eq(InsProduct::getInsSampleId, insSample.getId())).stream().map(InsProduct::getSonLaboratory).collect(Collectors.toList()); if (!collect.contains(sonLaboratory)) { - throw new ErrorException("璇ヨ鍗曟病鏈�" + sonLaboratory + "绔欑偣鐨勭浉鍏抽」鐩�,璇锋煡鐪嬩笅鍗曡鎯�!"); + throw new ErrorException("璇ユ牱鍝佹病鏈�" + sonLaboratory + "绔欑偣鐨勭浉鍏抽」鐩�,璇锋煡鐪嬩笅鍗曡鎯�!"); } - //鍒ゆ柇璇ヨ鍗曟槸鍚︾珯鐐逛换鍔℃湁缁撴潫璇曢獙 + //鍒ゆ柇璇ヨ鍗曟槸鍚︾珯鐐逛换鍔℃湁缁撴潫璇曢獙(鍙浠讳竴浠诲姟缁撴潫璇曢獙閮戒笉鑳藉啀娆¤瘯楠�) List<InsOrderState> orderStates = insOrderStateMapper.selectList(Wrappers.<InsOrderState>lambdaQuery() .eq(InsOrderState::getInsOrderId, insSample.getInsOrderId()) .eq(InsOrderState::getInsState, 5)); @@ -402,6 +384,7 @@ } InsOrderState orderState = insOrderStateMapper.selectOne(Wrappers.<InsOrderState>lambdaQuery() .eq(InsOrderState::getInsOrderId, insSample.getInsOrderId()) + .eq(InsOrderState::getInsSampleId, insSample.getId()) .eq(InsOrderState::getLaboratory, sonLaboratory)); if (ObjectUtils.isNotEmpty(orderState)) { //缁х画璇曢獙 @@ -409,12 +392,11 @@ orderState.setInsState(0); orderState.setNum(orderState.getNum() + 1);//閫掑 insOrderStateMapper.updateById(orderState); - } /*else { - throw new ErrorException("璇ヨ鍗曠珯鐐圭殑浠诲姟宸插垱寤�,鏃犳硶鍐嶆鍒涘缓!"); - }*/ + } } else { InsOrderState insOrderState = new InsOrderState(); insOrderState.setInsOrderId(insSample.getInsOrderId()); + insOrderState.setInsOrderId(insSample.getId()); insOrderState.setLaboratory(sonLaboratory); insOrderState.setInsState(0); insOrderState.setNum(1);//鍒濆鏄涓�娆� @@ -427,25 +409,24 @@ @Override public int outInsOrderState(String sonLaboratory, String sampleCode) { //鍒ゆ柇璇ユ牱鍝佺殑妫�楠屼换鍔℃槸鍚﹀凡缁忕粨鏉�(缁х画璇曢獙鎴栬�呮槸缁撴潫璇曢獙) - //鍏堝垽鏂璁㈠崟鏄惁鏈夎繖涓珯鐐圭殑椤圭洰 + //鍏堝垽鏂鏍峰搧鏄惁鏈夎繖涓珯鐐圭殑椤圭洰 InsSample insSample = insSampleMapper.selectOne(Wrappers.<InsSample>lambdaQuery().eq(InsSample::getSampleCode, sampleCode)); - List<Integer> sampleIds = insSampleMapper.selectList(Wrappers.<InsSample>lambdaQuery() - .eq(InsSample::getInsOrderId, insSample.getInsOrderId())).stream().map(InsSample::getId).collect(Collectors.toList()); List<String> collect = insProductMapper.selectList(Wrappers.<InsProduct>lambdaQuery() .eq(InsProduct::getState, 1) - .in(InsProduct::getInsSampleId, sampleIds)).stream().map(InsProduct::getSonLaboratory).collect(Collectors.toList()); + .eq(InsProduct::getInsSampleId, insSample.getId())).stream().map(InsProduct::getSonLaboratory).collect(Collectors.toList()); if (!collect.contains(sonLaboratory)) { - throw new ErrorException("璇ヨ鍗曟病鏈�" + sonLaboratory + "绔欑偣鐨勭浉鍏抽」鐩�,璇锋煡鐪嬩笅鍗曡鎯�!"); + throw new ErrorException("璇ユ牱鍝佹病鏈�" + sonLaboratory + "绔欑偣鐨勭浉鍏抽」鐩�,璇锋煡鐪嬩笅鍗曡鎯�!"); } //鍒ゆ柇璇ヨ鍗曟槸鍚︾珯鐐逛换鍔℃湁(缁х画璇曢獙鎴栬�呮槸缁撴潫璇曢獙) List<InsOrderState> orderStates = insOrderStateMapper.selectList(Wrappers.<InsOrderState>lambdaQuery() .eq(InsOrderState::getInsOrderId, insSample.getInsOrderId()) - .eq(InsOrderState::getInsState, 5)); + .eq(InsOrderState::getInsState, 5));//缁撴潫璇曢獙 if (CollectionUtils.isEmpty(orderStates)) { List<InsOrderState> orderStates1 = insOrderStateMapper.selectList(Wrappers.<InsOrderState>lambdaQuery() .eq(InsOrderState::getInsOrderId, insSample.getInsOrderId()) + .eq(InsOrderState::getInsSampleId, insSample.getId()) .eq(InsOrderState::getLaboratory, sonLaboratory) - .eq(InsOrderState::getInsState, 6)); + .eq(InsOrderState::getInsState, 6));//缁х画璇曢獙 if (CollectionUtils.isEmpty(orderStates1)) { throw new ErrorException("璇ユ牱鍝佺殑妫�楠屼换鍔¤繕娌℃湁缁撴潫璇曢獙鎴栫户缁瘯楠�,鏆傛椂鏃犳硶鍑哄簱!"); } @@ -674,11 +655,13 @@ int pId = Integer.parseInt(res.replaceAll("\\D+", "")); InsProduct insProduct = insProductMapper.selectById(pId); // 閫氳繃鏍锋湰id鑾峰彇璁㈠崟id - int orderId = insSampleMapper.selectById(insProduct.getInsSampleId()).getInsOrderId(); - int count = insProductMapper.selectInsProductCountByOrderId(orderId); + InsSample insSample = insSampleMapper.selectById(insProduct.getInsSampleId()); + int orderId = insSample.getInsOrderId(); + int count = insProductMapper.selectInsProductCountByOrderId(insSample.getId()); if (count == 0) { insOrderStateMapper.update(new InsOrderState(), Wrappers.<InsOrderState>lambdaUpdate() .eq(InsOrderState::getInsOrderId, orderId) + .eq(InsOrderState::getInsSampleId, insSample.getId()) .eq(InsOrderState::getLaboratory, insProduct.getSonLaboratory()) .set(InsOrderState::getInsState, 2)); } @@ -700,6 +683,7 @@ InsOrder insOrder = insOrderMapper.selectById(insProductResultDtos.getOrderId()); InsOrderState orderState = insOrderStateMapper.selectOne(Wrappers.<InsOrderState>lambdaQuery() .eq(InsOrderState::getInsOrderId, insProductResultDtos.getOrderId()) + .eq(InsOrderState::getInsSampleId, insProductResultDtos.getSampleId()) .eq(InsOrderState::getLaboratory, insProductResultDtos.getSonLaboratory()) .orderByDesc(InsOrderState::getId) .last("LIMIT 1"));// 纭繚鍙彇涓�鏉¤褰� @@ -813,6 +797,7 @@ if (count == 0) { insOrderStateMapper.update(new InsOrderState(), Wrappers.<InsOrderState>lambdaUpdate() .eq(InsOrderState::getInsOrderId, insProductResultDtos.getOrderId()) + .eq(InsOrderState::getInsSampleId, insProductResultDtos.getSampleId()) .eq(InsOrderState::getLaboratory, insProductResultDtos.getSonLaboratory()) .set(InsOrderState::getInsState, 2)); } @@ -826,8 +811,8 @@ insProductResultMapper.delete(Wrappers.<InsProductResult>lambdaQuery() .eq(InsProductResult::getInsProductId, insProductResult.getInsProductId()) .eq(InsProductResult::getNum, insProductResult.getNum())); - insProductResult.setEquipValue("[{\"v\":\""+insProductResult.getEquipValue()+"\"}]"); - insProductResult.setEquipName("[{\"v\":\""+insProductResult.getEquipName()+"\"}]"); + insProductResult.setEquipValue("[{\"v\":\"" + insProductResult.getEquipValue() + "\"}]"); + insProductResult.setEquipName("[{\"v\":\"" + insProductResult.getEquipName() + "\"}]"); insProductResultMapper.insert(insProductResult); return 0; } @@ -893,10 +878,10 @@ //浜ゆ帴 @Override - public int upPlanUser(Integer userId, Integer orderId, String sonLaboratory) { + public int upPlanUser(Integer userId, Integer sampleId, String sonLaboratory) { InsSampleUser insSampleUser = new InsSampleUser(); insSampleUser.setUserId(userId); - insSampleUser.setInsSampleId(orderId); + insSampleUser.setInsSampleId(sampleId); insSampleUser.setState(0); insSampleUser.setSonLaboratory(sonLaboratory); return insSampleUserMapper.insert(insSampleUser); @@ -904,47 +889,47 @@ @Override @Transactional(rollbackFor = Exception.class) - public int verifyPlan(Integer orderId, String laboratory, Integer type, String tell) throws IOException { + public int verifyPlan(Integer sampleId, String laboratory, Integer type, String tell) throws IOException { LocalDateTime now = LocalDateTime.now(); Integer userId = getLook.selectPowerByMethodAndUserId(null).get("userId"); List<InsUnPass> insUnPasses = new ArrayList<>(); /*鏍峰搧涓嬬殑椤圭洰鍙鏈変竴涓」鐩笉鍚堟牸鍒欐楠岀粨鏋滀负0,鍚﹀垯涓�1*/ - List<InsSample> samples = insSampleMapper.selectList(Wrappers.<InsSample>lambdaQuery().eq(InsSample::getInsOrderId, orderId)); - for (InsSample insSample : samples) { - List<InsProduct> insProducts = insProductMapper.selectList(Wrappers.<InsProduct>lambdaQuery() - .eq(InsProduct::getInsSampleId, insSample.getId()) - .eq(InsProduct::getSonLaboratory, laboratory) - .eq(InsProduct::getState, 1)); - List<Integer> results = insProducts.stream().map(InsProduct::getInsResult).filter(str -> str != null).collect(Collectors.toList()); - if (results.contains(0)) { - insSample.setInsResult(0); - } else { - insSample.setInsResult(1); - } - insSampleMapper.updateById(insSample); - /*澶嶆牳鍚庯紝灏嗕笉鍚堟牸鐨勯」鐩俊鎭坊鍔犲埌ins_un_pass琛ㄤ腑*/ - for (InsProduct insProduct : insProducts) { - if (insProduct.getInsResult() == 0) { - InsUnPass insUnPass = new InsUnPass(); - insUnPass.setId(null); - insUnPass.setModel(insSample.getModel()); - insUnPass.setSample(insSample.getSample()); - insUnPass.setInspectionItem(insProduct.getInspectionItem()); - insUnPass.setInspectionItemSubclass(insProduct.getInspectionItemSubclass()); - insUnPass.setLastValue(insProduct.getLastValue()); - insUnPass.setEntrustCode(insOrderMapper.selectById(orderId).getEntrustCode()); - List<Integer> userIds = insProductUserMapper.selectList(Wrappers.<InsProductUser>lambdaQuery().eq(InsProductUser::getInsProductId, insProduct.getId())).stream().map(InsProductUser::getCreateUser).distinct().collect(Collectors.toList()); - String name = userMapper.selectBatchIds(userIds).stream().map(User::getName).collect(Collectors.joining(",")); - insUnPass.setName(name); - insUnPasses.add(insUnPass); - } + InsSample insSample = insSampleMapper.selectById(sampleId); + List<InsProduct> insProducts = insProductMapper.selectList(Wrappers.<InsProduct>lambdaQuery() + .eq(InsProduct::getInsSampleId, insSample.getId()) + .eq(InsProduct::getSonLaboratory, laboratory) + .eq(InsProduct::getState, 1)); + List<Integer> results = insProducts.stream().map(InsProduct::getInsResult).filter(str -> str != null).collect(Collectors.toList()); + if (results.contains(0)) { + insSample.setInsResult(0); + } else { + insSample.setInsResult(1); + } + insSampleMapper.updateById(insSample); + /*澶嶆牳鍚庯紝灏嗕笉鍚堟牸鐨勯」鐩俊鎭坊鍔犲埌ins_un_pass琛ㄤ腑*/ + InsOrder insOrder = insOrderMapper.selectById(insSample.getInsOrderId()); + for (InsProduct insProduct : insProducts) { + if (insProduct.getInsResult() == 0) { + InsUnPass insUnPass = new InsUnPass(); + insUnPass.setId(null); + insUnPass.setModel(insSample.getModel()); + insUnPass.setSample(insSample.getSample()); + insUnPass.setInspectionItem(insProduct.getInspectionItem()); + insUnPass.setInspectionItemSubclass(insProduct.getInspectionItemSubclass()); + insUnPass.setLastValue(insProduct.getLastValue()); + insUnPass.setEntrustCode(insOrder.getEntrustCode()); + List<Integer> userIds = insProductUserMapper.selectList(Wrappers.<InsProductUser>lambdaQuery().eq(InsProductUser::getInsProductId, insProduct.getId())).stream().map(InsProductUser::getCreateUser).distinct().collect(Collectors.toList()); + String name = userMapper.selectBatchIds(userIds).stream().map(User::getName).collect(Collectors.joining(",")); + insUnPass.setName(name); + insUnPasses.add(insUnPass); } } insUnPassService.saveBatch(insUnPasses); /*type=0 鍐嶆璇曢獙; type=1 缁х画璇曢獙 ; type=2 缁撴潫璇曢獙*/ // 鏌ヨ鏍规嵁 id 鍊掑簭鎺掑垪鐨勭涓�鏉¤褰� InsOrderState record = insOrderStateMapper.selectOne(Wrappers.<InsOrderState>lambdaQuery() - .eq(InsOrderState::getInsOrderId, orderId) + .eq(InsOrderState::getInsOrderId, insSample.getInsOrderId()) + .eq(InsOrderState::getInsSampleId, sampleId) .eq(InsOrderState::getLaboratory, laboratory) .orderByDesc(InsOrderState::getId) .last("LIMIT 1")); // 纭繚鍙彇涓�鏉¤褰� @@ -969,7 +954,8 @@ case 1: //缁х画璇曢獙:璇ョ珯鐐逛换鍔$粨鏉�(鍙互鍐嶆鎵爜妫�楠�)锛� insOrderStateMapper.update(null, Wrappers.<InsOrderState>lambdaUpdate() - .eq(InsOrderState::getInsOrderId, orderId) + .eq(InsOrderState::getInsOrderId, insSample.getInsOrderId()) + .eq(InsOrderState::getInsSampleId, sampleId) .eq(InsOrderState::getLaboratory, laboratory) .set(InsOrderState::getInsState, 6) .set(InsOrderState::getVerifyTell, tell) @@ -978,25 +964,23 @@ case 2: //缁撴潫璇曢獙:姝ゅ鎵樺崟鍋滄璇曢獙(鏃犳硶鍐嶆妫�楠�)銆� insOrderStateMapper.update(null, Wrappers.<InsOrderState>lambdaUpdate() - .eq(InsOrderState::getInsOrderId, orderId) + .eq(InsOrderState::getInsOrderId, insSample.getInsOrderId()) + .eq(InsOrderState::getInsSampleId, sampleId) .eq(InsOrderState::getLaboratory, laboratory) .set(InsOrderState::getInsState, 5) .set(InsOrderState::getVerifyTell, tell) .set(InsOrderState::getVerifyUser, userId)); //濡傛灉璁㈠崟绫诲瀷鏄師鐞嗘牱鏈�,鍒欒璁㈠崟鐩存帴闂幆 - InsOrder insOrder = insOrderMapper.selectById(orderId); if (insOrder.getFormType().equals("鍘熺悊鏍锋満")) { - for (InsSample sample : samples) { - //鍑哄簱 - try { - outInsOrderState(laboratory, sample.getSampleCode()); - } catch (Exception e) { + //鍑哄簱 + try { + outInsOrderState(laboratory, insSample.getSampleCode()); + } catch (Exception e) { - } } - insOrder.setState(4); - insOrderMapper.updateById(insOrder); } + insOrder.setState(4); + insOrderMapper.updateById(insOrder); break; } } @@ -1030,10 +1014,10 @@ @Override public int submitPlan(SubmitPlanDto submitPlanDto) { - List<InsSample> insSamples = insSampleMapper.selectList(Wrappers.<InsSample>lambdaQuery() - .eq(InsSample::getInsOrderId, submitPlanDto.getOrderId()).select(InsSample::getId)); + InsSample insSample = insSampleMapper.selectById(submitPlanDto.getSampleId()); InsOrderState orderState = insOrderStateMapper.selectOne(Wrappers.<InsOrderState>lambdaQuery() - .eq(InsOrderState::getInsOrderId, submitPlanDto.getOrderId()) + .eq(InsOrderState::getInsOrderId, insSample.getInsOrderId()) + .eq(InsOrderState::getInsSampleId, submitPlanDto.getSampleId()) .eq(InsOrderState::getLaboratory, submitPlanDto.getLaboratory()) .orderByDesc(InsOrderState::getId) .last("LIMIT 1"));// 纭繚鍙彇涓�鏉¤褰� @@ -1046,16 +1030,10 @@ insOrderUser.setNote(ObjectUtils.isNotEmpty(submitPlanDto.getNote()) ? submitPlanDto.getNote() : null); insOrderUser.setTerm(ObjectUtils.isNotEmpty(submitPlanDto.getTerm()) ? submitPlanDto.getTerm() : null); insOrderUserMapper.insert(insOrderUser); - 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::getInsSampleId, insSample.getId()) .eq(InsProduct::getSonLaboratory, submitPlanDto.getLaboratory()) - .eq(InsProduct::getState, 1) - .and(wrapper -> wrapper - .isNull(InsProduct::getInsResult) - .or() - .eq(InsProduct::getInsResult, 2) - )); + .eq(InsProduct::getState, 1)); if (insProducts.size() > 0) { String str = ""; int count = 0; @@ -1087,19 +1065,13 @@ } } insOrderStateMapper.update(null, Wrappers.<InsOrderState>lambdaUpdate() - .eq(InsOrderState::getInsOrderId, submitPlanDto.getOrderId()) + .eq(InsOrderState::getInsOrderId, insSample.getInsOrderId()) + .eq(InsOrderState::getInsSampleId, submitPlanDto.getSampleId()) .eq(InsOrderState::getLaboratory, submitPlanDto.getLaboratory()) .set(InsOrderState::getInsState, 3) .set(InsOrderState::getVerifyUser, submitPlanDto.getVerifyUser())); - InsOrder insOrder = insOrderMapper.selectById(submitPlanDto.getOrderId()); - /*杩欎釜鎯呭喌鍏堝叧闂�----濡傛灉鏄疌绫昏鍗曚笖鏄笅鍙戝埌璐ㄩ噺閮�,鍒欑洿鎺ュ鏍搁�氳繃(缁撴潫璇曢獙)*/ -// if (insOrder.getOrderType().equals("C") && insOrder.getDepartmentLims().equals("璐ㄩ噺閮�")) { -// try { -// verifyPlan(orderId, laboratory, 2, null); -// } catch (IOException e) { -// e.printStackTrace(); -// } -// } else { + InsOrder insOrder = insOrderMapper.selectById(insSample.getInsOrderId()); + Integer userId = getLook.selectPowerByMethodAndUserId(null).get("userId"); //LIMS绯荤粺娑堟伅鎺ㄩ�� InformationNotification info = new InformationNotification(); @@ -1112,38 +1084,37 @@ info.setViewStatus(false); info.setJumpPath("b1-inspect-order-plan"); informationNotificationService.addInformationNotification(info); - // todo 浼佷笟寰俊娑堟伅鎺ㄩ�丂zss - /*HashMap<String, Object> map = new HashMap<>(); - String account = userMapper.selectById(userId).getAccount(); - map.put("touser", account);//鎺ユ敹娑堟伅鎴愬憳鐨勮处鍙�'ZT-031292'杩欑绫诲瀷(濡傛灉鏈夊涓敤'|'鍒嗛殧) - map.put("toparty", "");//鎺ユ敹閮ㄩ棬id - map.put("totag", "");//娑堟伅鏍囩id - map.put("msgtype", "text");//娑堟伅绫诲瀷 text:鏂囨湰 - map.put("agentid", 1000517);//搴旂敤id - HashMap<String, Object> hashMap = new HashMap<>(); - hashMap.put("content", "鎮ㄦ湁涓�鏉℃楠屼换鍔″緟澶嶆牳娑堟伅,璁㈠崟鍙锋槸锛�"+insOrder.getEntrustCode()+",璇峰墠寰�LIMS绯荤粺鏌ョ湅銆�<a href=\"https://ztwxlims.ztt.cn:7443/enter\">涓ぉ閫氫俊LIMS绯荤粺 </a>"); - map.put("text", hashMap);//娑堟伅鍐呭 - map.put("safe", 0);//鏄惁淇濆瘑娑堟伅.0鍚� - map.put("enable_id_trans", 0);//鏄惁寮�鍚痠d杞瘧.0鍚� - map.put("enable_duplicate_check", 0);//鏄惁寮�鍚噸澶嶆秷鎭鏌�.0鍚� - qywxApi.send(map);*/ -// } + // todo 浼佷笟寰俊娑堟伅鎺ㄩ�丂zss + HashMap<String, Object> map = new HashMap<>(); + String account = userMapper.selectById(submitPlanDto.getVerifyUser()).getAccount(); + map.put("touser", account);//鎺ユ敹娑堟伅鎴愬憳鐨勮处鍙�'ZT-031292'杩欑绫诲瀷(濡傛灉鏈夊涓敤'|'鍒嗛殧) + map.put("toparty", "");//鎺ユ敹閮ㄩ棬id + map.put("totag", "");//娑堟伅鏍囩id + map.put("msgtype", "text");//娑堟伅绫诲瀷 text:鏂囨湰 + map.put("agentid", 1000517);//搴旂敤id + HashMap<String, Object> hashMap = new HashMap<>(); + hashMap.put("content", "鎮ㄦ湁涓�鏉℃楠屼换鍔″緟澶嶆牳娑堟伅,璁㈠崟鍙锋槸锛�" + insOrder.getEntrustCode() + ",璇峰墠寰�LIMS绯荤粺鏌ョ湅銆�<a href=\"https://ztwxlims.ztt.cn:7443/enter\">涓ぉ閫氫俊LIMS绯荤粺 </a>"); + map.put("text", hashMap);//娑堟伅鍐呭 + map.put("safe", 0);//鏄惁淇濆瘑娑堟伅.0鍚� + map.put("enable_id_trans", 0);//鏄惁寮�鍚痠d杞瘧.0鍚� + map.put("enable_duplicate_check", 0);//鏄惁寮�鍚噸澶嶆秷鎭鏌�.0鍚� + qywxApi.send(map); //澶嶆牳浜�--妫�楠屽崟鐩稿叧璐熻矗浜� InsSampleUser insSampleUser = new InsSampleUser(); insSampleUser.setUserId(submitPlanDto.getVerifyUser()); - insSampleUser.setInsSampleId(submitPlanDto.getOrderId()); + insSampleUser.setInsSampleId(submitPlanDto.getSampleId()); insSampleUser.setState(1); insSampleUser.setSonLaboratory(submitPlanDto.getLaboratory()); insSampleUserMapper.insert(insSampleUser); /*鐢熸垚鐢佃矾璇曢獙鐨勭珯鐐规姤鍛婂苟涓婁紶鍒伴檮浠朵腑*/ if (submitPlanDto.getLaboratory().equals("鐢佃矾璇曢獙")) { - wordUtils.generateWord(submitPlanDto.getTerm(), orderState); + //wordUtils.generateWord(submitPlanDto.getTerm(), orderState); //todo 鐢佃矾绔欑偣鎶ュ憡 姝e紡搴撻儴缃叉斁寮� - /*try { + try { wordUtils.generateWord(submitPlanDto.getTerm(), orderState); } catch (Exception e) { throw new ErrorException("鐢佃矾璇曢獙鐨勭珯鐐规姤鍛婄敓鎴愭湁璇�,璇疯仈绯诲紑鍙戜汉鍛樿皟鏁�!"); - }*/ + } } /*// 鍒犻櫎鏁伴噰閲囬泦娆℃暟 String key = "frequency" + ":" + submitPlanDto.getEntrustCode() + ":*"; -- Gitblit v1.9.3