From c27d8ec43a69c8251690030ebb4dc87cabe15c71 Mon Sep 17 00:00:00 2001 From: pang.jiabao <pang_jiabao@163.com> Date: 星期一, 12 八月 2024 14:16:56 +0800 Subject: [PATCH] # --- src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java | 125 ++++++++++++++++++++++++----------------- 1 files changed, 74 insertions(+), 51 deletions(-) diff --git a/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java index 869bbeb..d46803f 100644 --- a/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java @@ -992,25 +992,30 @@ if (Cools.isEmpty(param)) { throw new CoolException("璇锋眰鍙傛暟鏈夎锛�" + param); } - int zpalletCount = locDetlService.selectCount(new EntityWrapper<LocDetl>().eq("zpallet", param.getBarcode())); - if (zpalletCount > 0) { - throw new CoolException("搴撳瓨鎵樼洏鐮佸凡瀛樺湪锛�" + param.getBarcode()); - } + if (!Cools.isEmpty(param.getBarcode())) { + int zpalletCount = locDetlService.selectCount(new EntityWrapper<LocDetl>().eq("zpallet", param.getBarcode())); + if (zpalletCount > 0) { + throw new CoolException("搴撳瓨鎵樼洏鐮佸凡瀛樺湪锛�" + param.getBarcode()); + } - int barcodeCount = wrkMastService.selectCount(new EntityWrapper<WrkMast>().eq("barcode", param.getBarcode())); - if (barcodeCount > 0) { - throw new CoolException("宸ヤ綔妗e凡瀛樺湪璇ユ墭鐩樼爜锛�" + param.getBarcode()); + int barcodeCount = wrkMastService.selectCount(new EntityWrapper<WrkMast>().eq("barcode", param.getBarcode())); + if (barcodeCount > 0) { + throw new CoolException("宸ヤ綔妗e凡瀛樺湪璇ユ墭鐩樼爜锛�" + param.getBarcode()); + } } - LocTypeDto locTypeDto = new LocTypeDto(); locTypeDto.setLocType1((short)1); - + int iotype = 1; + if (Cools.isEmpty(param.getMatList())) { + iotype = 10; + } // 鏍规嵁婧愮珯鐐瑰鎵惧簱浣� // StartupDto dto = commonService.getLocNo(1, 1, param.getPalletizingNo(), null,null,null, locTypeDto); - StartupDto dto = commonService.getLocNo(1, param.getPalletizingNo(), locTypeDto); + StartupDto dto = commonService.getLocNo(iotype, param.getPalletizingNo(), locTypeDto,0); // 杩斿洖GWCS鐩爣淇℃伅 pushStaNoToGwcs(param.getPalletizingNo(),dto.getStaNo(),dto.getWorkNo()); + int workNo = dto.getWorkNo(); Date now = new Date(); @@ -1019,7 +1024,7 @@ wrkMast.setWrkNo(workNo); wrkMast.setIoTime(new Date()); wrkMast.setWrkSts(1L); // 宸ヤ綔鐘舵�侊細璁惧涓婅蛋 - wrkMast.setIoType(1); // 鍏ュ嚭搴撶姸鎬侊細1.鍏ュ簱 + wrkMast.setIoType(iotype); // 鍏ュ嚭搴撶姸鎬侊細1.鍏ュ簱 wrkMast.setIoPri(13D); // 浼樺厛绾� wrkMast.setCrnNo(dto.getCrnNo()); wrkMast.setSourceStaNo(param.getPalletizingNo()); @@ -1040,46 +1045,49 @@ throw new CoolException("淇濆瓨宸ヤ綔妗eけ璐�"); } - List<GwmsGenerateInventoryDto.MatList> matList = param.getMatList(); - for (GwmsGenerateInventoryDto.MatList obj :matList) { - WrkDetl wrkDetl = new WrkDetl(); - wrkDetl.setWrkNo(wrkMast.getWrkNo()); - obj.getRolls().forEach(roll -> { - Mat mat = matService.selectByMatnr(roll.getSpecs()); - if (mat == null) { - mat = new Mat(); - mat.setTagId(6L); - mat.setMatnr(roll.getSpecs()); - mat.setMaktx(roll.getSpecs()); - mat.setSpecs(roll.getSpecs()); - mat.setStatus(1); - mat.setCreateTime(now); - mat.setUpdateTime(now); - if (!matService.insert(mat)) { - throw new CoolException("鐗╂枡瀵煎叆澶辫触锛�"); - } - } + if (!Cools.isEmpty(param.getMatList())) { + List<GwmsGenerateInventoryDto.MatList> matList = param.getMatList(); + for (GwmsGenerateInventoryDto.MatList obj :matList) { + WrkDetl wrkDetl = new WrkDetl(); wrkDetl.setWrkNo(wrkMast.getWrkNo()); - wrkDetl.setMatnr(roll.getSpecs()); // 瑙勬牸 - wrkDetl.setMaktx(roll.getSpecs()); //瑙勬牸 - wrkDetl.setBatch(roll.getBoxNo()); // 绠卞彿 - wrkDetl.setModel(roll.getRollNo()); // 鍗峰彿 - wrkDetl.setBrand(""); // 鏈ㄧ绫诲瀷 - wrkDetl.setZpallet(param.getBarcode()); // 鎵樼洏鍚� - wrkDetl.setOrigin(obj.getBoxPos()); // 鏈ㄧ鍦ㄦ墭鐩樹綅缃� - wrkDetl.setWeight(roll.getNetWeight()); // 鍑�閲� - wrkDetl.setVolume(roll.getGrossWeight()); // 姣涢噸 - wrkDetl.setPrice(roll.getLength()); - wrkDetl.setSpecs(String.valueOf(roll.getSplices())); - wrkDetl.setAnfme(1.0); - wrkDetl.setIoTime(now); - wrkDetl.setAppeTime(now); - wrkDetl.setModiTime(now); - if (!wrkDetlService.insert(wrkDetl)) { - throw new CoolException("淇濆瓨宸ヤ綔鏄庣粏澶辫触"); - } - }); + obj.getRolls().forEach(roll -> { +// Mat mat = matService.selectByMatnr(roll.getSpecs()); +// if (mat == null) { +// mat = new Mat(); +// mat.setTagId(6L); +// mat.setMatnr(roll.getSpecs()); +// mat.setMaktx(roll.getSpecs()); +// mat.setSpecs(roll.getSpecs()); +// mat.setStatus(1); +// mat.setCreateTime(now); +// mat.setUpdateTime(now); +// if (!matService.insert(mat)) { +// throw new CoolException("鐗╂枡瀵煎叆澶辫触锛�"); +// } +// } + wrkDetl.setWrkNo(wrkMast.getWrkNo()); + wrkDetl.setMatnr(roll.getSpecs()); // 瑙勬牸 + wrkDetl.setMaktx(roll.getSpecs()); //瑙勬牸 + wrkDetl.setBatch(roll.getBoxNo()); // 绠卞彿 + wrkDetl.setModel(roll.getRollNo()); // 鍗峰彿 + wrkDetl.setBrand(obj.getPackageGroupNo()); // 鍖呰缁勫彿 + wrkDetl.setZpallet(param.getBarcode()); // 鎵樼洏鍚� + wrkDetl.setOrigin(obj.getBoxPos()); // 鏈ㄧ鍦ㄦ墭鐩樹綅缃� + wrkDetl.setWeight(roll.getNetWeight()); // 鍑�閲� + wrkDetl.setVolume(roll.getGrossWeight()); // 姣涢噸 + wrkDetl.setPrice(roll.getLength()); + wrkDetl.setSpecs(String.valueOf(roll.getSplices())); + wrkDetl.setAnfme(1.0); + wrkDetl.setIoTime(now); + wrkDetl.setAppeTime(now); + wrkDetl.setModiTime(now); + if (!wrkDetlService.insert(wrkDetl)) { + throw new CoolException("淇濆瓨宸ヤ綔鏄庣粏澶辫触"); + } + }); + } } + // 鏇存柊鐩爣搴撲綅鐘舵�� LocMast locMast = locMastService.selectById(dto.getLocNo()); @@ -1237,17 +1245,32 @@ return "鍑哄簱缁撴灉涓婃姤鎴愬姛"; } + @Autowired + private BasCrnpService basCrnpService; + @Override @Transactional public String emptyOutLoc(GhjtApiParam param) { // 3102/3009/3008/3006/3003/3002鈫�3047/3112 + // 鑾峰彇妯″紡涓虹數鑴戞ā寮忥紝鏃犱换鍔$殑鍫嗗灈鏈哄垪琛�:闃叉鍒嗛厤鍒板爢鍨涙満涓嶅彲鐢� + List<BasCrnp> basCrnps = basCrnpService.selectList(new EntityWrapper<BasCrnp>().eq("crn_sts",3) + .eq("wrk_no",0)); + if (basCrnps.isEmpty()) { + // 閮芥湁浠诲姟鍒欒幏鍙栫數鑴戞ā寮忕殑鍫嗗灈鏈哄垪琛� + basCrnps = basCrnpService.selectList(new EntityWrapper<BasCrnp>().eq("crn_sts",3)); + } + if (basCrnps.isEmpty()) { + throw new CoolException("娌℃湁鍙敤鍫嗗灈鏈�,鍫嗗灈鏈哄仠姝㈡垨寮傚父"); + } + // 鍙敤鍫嗗灈鏈哄垪琛� + List<Integer> crnNoList = basCrnps.stream().map(BasCrnp::getCrnNo).collect(Collectors.toList()); // 瀵绘壘绌烘墭鐩樺簱浣嶏紝鍏堟壘娴呭簱浣� List<LocMast> locMasts; locMasts = locMastService.selectList(new EntityWrapper<LocMast>().eq("loc_sts","D") - .orderAsc(Arrays.asList("row1","lev1","bay1")).in("row1",3,4,6,7,10,11,14,15,18,19,22,23)); + .orderAsc(Arrays.asList("row1","lev1","bay1")).in("crn_no",crnNoList).in("row1",3,4,6,7,10,11,14,15,18,19,22,23)); if (locMasts.isEmpty()) { locMasts = locMastService.selectList(new EntityWrapper<LocMast>().eq("loc_sts","D") - .orderAsc(Arrays.asList("row1","lev1","bay1")).in("row1",1,4,5,8,9,12,13,16,17,20,21,24)); + .orderAsc(Arrays.asList("row1","lev1","bay1")).in("crn_no",crnNoList).in("row1",1,4,5,8,9,12,13,16,17,20,21,24)); } if (locMasts.isEmpty()) { -- Gitblit v1.9.1