From 4b541a566c877e49e446565b81e8fa7503803525 Mon Sep 17 00:00:00 2001 From: yxFwq <1> Date: 星期六, 13 七月 2024 18:09:41 +0800 Subject: [PATCH] # --- src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java | 129 ++++++++++++++++++++++++++++++++++++++---- 1 files changed, 115 insertions(+), 14 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 ce51ccb..01ed37a 100644 --- a/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java @@ -1063,10 +1063,12 @@ } if (param.getType()==0){//鐩存帴鍏ュ簱 smallContainersSmall(param); - } else if (param.getType()==1){//鐩翠緵浜х嚎 //鍑哄簱 + } else if (param.getType()==1){//搴撳唴渚涗骇绾� //鍑哄簱 smallContainersBig(param); } else if (param.getType()==2){//鍏ュ簱 閫斿緞 纭寲缃� smallContainersJar(param); + } else if (param.getType()==3){//鐩翠緵浜х嚎 + smallContainersSta(param); } } catch (Exception e){ throw new CoolException("澶辫触锛侊紒锛佸師鍥狅細"+e.getMessage()); @@ -1089,8 +1091,6 @@ throw new CoolException("鍙傛暟锛氱墿鏂欑紪鐮� matnr涓虹┖"); }else if (Cools.isEmpty(param.getWeight())){ throw new CoolException("鍙傛暟锛氱墿鏂欓噸閲� wright涓虹┖"); - }else if (Cools.isEmpty(param.getColor())){ - throw new CoolException("鍙傛暟锛氱墿鏂欓鑹� color涓虹┖"); } Mat mat = matService.selectByMatnr(param.getMatnr()); @@ -1124,7 +1124,7 @@ if (Cools.isEmpty(basDevp.getBarcode())){ throw new CoolException("鐮佸灈浣嶇紪鍙� palletizingNo="+param.getStaNo()+" 鎵�澶勭珯鐐规枡绠辩爜寮傚父鐘舵�侊紱鏂欑鐮�==銆嬩负绌�"+basDevp.getBarcode()); } - if (CodeDetectionUtil.barcodeDetection(basDevp.getBarcode(),8)){ + if (!CodeDetectionUtil.barcodeDetection(basDevp.getBarcode(),8)){ throw new CoolException("鐮佸灈浣嶇紪鍙� palletizingNo="+param.getStaNo()+" 鎵�澶勭珯鐐规枡绠辩爜寮傚父鐘舵�侊紱鏂欑鐮侊細"+basDevp.getBarcode()); } @@ -1140,7 +1140,7 @@ WaitPakin waitPakin = new WaitPakin(); waitPakin.sync(mat); -// waitPakin.setBatch(matList.getBatch()); //鏈ㄧ缂栫爜 //鎵规 鍞竴鍊� 绠卞彿 + waitPakin.setBatch(param.getBatch()); //鏈ㄧ缂栫爜 //鎵规 鍞竴鍊� 绠卞彿 // waitPakin.setModel(matList.getModel()); //鍗峰彿 鍞竴鍊� // waitPakin.setBrand(param.getBoxType()); //鏈ㄧ绫诲瀷 waitPakin.setZpallet(basDevp.getBarcode()); //鎵樼洏鐮� @@ -1178,22 +1178,30 @@ throw new CoolException("鍙傛暟锛氬搧鍙� matnr涓虹┖"); }else if (Cools.isEmpty(param.getWeight())){ throw new CoolException("鍙傛暟锛氱墿鏂欓噸閲� wright涓虹┖"); - }else if (Cools.isEmpty(param.getColor())){ - throw new CoolException("鍙傛暟锛氱墿鏂欓鑹� color涓虹┖"); } - List<LocDetl> locDetls = locDetlService.selectList(new EntityWrapper<LocDetl>().eq("matnr", param.getMatnr()).eq("weight", param.getWeight()).eq("color", param.getColor())); + ArrayList<LocDetl> locDetlArrayList = new ArrayList<>(); + List<LocDetl> locDetls = locDetlService.selectList(new EntityWrapper<LocDetl>().eq("matnr", param.getMatnr()).eq("weight", param.getWeight())); if (locDetls.isEmpty()){ locDetls = new ArrayList<LocDetl>(); } - if (locDetls.isEmpty()){ + for (LocDetl locDetl:locDetls){ + LocMast locMast = locMastService.selectOne(new EntityWrapper<LocMast>().eq("loc_no", locDetl.getLocNo())); + if (locMast.getLocSts().equals("F")){ + locDetlArrayList.add(locDetl); + break; + } + } + if (locDetlArrayList.isEmpty()){ throw new CoolException("鏈壘鍒扮鍚堟潯浠剁殑鐗╂枡鏄庣粏锛氬搧鍙�==銆媘atnr:"+param.getMatnr()+"锛涢噸閲�==銆媤right:"+param.getWeight()+"锛涢鑹�==銆媍olor:"+param.getColor()); } - for (LocDetl locDetl : locDetls){ + for (LocDetl locDetl : locDetlArrayList){ StockOutParam stockOutParam = new StockOutParam(param,locDetl); workService.startupFullTakeStore(stockOutParam, userId); + return; } } + public void smallContainersJar(SmallCompleteParam param) { Long userId = 7777L;//mes //鍒ゆ柇param鍙傛暟 @@ -1207,10 +1215,7 @@ throw new CoolException("鍙傛暟锛氱墿鏂欑紪鐮� matnr涓虹┖"); }else if (Cools.isEmpty(param.getWeight())){ throw new CoolException("鍙傛暟锛氱墿鏂欓噸閲� wright涓虹┖"); - }else if (Cools.isEmpty(param.getColor())){ - throw new CoolException("鍙傛暟锛氱墿鏂欓鑹� color涓虹┖"); } - Mat mat = matService.selectByMatnr(param.getMatnr()); if (Cools.isEmpty(mat)) { // mat = new Mat(); @@ -1242,7 +1247,7 @@ if (Cools.isEmpty(basDevp.getBarcode())){ throw new CoolException("鐮佸灈浣嶇紪鍙� palletizingNo="+param.getStaNo()+" 鎵�澶勭珯鐐规枡绠辩爜寮傚父鐘舵�侊紱鏂欑鐮�==銆嬩负绌�"+basDevp.getBarcode()); } - if (CodeDetectionUtil.barcodeDetection(basDevp.getBarcode(),8)){ + if (!CodeDetectionUtil.barcodeDetection(basDevp.getBarcode(),8)){ throw new CoolException("鐮佸灈浣嶇紪鍙� palletizingNo="+param.getStaNo()+" 鎵�澶勭珯鐐规枡绠辩爜寮傚父鐘舵�侊紱鏂欑鐮侊細"+basDevp.getBarcode()); } @@ -1282,5 +1287,101 @@ } + public void smallContainersSta(SmallCompleteParam param) { + Long userId = 7777L;//mes + //鍒ゆ柇param鍙傛暟 + if (Cools.isEmpty(param.getType())){ + throw new CoolException("鍙傛暟锛氱被鍨� type涓虹┖"); + }else if (Cools.isEmpty(param.getStaNo())){ + throw new CoolException("鍙傛暟锛氭姇鏂欑偣浣� staNo涓虹┖"); + }else if (Cools.isEmpty(param.getDevNo())){ + throw new CoolException("鍙傛暟锛氫骇绾跨偣浣� devNo涓虹┖"); + }else if (Cools.isEmpty(param.getMatnr())){ + throw new CoolException("鍙傛暟锛氱墿鏂欑紪鐮� matnr涓虹┖"); + }else if (Cools.isEmpty(param.getWeight())){ + throw new CoolException("鍙傛暟锛氱墿鏂欓噸閲� wright涓虹┖"); + } + + Mat mat = matService.selectByMatnr(param.getMatnr()); + if (Cools.isEmpty(mat)) { + throw new CoolException("鐗╂枡锛�"+param.getMatnr()+" 涓嶅瓨鍦紝璇峰厛涓嬪彂鐗╂枡鍩虹淇℃伅"); + } + + Date now = new Date(); + + BasDevp basDevp = basDevpService.selectById(param.getStaNo()); + if (Cools.isEmpty(basDevp.getAutoing()) || !basDevp.getAutoing().equals("Y")){ + throw new CoolException("鐮佸灈浣嶇紪鍙� palletizingNo="+param.getStaNo()+" 鎵�澶勭珯鐐逛笉鏄嚜鍔ㄧ姸鎬�"); + } + if (Cools.isEmpty(basDevp.getLoading()) || !basDevp.getLoading().equals("Y")){ + throw new CoolException("鐮佸灈浣嶇紪鍙� palletizingNo="+param.getStaNo()+" 鎵�澶勭珯鐐逛笉鏄湁鐗╃姸鎬�"); + } + if (Cools.isEmpty(basDevp.getCanining()) || !basDevp.getCanining().equals("Y")){ + throw new CoolException("鐮佸灈浣嶇紪鍙� palletizingNo="+param.getStaNo()+" 鎵�澶勭珯鐐逛笉鏄兘鍏ョ姸鎬�"); + } + if (Cools.isEmpty(basDevp.getBarcode())){ + throw new CoolException("鐮佸灈浣嶇紪鍙� palletizingNo="+param.getStaNo()+" 鎵�澶勭珯鐐规枡绠辩爜寮傚父鐘舵�侊紱鏂欑鐮�==銆嬩负绌�"+basDevp.getBarcode()); + } + if (!CodeDetectionUtil.barcodeDetection(basDevp.getBarcode(),8)){ + throw new CoolException("鐮佸灈浣嶇紪鍙� palletizingNo="+param.getStaNo()+" 鎵�澶勭珯鐐规枡绠辩爜寮傚父鐘舵�侊紱鏂欑鐮侊細"+basDevp.getBarcode()); + } + + + if (locDetlService.selectCount(new EntityWrapper<LocDetl>().eq("zpallet", basDevp.getBarcode()))!=0 + || wrkDetlService.selectCount(new EntityWrapper<WrkDetl>().eq("zpallet", basDevp.getBarcode()))!=0 + || waitPakinService.selectCount(new EntityWrapper<WaitPakin>().eq("zpallet", basDevp.getBarcode()))!=0){ + throw new CoolException("鎵樼洏鏉$爜锛�"+basDevp.getBarcode()+"宸插瓨鍦紝璇峰嬁閲嶅缁勬墭"); + } + + // 鐢熸垚宸ヤ綔鍙� + int workNo = commonService.getWorkNo(WorkNoType.getWorkNoType(202)); + + // 鐢熸垚宸ヤ綔妗� + WrkMast wrkMast = new WrkMast(); + wrkMast.setWrkNo(workNo); + wrkMast.setIoTime(now); + wrkMast.setWrkSts(51L); // 宸ヤ綔鐘舵�侊細鐢熸垚ID + wrkMast.setIoType(202); // 鍏ュ嚭搴撶姸鎬侊細202.鐩翠緵浜х嚎 + wrkMast.setIoPri(99D); // 浼樺厛绾� + wrkMast.setSourceStaNo(param.getStaNo()); + wrkMast.setStaNo(param.getDevNo()); + wrkMast.setBarcode(basDevp.getBarcode()); + // 鎿嶄綔浜哄憳鏁版嵁 + wrkMast.setAppeUser(userId); + wrkMast.setAppeTime(now); + wrkMast.setModiUser(userId); + wrkMast.setModiTime(now); + if (!wrkMastService.insert(wrkMast)) { + throw new CoolException("鐢熸垚宸ヤ綔妗eけ璐�==銆嬪皬鏂欑鐩翠緵浜х嚎浠诲姟鐢熸垚"); + } + WrkDetl wrkDetl = new WrkDetl(); + wrkDetl.setWrkNo(wrkMast.getWrkNo()); + wrkDetl.setIoTime(wrkMast.getIoTime()); + wrkDetl.setMatnr(param.getMatnr()); + wrkDetl.setAnfme(1D); + wrkDetl.setWeight(param.getWeight()); + wrkDetl.setBarcode(basDevp.getBarcode()); + wrkDetl.setZpallet(basDevp.getBarcode()); + wrkDetl.setAppeTime(now); + wrkDetl.setModiTime(now); + if (!wrkDetlService.insert(wrkDetl)) { + throw new CoolException("淇濆瓨宸ヤ綔鏄庣粏澶辫触==銆嬪皬鏂欑鐩翠緵浜х嚎浠诲姟鏄庣粏鐢熸垚"); + } + + } + + public Integer getStaEnd(Integer staNo){ + switch (staNo){ + case 118: + case 119: + return 131; + case 120: + case 121: + return 135; + default: + return staNo; + } + } + /*...........................浜冲窞鐓滄槦..............浠ヤ笂.............浜冲窞鐓滄槦...........................*/ } -- Gitblit v1.9.1