From 1b7c03baf021e4896b296e2c0af277c4c57656e8 Mon Sep 17 00:00:00 2001
From: pang.jiabao <pang_jiabao@163.com>
Date: 星期一, 12 八月 2024 17:27:03 +0800
Subject: [PATCH] 空托入库到达入库码头请求入库更新条码
---
src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java | 129 ++++++++++++++++++++++++++-----------------
1 files changed, 78 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..a2a9b82 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());
@@ -1108,6 +1116,9 @@
}
wrkMast.setWrkSts(2L);
+ if(wrkMast.getIoType() == 10){
+ wrkMast.setBarcode(param.getBarcode());
+ }
wrkMastService.updateById(wrkMast);
return "璇锋眰鎴愬姛";
@@ -1237,17 +1248,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()) {
@@ -1277,6 +1303,7 @@
wrkMast.setStaNo(staDesc.getStnNo()); // 鐩爣绔�
wrkMast.setCrnNo(locMast.getCrnNo());
wrkMast.setSourceLocNo(locMast.getLocNo()); // 婧愬簱浣�
+ wrkMast.setBarcode(locMast.getBarcode());
wrkMast.setFullPlt("N"); // 婊℃澘锛歒
wrkMast.setPicking("N"); // 鎷f枡
wrkMast.setExitMk("N"); // 閫�鍑�
--
Gitblit v1.9.1