|  |  |  | 
|---|
|  |  |  | if (Cools.isEmpty(staDesc)){ | 
|---|
|  |  |  | throw new CoolException("未找到站点路径"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if (wrkMast.getWrkSts() == 14 && (wrkMast.getIoType() == 103 || wrkMast.getIoType() == 107)){ | 
|---|
|  |  |  | if (wrkMast.getWrkSts() == 14 && (wrkMast.getIoType() == 103 || wrkMast.getIoType() == 107 || wrkMast.getIoType() == 104)){ | 
|---|
|  |  |  | try { | 
|---|
|  |  |  | // 保存工作明细档历史档 | 
|---|
|  |  |  | //                if (wrkMastService.saveWrkDetlLog(wrkMast.getWrkNo()) == 0) { | 
|---|
|  |  |  | 
|---|
|  |  |  | } | 
|---|
|  |  |  | WrkMast wrkMastPakin = wrkMastService.selectOne(new EntityWrapper<WrkMast>() | 
|---|
|  |  |  | .eq("barcode", param.getBarcode()) | 
|---|
|  |  |  | .in("io_type", 103,53,107,57) | 
|---|
|  |  |  | .in("io_type", 103,53,107,57,104,54) | 
|---|
|  |  |  | .eq("wrk_sts",14)); | 
|---|
|  |  |  | if (!Cools.isEmpty(wrkMastPakin)){ | 
|---|
|  |  |  | StartupDto locNo3 = getLocNo3(param); | 
|---|
|  |  |  | 
|---|
|  |  |  | return R.parse(CodeRes.NO_COMB_700); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | int countLoc = locDetlService.selectCount(new EntityWrapper<LocDetl>().eq("zpallet",param.getBarcode())); | 
|---|
|  |  |  | if (countLoc > 0 ) { | 
|---|
|  |  |  | return R.error(param.getBarcode()+"条码在库存中已存在"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | int countWrk = wrkDetlService.selectCount(new EntityWrapper<WrkDetl>().eq("zpallet",param.getBarcode())); | 
|---|
|  |  |  | if (countLoc > 0 || countWrk > 0) { | 
|---|
|  |  |  | return R.error(CodeRes.EXIST_500); | 
|---|
|  |  |  | if ( countWrk > 0) { | 
|---|
|  |  |  | return R.error(param.getBarcode()+"条码在工作档中已存在"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if (Cools.isEmpty(param.getLocType1())){ | 
|---|
|  |  |  | 
|---|
|  |  |  | // 检索库位 | 
|---|
|  |  |  | List<String> matnrs = waitPakins.stream().map(WaitPakin::getMatnr).distinct().collect(Collectors.toList()); | 
|---|
|  |  |  | List<String> batchs = waitPakins.stream().map(WaitPakin::getBatch).distinct().collect(Collectors.toList()); | 
|---|
|  |  |  | StartupDto dto = commonService.getLocNo( 1, devpNo, matnrs.get(0),batchs.get(0),null, locTypeDto, matnrs.size() > 1); | 
|---|
|  |  |  | boolean mixtrue =false; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | if (matnrs.size() == 1 && batchs.size() == 1) { | 
|---|
|  |  |  |  | 
|---|
|  |  |  | }else if(matnrs.size() > 1 && batchs.size() == 1) { | 
|---|
|  |  |  | mixtrue = true; | 
|---|
|  |  |  | }else if(matnrs.size() == 1 && batchs.size() > 1) { | 
|---|
|  |  |  | mixtrue = true; | 
|---|
|  |  |  | }else if(matnrs.size() > 1 && batchs.size() > 1) { | 
|---|
|  |  |  | mixtrue = true; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | StartupDto dto = commonService.getLocNo( 1, devpNo, matnrs.get(0),batchs.get(0),null, locTypeDto, mixtrue); | 
|---|
|  |  |  | if (Cools.isEmpty(dto)){ | 
|---|
|  |  |  | throw new CoolException("未找到库位信息"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | int workNo = dto.getWorkNo(); | 
|---|
|  |  |  | Date now = new Date(); | 
|---|
|  |  |  | // 生成工作档 | 
|---|