From 3d8242c78bde80d129aff622c20e0e2412aaf6c4 Mon Sep 17 00:00:00 2001
From: skyouc <creaycat@gmail.com>
Date: 星期三, 14 一月 2026 09:53:35 +0800
Subject: [PATCH] 出库流程优化
---
src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java | 42 +++++++++++++++++++++---------------------
1 files changed, 21 insertions(+), 21 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 9257903..8ecbbfc 100644
--- a/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
@@ -418,11 +418,9 @@
// 鐢熸垚宸ヤ綔鍙�
int workNo = commonService.getWorkNo(WorkNoType.getWorkNoType(ioType));
String wrkCode = null;
- //TODO 濡傛灉鏈哄彴鍙蜂笉涓虹┖锛屽垽鏂綋鍓嶆満鍙颁笌褰撳墠鍑哄簱搴撲綅鏄惁鍦ㄥ悓涓�搴撳尯鎴栧悓涓�鍙板爢鍨涙満锛堢浉鍚岀珯鐐癸級
- //TODO 1. 濡傛灉鏄悓涓�鍙板爢鍨涙満锛岀敓鎴愮Щ搴擄紙鍑哄簱锛変换鍔� 2. 濡傛灉涓嶆槸锛岀敓鎴愬嚭搴撲换鍔★紝鍐嶇敓鎴愬叆搴撲换鍔�
- //TODO 鍙︿竴绉嶆柟妗堬紝涓嶇鏄惁褰撳墠宸烽亾锛岀粺涓�鍑哄簱锛屽啀鍏ュ簱
if (!Objects.isNull(deviceNo)) {
wrkCode = workNo + "-1";
+ ioType = 101;
generateOutStock(taskDto, userId, workNo, wrkCode, now, ioType, locMast, staDesc, deviceNo);
} else {
generateOutStock(taskDto, userId, workNo, wrkCode, now, ioType, locMast, staDesc, null);
@@ -454,7 +452,7 @@
throw new CoolException("鏈哄彴淇℃伅涓嶅瓨鍦ㄦ垨宸茬鐢紒锛�");
}
- List<LocAroundBind> binds = locAroundBindService.selectList( new EntityWrapper<LocAroundBind>()
+ List<LocAroundBind> binds = locAroundBindService.selectList(new EntityWrapper<LocAroundBind>()
.eq("dev_no", basDevice.getDevNo())
.eq("is_default", 1));
@@ -541,7 +539,16 @@
wrkDetl.setStandby1(locDto.getStandby1());
wrkDetl.setBatch(locDto.getBatch());
wrkDetl.setOrderNo(locDto.getOrderNo());
- wrkDetl.setAnfme(locDto.getAnfme()); // 鏁伴噺
+// wrkDetl.setAnfme(locDto.getAnfme()); // 鏁伴噺
+ LocDetl locDel = locDetlService.selectOne(new EntityWrapper<LocDetl>()
+ .eq("loc_no", locDto.getLocNo())
+ .eq("batch", locDto.getBatch())
+ .eq(!Objects.isNull(locDto.getBarcode()), "barcode", locDto.getBarcode())
+ .eq("matnr", locDto.getMatnr()));
+ if (Objects.isNull(locDel)) {
+ throw new CoolException("鏁版嵁閿欒锛屽簱瀛樻槑缁嗕笉瀛樺湪锛侊紒");
+ }
+ wrkDetl.setAnfme(locDel.getAnfme());
wrkDetl.setAppeTime(now);
wrkDetl.setAppeUser(userId);
wrkDetl.setModiTime(now);
@@ -1337,20 +1344,9 @@
} else {
if (wrkMast.getIoType() == 103) {
ioType = 1;
- } else if (wrkMast.getIoType() == 101) {
- ioType = 10;
}
-
- wokNo = commonService.getWorkNo(0);
}
- // 淇濆瓨宸ヤ綔鏄庣粏妗e巻鍙叉。
-// if (!wrkDetlLogService.save(wrkMast.getWrkNo())) {
-// throw new CoolException("淇濆瓨宸ヤ綔鏄庣粏妗e巻鍙叉。澶辫触");
-//// }
-// // 淇濆瓨宸ヤ綔涓绘。鍘嗗彶妗�
-// if (!wrkMastLogService.save(wrkMast.getWrkNo())) {
-// throw new CoolException("淇濆瓨宸ヤ綔涓绘。鍘嗗彶妗eけ璐�");
-// }
+
// 鑾峰彇鐩爣绔�
Wrapper<StaDesc> wrapper = new EntityWrapper<StaDesc>()
.eq("type_no", ioType)
@@ -1390,7 +1386,7 @@
@Override
- @Transactional
+ @Transactional(rollbackFor = Exception.class)
public void backLocOperation(String workNo, Long userId) {
WrkMast wrkMast = wrkMastService.selectById(workNo);
if (Cools.isEmpty(wrkMast)) {
@@ -1440,7 +1436,6 @@
if (Cools.isEmpty(wrkDetls)) {
throw new CoolException("鏁版嵁閿欒锛屼换鍔℃。鏄庣粏涓嶅瓨鍦� 锛侊紒");
}
-
wrkDetls.forEach(wrkDetl -> {
WrkDetl wrkDetl1 = new WrkDetl();
BeanUtils.copyProperties(wrkDetl, wrkDetl1);
@@ -1458,9 +1453,14 @@
if (!locMastService.updateById(locMast)) {
throw new CoolException("淇敼搴撲綅鐘舵�佸け璐�");
}
+
+ wrkMast.setWrkCode(null);
+
+ if (!wrkMastService.updateById(wrkMast)) {
+ throw new CoolException("浠诲姟妗f洿鏂板け璐ワ紒锛�");
+ }
+
}
-
-
@Override
--
Gitblit v1.9.1