From 5fb5b6883895eed6b79a9b20a8bff748134e9cfb Mon Sep 17 00:00:00 2001
From: LSH
Date: 星期三, 27 十二月 2023 12:38:31 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/common/web/WcsController.java | 84 ++++++++++++++++++++++++++++++++++++++++--
1 files changed, 80 insertions(+), 4 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..5c5fe37 100644
--- a/src/main/java/com/zy/common/web/WcsController.java
+++ b/src/main/java/com/zy/common/web/WcsController.java
@@ -6,7 +6,9 @@
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.asrs.utils.Utils;
import com.zy.common.CodeRes;
import com.zy.common.model.LocTypeDto;
import com.zy.common.model.StartupDto;
@@ -17,6 +19,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 +48,10 @@
private LocDetlService locDetlService;
@Autowired
private RowLastnoService rowLastnoService;
+ @Autowired
+ private WorkService workService;
+ @Autowired
+ private BasCrnpService basCrnpService;
@PostMapping("/pakin/loc/v1")
@ResponseBody
@@ -70,7 +77,9 @@
return R.parse(CodeRes.NO_COMB_700);
}
int countLoc = locDetlService.selectCount(new EntityWrapper<LocDetl>().eq("zpallet",param.getBarcode()));
- int countWrk = wrkDetlService.selectCount(new EntityWrapper<WrkDetl>().eq("zpallet",param.getBarcode()));
+ int countWrk = wrkMastService.selectCount(new EntityWrapper<WrkMast>().eq("barcode",param.getBarcode())
+ .le("io_type",100));
+
if (countLoc > 0 || countWrk > 0) {
return R.error(CodeRes.EXIST_500);
}
@@ -107,7 +116,7 @@
BasDevp sourceStaNo = basDevpService.checkSiteStatus(12, true);
// 妫�绱㈠簱浣�
- StartupDto dto = commonService.getLocNo(rowLastnoService.selectNextWhsType(), 10, 15, null, locTypeDto,0);
+ StartupDto dto = commonService.getLocNo(1, 10, 12, null,null,null,0, locTypeDto,0);
Date now = new Date();
// 鐢熸垚宸ヤ綔妗�
WrkMast wrkMast = new WrkMast();
@@ -133,6 +142,46 @@
return wrkMastService.insert(wrkMast) ? R.ok("鑷姩绌烘墭鍏ュ簱鎴愬姛,宸ヤ綔鍙�:"+wrkMast.getWrkNo()) : R.error("鐢熸垚鑷姩绌烘墭鍏ュ簱澶辫触");
}
+ @PostMapping("auto/emptyOut/v1")
+ @ResponseBody
+ public R autoEmptyOut(@RequestParam("crnNo") Integer crnNo) {
+ List<LocMast> locMasts = locMastService.selectList(new EntityWrapper<LocMast>()
+ .eq("loc_sts", "D")
+ .eq("crn_no", crnNo)
+ .orderBy("lev1,bay1,row1"));
+ if (locMasts.isEmpty()) {
+ return R.error("搴撳瓨娌℃湁绌烘澘");
+ }
+
+ for (LocMast locMast : locMasts) {
+ LocMast locMast0 = null;
+ List<String> outerLocNo = Utils.getGroupLocNo(locMast.getLocNo(), false);
+ for (String loc : outerLocNo) {
+ LocMast locMast1 = locMastService.selectByLoc(loc);
+ if (locMast1 == null) {
+ continue;
+ }
+
+ if (locMast1.getLocSts().equals("D")) {
+ locMast0 = locMast1;
+ break;
+ }
+ }
+
+ if (locMast0 == null) {
+ continue;
+ }
+
+ EmptyPlateOutParam emptyPlateOutParam = new EmptyPlateOutParam();
+ ArrayList<String> locNos = new ArrayList<>();
+ locNos.add(locMast0.getLocNo());
+ emptyPlateOutParam.setLocNos(locNos);
+ WrkMast wrkMast = workService.emptyPlateOut(emptyPlateOutParam);
+ return R.ok(!Cools.isEmpty(wrkMast) ? R.ok("鑷姩绌烘墭鍑哄簱鎴愬姛,宸ヤ綔鍙�:" + wrkMast.getWrkNo()) : R.error("鐢熸垚鑷姩绌烘墭鍑哄簱澶辫触"));
+ }
+ return R.error("鐢熸垚鑷姩绌烘墭鍑哄簱澶辫触");
+ }
+
/**
* 鍏ㄦ澘鍏ュ簱
*/
@@ -142,7 +191,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(1, 1, devpNo, null,null,null,0, locTypeDto,0);
int workNo = dto.getWorkNo();
Date now = new Date();
// 鐢熸垚宸ヤ綔妗�
@@ -172,12 +232,17 @@
}
// 鐢熸垚宸ヤ綔妗f槑缁�
waitPakins.forEach(waitPakin -> {
+ String uuid = String.valueOf(System.currentTimeMillis());
WrkDetl wrkDetl = new WrkDetl();
wrkDetl.sync(waitPakin);
wrkDetl.setWrkNo(wrkMast.getWrkNo());
wrkDetl.setIoTime(wrkMast.getIoTime());
wrkDetl.setAppeTime(now);
wrkDetl.setModiTime(now);
+ wrkDetl.setUuid(uuid);
+ wrkDetl.setWeight(waitPakin.getWeight());
+ wrkDetl.setOwner(waitPakin.getOwner());
+ wrkDetl.setPayment(waitPakin.getPayment());
if (!wrkDetlService.insert(wrkDetl)) {
throw new CoolException("淇濆瓨宸ヤ綔鏄庣粏澶辫触");
}
@@ -216,8 +281,19 @@
public StartupDto emptyPlateIn(Integer devpNo, LocTypeDto locTypeDto, String barcode) {
// 婧愮珯鐐圭姸鎬佹娴�
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(1, 10, devpNo, null,null,null,0, locTypeDto,0);
int workNo = dto.getWorkNo();
// 鐢熸垚宸ヤ綔妗�
WrkMast wrkMast = new WrkMast();
--
Gitblit v1.9.1