From 3bcfebe3912bdaf8abf2d29b6913b771bad3804c Mon Sep 17 00:00:00 2001
From: zhang <zc857179121@qq.com>
Date: 星期一, 20 十月 2025 08:44:46 +0800
Subject: [PATCH] 1
---
src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java | 65 ++++++++++++++++++++++++++++++--
1 files changed, 60 insertions(+), 5 deletions(-)
diff --git a/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
index d2a15f0..bf92460 100644
--- a/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
@@ -119,7 +119,7 @@
// List<String> matnrs = param.getList().stream().map(FullStoreParam.MatCodeStore::getMatnr).distinct().collect(Collectors.toList());
// List<String> batchs = param.getList().stream().map(FullStoreParam.MatCodeStore::getBatch).distinct().collect(Collectors.toList());
FindLocNoAttributeVo findLocNoAttributeVo = new FindLocNoAttributeVo(param.getList().get(0));
- StartupDto dto = commonService.getLocNo(1, param.getDevpNo(), findLocNoAttributeVo, locTypeDto);
+ StartupDto dto = commonService.getLocNo(1, param.getDevpNo(), findLocNoAttributeVo, locTypeDto, param.getBarcode());
if (Cools.isEmpty(dto)) {
throw new CoolException("鏌ヨ搴撲綅澶辫触锛侊紒==銆媠tartupFullPutStore ==銆� commonService.getLocNo");
}
@@ -465,7 +465,16 @@
String orderNo = taskDto.getLocDtos().get(0).getOrderNo();
OrderPakout orderPakout = orderPakOutService.selectByNo(orderNo);
int ioType = orderPakout.getDocType() == 8 ? 107 : (taskDto.isAll() ? 101 : 103);
- StaDesc staDesc = staDescService.queryCrnStnAuto(ioType, locMast.getCrnNo(), staNo.getDevNo());
+ StaDesc staDesc = staDescService.queryCrnStnAuto(ioType, locMast.getCrnNo(), staNo.getDevNo(),locMast.getRow1());
+ Integer crnStn = staDesc.getCrnStn();
+ if (locMast.getCrnNo() == 1) {
+ if (locMast.getRow1() <= 3) {
+ crnStn = 1013;
+ }else {
+ crnStn = 1016;
+ }
+ }
+
// 鐢熸垚宸ヤ綔鍙�
int workNo = commonService.getWorkNo(WorkNoType.getWorkNoType(ioType));
// 鐢熸垚宸ヤ綔妗�
@@ -476,7 +485,7 @@
wrkMast.setIoType(ioType); // 鍏ュ嚭搴撶姸鎬�
wrkMast.setIoPri(13D); // 浼樺厛绾э細13
wrkMast.setCrnNo(locMast.getCrnNo());
- wrkMast.setSourceStaNo(staDesc.getCrnStn()); // 婧愮珯
+ wrkMast.setSourceStaNo(crnStn); // 婧愮珯
wrkMast.setStaNo(staDesc.getStnNo()); // 鐩爣绔�
wrkMast.setSourceLocNo(taskDto.getLocNo()); // 婧愬簱浣�
wrkMast.setFullPlt("Y"); // 婊℃澘锛歒
@@ -580,7 +589,7 @@
LocTypeDto locTypeDto = new LocTypeDto(sourceStaNo);
FindLocNoAttributeVo findLocNoAttributeVo = new FindLocNoAttributeVo();
- StartupDto dto = commonService.getLocNo(10, devpNo, findLocNoAttributeVo, locTypeDto);
+ StartupDto dto = commonService.getLocNo(10, devpNo, findLocNoAttributeVo, locTypeDto, null);
int workNo = dto.getWorkNo();
Date now = new Date();
// 鐢熸垚宸ヤ綔妗�
@@ -665,6 +674,14 @@
if (Cools.isEmpty(sourceStaNo)) {
throw new CoolException("妫�绱㈡簮绔欏け璐�");
}
+ if (locMast.getCrnNo() == 1) {
+ if (locMast.getRow1() <= 3) {
+ sourceStaNo = 1013;
+ }else {
+ sourceStaNo = 1016;
+ }
+ }
+
Date now = new Date();
// 淇濆瓨宸ヤ綔妗�
WrkMast wrkMast = new WrkMast();
@@ -727,6 +744,14 @@
if (Cools.isEmpty(sourceStaNo)) {
throw new CoolException("妫�绱㈡簮绔欏け璐�");
}
+ if (locMast.getCrnNo() == 1) {
+ if (locMast.getRow1() <= 3) {
+ sourceStaNo = 1013;
+ }else {
+ sourceStaNo = 1016;
+ }
+ }
+
Date now = new Date();
// 淇濆瓨宸ヤ綔妗�
@@ -807,10 +832,36 @@
if (Cools.isEmpty(sourceLoc)) {
throw new CoolException("鏈壘鍒板簱浣�");
}
+
+ if (Utils.isDeepLoc(slaveProperties, sourceLocNo)) {
+ String shallowLoc = Utils.getShallowLoc(slaveProperties, sourceLocNo);
+ LocMast locMast = locMastService.selectById(shallowLoc);
+ if (locMast == null) {
+ throw new CoolException(shallowLoc + "娴呭簱浣嶄笉瀛樺湪");
+ }
+
+ if(!locMast.getLocSts().equals("O")) {
+ throw new CoolException(shallowLoc + "娴呭簱浣嶇姸鎬佷笉涓虹┖");
+ }
+ }
+
LocMast loc = locMastService.selectById(locNo);
if (Cools.isEmpty(loc)) {
throw new CoolException("鏈壘鍒板簱浣�");
}
+
+ if (Utils.isDeepLoc(slaveProperties, locNo)) {
+ String shallowLoc = Utils.getShallowLoc(slaveProperties, locNo);
+ LocMast locMast = locMastService.selectById(shallowLoc);
+ if (locMast == null) {
+ throw new CoolException(shallowLoc + "娴呭簱浣嶄笉瀛樺湪");
+ }
+
+ if(!locMast.getLocSts().equals("O")) {
+ throw new CoolException(shallowLoc + "娴呭簱浣嶆湁璐э紝鏃犳硶绉昏浆");
+ }
+ }
+
// 鍒ゆ柇搴撲綅鏄惁鍐荤粨
String sourceLocFrozen = locMastMapper.findFirstFrozenLocNo(Arrays.asList(sourceLoc.getLocNo(), loc.getLocNo()));
if (sourceLocFrozen != null) {
@@ -853,6 +904,7 @@
wrkMast.setAppeTime(now);
wrkMast.setModiUser(userId);
wrkMast.setModiTime(now);
+ wrkMast.setMemo("浜哄伐鎵嬪姩绉诲簱");
boolean res = wrkMastService.insert(wrkMast);
if (!res) {
throw new CoolException("淇濆瓨宸ヤ綔妗eけ璐�");
@@ -983,7 +1035,7 @@
// todo 鐩樼偣璁板綍
// 淇敼搴撳瓨
if (!locDetlService.updateAnfme(adjust.getCount(), locDetl.getLocNo(), locDetl.getMatnr(), locDetl.getBatch(), locDetl.getBrand(),
- locDetl.getStandby1(), locDetl.getStandby2(), locDetl.getStandby3(), locDetl.getBoxType1(), locDetl.getBoxType2(), locDetl.getBoxType3())) {
+ adjust.getStandby1(), locDetl.getStandby2(), locDetl.getStandby3(), locDetl.getBoxType1(), locDetl.getBoxType2(), locDetl.getBoxType3())) {
throw new CoolException(locDetl.getLocNo() + "搴撲綅锛�" + locDetl.getMatnr() + "鍟嗗搧锛�" + locDetl.getBatch() + "鎵瑰彿淇敼鏁伴噺澶辫触");
}
// 淇濆瓨璋冩暣璁板綍
@@ -1157,6 +1209,9 @@
if (Cools.isEmpty(wrkMast)) {
throw new CoolException(workNo + "宸ヤ綔妗d笉瀛樺湪");
}
+ if (wrkMast.getWrkSts() ==14|| wrkMast.getWrkSts() == 15) {
+ throw new CoolException(workNo + "宸ヤ綔妗e凡瀹屾垚涓嶅厑璁稿彇娑�");
+ }
String locNo = ""; // 寰呬慨鏀圭洰鏍囧簱浣�
String locSts = ""; // 寰呬慨鏀圭洰鏍囧簱浣嶇姸鎬�
// 鍏ュ簱鍙栨秷锛堜慨鏀圭洰鏍囧簱浣嶏級
--
Gitblit v1.9.1