From cb5092a38a5123bd9da452ad311b9323561802b1 Mon Sep 17 00:00:00 2001 From: zwl <1051256694@qq.com> Date: 星期二, 20 五月 2025 13:55:11 +0800 Subject: [PATCH] # --- src/main/java/com/zy/common/web/WcsController.java | 62 ++++++++++++++++++++++++++++-- 1 files changed, 57 insertions(+), 5 deletions(-) diff --git a/src/main/java/com/zy/common/web/WcsController.java b/src/main/java/com/zy/common/web/WcsController.java index 6f16d15..c6150ae 100644 --- a/src/main/java/com/zy/common/web/WcsController.java +++ b/src/main/java/com/zy/common/web/WcsController.java @@ -58,15 +58,19 @@ WrkMast wrkMast =wrkMastService.selectOne(new EntityWrapper<WrkMast>() .eq("wrk_no",param.getTaskNo()) .in("io_type",103,107)); - if (Cools.isEmpty(wrkMast)){ + WrkMast wrkMast537 =wrkMastService.selectOne(new EntityWrapper<WrkMast>() + .eq("wrk_no",param.getTaskNo()) + .in("io_type",53,57)); + if (Cools.isEmpty(wrkMast)&&Cools.isEmpty(wrkMast537)){ storageResult.setReturnStatus(1); storageResult.setErrorMessage("娌℃湁鎵惧埌鐩樼偣鎷f枡浠诲姟---------"+param.getTaskNo()); return storageResult; } + SearchLocParam searchLocParam = new SearchLocParam(); - searchLocParam.setBoxNo(wrkMast.getBarcode()); + searchLocParam.setBoxNo(Cools.isEmpty(wrkMast)?wrkMast537.getBarcode() : wrkMast.getBarcode()); searchLocParam.setWcsIoType(1);//婊℃澘 - searchLocParam.setWcsSourceStaNo(wrkMast.getStaNo()); + searchLocParam.setWcsSourceStaNo(Cools.isEmpty(wrkMast)?wrkMast537.getSourceStaNo() : wrkMast.getStaNo()); searchLocParam.setWcsStatus(0); return getLocNo(searchLocParam); } @@ -85,6 +89,16 @@ if (Cools.isEmpty(param.getWcsSourceStaNo())) { storageResult.setReturnStatus(1); storageResult.setErrorMessage("婧愮珯缂栧彿涓嶈兘涓虹┖"); + return storageResult; + } + BasDevp basDevp=basDevpService.selectOne(new EntityWrapper<BasDevp>().eq("dev_no",param.getWcsSourceStaNo())); + // + List<WrkMast> wrkMasts=wrkMastService.selectList(new EntityWrapper<WrkMast>().eq("sta_no",param.getWcsSourceStaNo()).in("wrk_sts",11,12,13)); + if(!Cools.isEmpty(wrkMasts)){ + storageResult.setReturnStatus(1); + storageResult.setErrorMessage("鏈夊嚭搴撲换鍔$姝㈠叆搴�"); + basDevp.setArea("鏈夊嚭搴撲换鍔$姝㈠叆搴�"); + basDevpService.updateById(basDevp); return storageResult; } int ioType = 0; @@ -108,6 +122,8 @@ if (Cools.isEmpty(param.getBoxNo())) { storageResult.setReturnStatus(1); storageResult.setErrorMessage("鏉$爜涓嶈兘涓虹┖"); + basDevp.setArea("鏉$爜涓嶈兘涓虹┖"); + basDevpService.updateById(basDevp); return storageResult; } waitPakins = waitPakinService.selectList(new EntityWrapper<WaitPakin>().eq("zpallet", param.getBoxNo())); @@ -116,10 +132,14 @@ if (wrkMast != null && wrkMast.getIoType() == 103) { storageResult.setReturnStatus(1); storageResult.setErrorMessage(CodeRes.PICK_600); + basDevp.setArea(CodeRes.PICK_600); + basDevpService.updateById(basDevp); return storageResult; } storageResult.setReturnStatus(1); storageResult.setErrorMessage(CodeRes.NO_COMB_700); + basDevp.setArea(CodeRes.NO_COMB_700); + basDevpService.updateById(basDevp); return storageResult; } int countLoc = locDetlService.selectCount(new EntityWrapper<LocDetl>().eq("zpallet", param.getBoxNo())); @@ -127,6 +147,8 @@ if (countLoc > 0 || countWrk > 0) { storageResult.setReturnStatus(1); storageResult.setErrorMessage(CodeRes.EXIST_500); + basDevp.setArea(CodeRes.NO_COMB_700); + basDevpService.updateById(basDevp); return storageResult; } }else { @@ -157,6 +179,8 @@ */ @Transactional public StorageResult startupFullPutStore(Integer devpNo, String barcode, List<WaitPakin> waitPakins,Integer ioType) { + BasDevp basDevp=basDevpService.selectOne(new EntityWrapper<BasDevp>().eq("dev_no",devpNo)); + StorageResult storageResult=new StorageResult(); Integer[] arr=arr(); LocMast locMast1=new LocMast(); @@ -170,24 +194,39 @@ WaitPakin waitPakin1=new WaitPakin(); waitPakin1.sync(wrkDetl); locMast1 =commonService.getLocNo2(waitPakin1,arr,0,type,1); + if (locMast1 == null) { + basDevp.setArea("鏈壘鍒扮┖搴撲綅"); + basDevpService.updateById(basDevp); + throw new CoolException("鏈壘鍒扮┖搴撲綅"); + } + //鏇存柊璐х墿鎵�鍦ㄥ簱浣嶇殑娣辨祬鍙� + wrkDetl.setSource(locMast1.getLocAttribute()); + wrkDetlService.update(wrkDetl,new EntityWrapper<WrkDetl>().eq("wrk_no", wrkDetl.getWrkNo())); WrkMast wrkMast=wrkMastService.selectByBarcode(barcode); workNo = wrkMast.getWrkNo(); - int mbz=wrkMast.getStaNo()*10+Integer.valueOf(wrkMast.getSourceLocNo().substring(6)); + int mbz=basDevp.getDevNo()*10+Integer.valueOf(wrkMast.getSourceLocNo().substring(6)); String ykw=wrkMast.getLocNo(); wrkMast.setIoType(ioType-50); wrkMast.setWrkSts(1L);//鍏ュ簱 wrkMast.setModiTime(new Date()); - wrkMast.setSourceStaNo(wrkMast.getStaNo()); // 婧愮珯 + wrkMast.setSourceStaNo(basDevp.getDevNo()); // 婧愮珯 wrkMast.setStaNo(mbz); // 鐩爣绔� wrkMast.setLocNo(locMast1.getLocNo()); // 鐩爣搴撲綅 = 鍑哄簱鏃剁殑婧愬簱浣� wrkMast.setSourceLocNo(ykw); // 婧愬簱浣� + wrkMastService.updateById(wrkMast); }else{ int type=Cools.isEmpty(waitPakins.get(0).getBeBatch())?1:waitPakins.get(0).getBeBatch(); // 妫�绱㈠簱浣� locMast1 =commonService.getLocNo2(waitPakins.get(0),arr,0,type,1); + if (locMast1 == null) { + basDevp.setArea("鏈壘鍒扮┖搴撲綅"); + basDevpService.updateById(basDevp); + throw new CoolException("鏈壘鍒扮┖搴撲綅"); + } + int mbz=devpNo*10+Integer.valueOf(locMast1.getLocNo().substring(6)); //姝e父鍏ュ簱 workNo = commonService.getWorkNo(0); Date now = new Date(); @@ -199,6 +238,7 @@ wrkMast.setIoType(1); // 鍏ュ嚭搴撶姸鎬侊細1.鍏ュ簱 wrkMast.setIoPri(13D); // 浼樺厛绾� wrkMast.setSourceStaNo(devpNo); + wrkMast.setStaNo(mbz); wrkMast.setLocNo(locMast1.getLocNo()); wrkMast.setBarcode(barcode); // 鎵樼洏鐮� wrkMast.setFullPlt("Y"); // 婊℃澘锛歒 @@ -212,9 +252,12 @@ wrkMast.setModiTime(now); boolean res = wrkMastService.insert(wrkMast); if (!res) { + basDevp.setArea("淇濆瓨宸ヤ綔妗eけ璐�"); + basDevpService.updateById(basDevp); throw new CoolException("淇濆瓨宸ヤ綔妗eけ璐�"); } // 鐢熸垚宸ヤ綔妗f槑缁� + int source = locMast1.getLocAttribute(); waitPakins.forEach(waitPakin -> { WrkDetl wrkDetl = new WrkDetl(); wrkDetl.sync(waitPakin); @@ -222,7 +265,10 @@ wrkDetl.setIoTime(wrkMast.getIoTime()); wrkDetl.setAppeTime(now); wrkDetl.setModiTime(now); + wrkDetl.setSource(source); if (!wrkDetlService.insert(wrkDetl)) { + basDevp.setArea("淇濆瓨宸ヤ綔鏄庣粏澶辫触"); + basDevpService.updateById(basDevp); throw new CoolException("淇濆瓨宸ヤ綔鏄庣粏澶辫触"); } }); @@ -234,6 +280,8 @@ setParam.setIoStatus("Y"); setParam.setModiTime(now); if (!waitPakinService.update(setParam, wrapper)) { + basDevp.setArea("鏇存柊閫氱煡妗eけ璐�"); + basDevpService.updateById(basDevp); throw new CoolException("鏇存柊閫氱煡妗eけ璐�"); } } @@ -243,9 +291,13 @@ locMast.setLocSts("S"); // S.鍏ュ簱棰勭害 locMast.setModiTime(new Date()); if (!locMastService.updateById(locMast)){ + basDevp.setArea("鏀瑰彉搴撲綅鐘舵�佸け璐�"); + basDevpService.updateById(basDevp); throw new CoolException("鏀瑰彉搴撲綅鐘舵�佸け璐�"); } } else { + basDevp.setArea(locMast1.getLocNo()+"鐩爣搴撲綅宸茶鍗犵敤"); + basDevpService.updateById(basDevp); throw new CoolException(locMast1.getLocNo()+"鐩爣搴撲綅宸茶鍗犵敤"); } -- Gitblit v1.9.1