From c8ffad2a1b5d278824aa2650a4ff461ec738af9f Mon Sep 17 00:00:00 2001 From: 李天宇 <876263681@qq.com> Date: 星期四, 07 十一月 2024 22:00:31 +0800 Subject: [PATCH] #update --- src/main/java/com/zy/common/web/WcsController.java | 60 ++++++++++++++++++++++++++++++++++++++++++++++++++++-------- 1 files changed, 52 insertions(+), 8 deletions(-) diff --git a/src/main/java/com/zy/common/web/WcsController.java b/src/main/java/com/zy/common/web/WcsController.java index 1ed25a3..1417aad 100644 --- a/src/main/java/com/zy/common/web/WcsController.java +++ b/src/main/java/com/zy/common/web/WcsController.java @@ -6,6 +6,7 @@ import com.core.common.R; import com.core.exception.CoolException; import com.zy.asrs.entity.*; +import com.zy.asrs.entity.param.EmptyPlateOutParam; import com.zy.asrs.service.*; import com.zy.common.CodeRes; import com.zy.common.model.LocTypeDto; @@ -17,6 +18,7 @@ import org.springframework.transaction.annotation.Transactional; import org.springframework.web.bind.annotation.*; +import java.util.ArrayList; import java.util.Date; import java.util.List; import java.util.stream.Collectors; @@ -45,6 +47,10 @@ private LocDetlService locDetlService; @Autowired private RowLastnoService rowLastnoService; + @Autowired + private WorkService workService; + @Autowired + private BasCrnpService basCrnpService; @PostMapping("/pakin/loc/v1") @ResponseBody @@ -67,7 +73,7 @@ if (wrkMast != null && wrkMast.getIoType() == 103) { return R.parse(CodeRes.PICK_600); } - return R.parse(CodeRes.NO_COMB_700); + return R.error(param.getBarcode() + "姝ゆ潯鐮佹湭缁勬墭锛岃鍏堢粍鎵橈紒"); } int countLoc = locDetlService.selectCount(new EntityWrapper<LocDetl>().eq("zpallet",param.getBarcode())); int countWrk = wrkDetlService.selectCount(new EntityWrapper<WrkDetl>().eq("zpallet",param.getBarcode())); @@ -91,7 +97,7 @@ dto = startupFullPutStore(param.getSourceStaNo(), param.getBarcode(), locTypeDto, waitPakins); break; case 10://绌烘墭鐩樺叆搴� - dto = emptyPlateIn(param.getSourceStaNo(), locTypeDto, param.getBarcode()); + dto = emptyPlateIn(param.getSourceStaNo(), locTypeDto, param.getBarcode(),param.isFull()); break; default: break; @@ -107,7 +113,7 @@ BasDevp sourceStaNo = basDevpService.checkSiteStatus(12, true); // 妫�绱㈠簱浣� - StartupDto dto = commonService.getLocNo(rowLastnoService.selectNextWhsType(), 10, 15, null, locTypeDto,0); + StartupDto dto = commonService.getLocNo(rowLastnoService.selectNextWhsType(), 10, 12, null, locTypeDto,0); Date now = new Date(); // 鐢熸垚宸ヤ綔妗� WrkMast wrkMast = new WrkMast(); @@ -133,6 +139,21 @@ return wrkMastService.insert(wrkMast) ? R.ok("鑷姩绌烘墭鍏ュ簱鎴愬姛,宸ヤ綔鍙�:"+wrkMast.getWrkNo()) : R.error("鐢熸垚鑷姩绌烘墭鍏ュ簱澶辫触"); } + @PostMapping("auto/emptyOut/v1") + @ResponseBody + public R autoEmptyOut(){ + LocMast locMast = locMastService.selectOne(new EntityWrapper<LocMast>() + .eq("loc_sts", "D")); + if (Cools.isEmpty(locMast)) { + return R.error("搴撳瓨娌℃湁绌烘澘"); + } + EmptyPlateOutParam emptyPlateOutParam = new EmptyPlateOutParam(); + emptyPlateOutParam.setOutSite(12); + emptyPlateOutParam.setLocNos(new ArrayList<String>(){{add(locMast.getLocNo()+"");}}); + WrkMast wrkMast = workService.emptyPlateOut(emptyPlateOutParam); + return R.ok(!Cools.isEmpty(wrkMast)? R.ok("鑷姩绌烘墭鍑哄簱鎴愬姛,宸ヤ綔鍙�:" + wrkMast.getWrkNo()) : R.error("鐢熸垚鑷姩绌烘墭鍑哄簱澶辫触")); + } + /** * 鍏ㄦ澘鍏ュ簱 */ @@ -142,7 +163,18 @@ BasDevp sourceStaNo = basDevpService.checkSiteStatus(devpNo, true); // 妫�绱㈠簱浣� List<String> matNos = waitPakins.stream().map(WaitPakin::getMatnr).distinct().collect(Collectors.toList()); - StartupDto dto = commonService.getLocNo(1, 1, devpNo, matNos, locTypeDto,0); + int rowCount = rowLastnoService.selectCount(null); + Integer integer = 2; + for (int i = 1; i <= rowCount; i++) { + integer = rowLastnoService.selectNextWhsType(); + BasCrnp crn_no = basCrnpService.selectOne(new EntityWrapper<BasCrnp>() + .eq("crn_no", integer)); + if (crn_no.getInEnable().equals("Y") && crn_no.getCrnSts() == 3){ + break; + } + } + + StartupDto dto = commonService.getLocNo(integer, 1, devpNo, matNos, locTypeDto,0); int workNo = dto.getWorkNo(); Date now = new Date(); // 鐢熸垚宸ヤ綔妗� @@ -151,7 +183,7 @@ wrkMast.setIoTime(new Date()); wrkMast.setWrkSts(2L); // 宸ヤ綔鐘舵�侊細鐢熸垚鍏ュ簱ID wrkMast.setIoType(1); // 鍏ュ嚭搴撶姸鎬侊細1.鍏ュ簱 - wrkMast.setIoPri(13D); // 浼樺厛绾� + wrkMast.setIoPri(14D); // 浼樺厛绾� wrkMast.setCrnNo(dto.getCrnNo()); wrkMast.setSourceStaNo(dto.getSourceStaNo()); wrkMast.setStaNo(dto.getStaNo()); @@ -213,11 +245,22 @@ } @Transactional - public StartupDto emptyPlateIn(Integer devpNo, LocTypeDto locTypeDto, String barcode) { + public StartupDto emptyPlateIn(Integer devpNo, LocTypeDto locTypeDto, String barcode,boolean isFull) { // 婧愮珯鐐圭姸鎬佹娴� BasDevp sourceStaNo = basDevpService.checkSiteStatus(devpNo, true); + int rowCount = rowLastnoService.selectCount(null); + Integer integer = 2; + for (int i = 1; i <= rowCount; i++) { + integer = rowLastnoService.selectNextWhsType(); + BasCrnp crn_no = basCrnpService.selectOne(new EntityWrapper<BasCrnp>() + .eq("crn_no", integer)); + if (crn_no.getInEnable().equals("Y") + && crn_no.getCrnSts() == 3){ + break; + } + } // 妫�绱㈠簱浣� - StartupDto dto = commonService.getLocNo(1, 10, devpNo, null, locTypeDto,0); + StartupDto dto = commonService.getLocNo(integer, 10, devpNo, null, locTypeDto,0); int workNo = dto.getWorkNo(); // 鐢熸垚宸ヤ綔妗� WrkMast wrkMast = new WrkMast(); @@ -230,7 +273,8 @@ wrkMast.setSourceStaNo(dto.getSourceStaNo()); wrkMast.setStaNo(dto.getStaNo()); wrkMast.setLocNo(dto.getLocNo()); - wrkMast.setFullPlt("N"); // 婊℃澘 + wrkMast.setFullPlt(isFull?"Y":"N"); // 婊℃澘 +//// wrkMast.setFullPlt("N"); // 婊℃澘 wrkMast.setPicking("N"); // 鎷f枡 wrkMast.setExitMk("N"); // 閫�鍑� wrkMast.setEmptyMk("Y"); // 绌烘澘 -- Gitblit v1.9.1