From a1dd6ff24f7cae0b529ad313ba07351c07965605 Mon Sep 17 00:00:00 2001
From: pang.jiabao <pang_jiabao@163.com>
Date: 星期一, 03 十一月 2025 13:04:09 +0800
Subject: [PATCH] 管控线边仓库存
---
src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java | 66 +++++++++++++++++----------------
1 files changed, 34 insertions(+), 32 deletions(-)
diff --git a/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java
index e4c1241..2a055e4 100644
--- a/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java
@@ -29,10 +29,7 @@
import javax.annotation.Resource;
import java.math.BigDecimal;
-import java.util.ArrayList;
-import java.util.Date;
-import java.util.Iterator;
-import java.util.List;
+import java.util.*;
/**
* 绉诲姩绔湇鍔℃牳蹇冪被
@@ -155,7 +152,7 @@
manLocDetlMapper.updateAnfme(subtract.doubleValue(), combParam.getLocno(), combMat.getMatnr(), combMat.getBatch());
}
// 璁板綍鏃ュ織
- SaasUtils.insertLog(1, combParam.getLocno(), combMat.getMatnr(), combMat.getAnfme(), userId,combMat.getBatch());
+ SaasUtils.insertLog(Cools.isEmpty(combParam.getOrderNo()) ? 1 : 4, combParam.getLocno(), combMat.getMatnr(), combMat.getAnfme(), userId,combMat.getBatch());
} catch (Exception e) {
throw new CoolException("鏇存柊搴撳瓨鏁版嵁鍑洪敊" + e.getMessage());
}
@@ -188,7 +185,7 @@
throw new CoolException(locNo + ":搴撲綅涓嶅瓨鍦�");
}
if (!Cools.isEmpty(locDetl1)) {
- locDetl1.setAnfme(waitPakin.getAnfme() + waitPakin.getAnfme());
+ locDetl1.setAnfme(locDetl1.getAnfme() + waitPakin.getAnfme());
locDetl1.setUpdateBy(userId);
locDetl1.setModiTime(now);
manLocDetlService.update(locDetl1, new EntityWrapper<ManLocDetl>().eq("loc_no", locNo).eq("matnr", waitPakin.getMatnr()).
@@ -223,23 +220,24 @@
SaasUtils.insertLog(0, locNo, waitPakin.getMatnr(), waitPakin.getAnfme(), userId,waitPakin.getBatch());
//鏄惁灞炰簬璁㈠崟鏁版嵁
-// if (!Cools.isEmpty(waitPakin.getOrderNo())){
-// Order order = orderService.selectByNo(waitPakin.getOrderNo(), hostId);
-// if (Cools.isEmpty(order)){
-// continue;
-// }
-// OrderDetl orderDetl = orderDetlService.selectItem(order.getId(), waitPakin.getMatnr(), waitPakin.getBatch(),hostId);
-// if (Cools.isEmpty(orderDetl)){
-// continue;
-// }
-// // 淇敼璁㈠崟鏄庣粏瀹屾垚鏁伴噺
-// if (!orderDetlService.increase(order.getId(), hostId, waitPakin.getMatnr(), waitPakin.getBatch(), waitPakin.getAnfme())) {
-// throw new CoolException("淇敼鍗曟嵁鏄庣粏鏁伴噺澶辫触");
-// }
-// // 淇敼璁㈠崟鐘舵�� 浣滀笟涓� ===>> 宸插畬鎴�
-// orderService.checkComplete(waitPakin.getOrderNo(), hostId);
-//
-// }
+ //鏄惁灞炰簬璁㈠崟鏁版嵁
+ if (!Cools.isEmpty(waitPakin.getOrderNo())){
+ Order order = orderService.selectByNo(waitPakin.getOrderNo());
+ if (Cools.isEmpty(order)){
+ throw new CoolException("骞冲簱涓婃灦鏌ヨ璁㈠崟澶辫触");
+ }
+ OrderDetl orderDetl = orderDetlService.selectItem(order.getId(), waitPakin.getMatnr(), waitPakin.getBatch());
+ if (Cools.isEmpty(orderDetl)){
+ throw new CoolException("骞冲簱涓婃灦鏌ヨ璁㈠崟鏄庣粏澶辫触");
+ }
+ // 淇敼璁㈠崟鏄庣粏瀹屾垚鏁伴噺
+ if (!orderDetlService.increase(order.getId(),waitPakin.getMatnr(), waitPakin.getBatch(), waitPakin.getAnfme())) {
+ throw new CoolException("淇敼鍗曟嵁鏄庣粏鏁伴噺澶辫触");
+ }
+ // 淇敼璁㈠崟鐘舵�� 浣滀笟涓� ===>> 宸插畬鎴�
+ orderService.checkComplete(waitPakin.getOrderNo());
+
+ }
// 鏇存柊鍏ュ簱宸ヤ綔妗�
waitPakin.setLocNo(locNo);
@@ -294,7 +292,7 @@
Date now = new Date();
// 鏃犲崟缁勬墭
- if (Cools.isEmpty(param.getOrderNo())) {
+ if (Cools.isEmpty(param.getCombMats().get(0).getOrderNo())) {
// 鐢熸垚鍏ュ簱閫氱煡妗�
List<DetlDto> detlDtos = new ArrayList<>();
@@ -332,22 +330,22 @@
}
// 鍏宠仈缁勬墭
} else {
- Order order = orderService.selectByNo(param.getOrderNo());
- if (Cools.isEmpty(order) || order.getSettle() > 2) {
- throw new CoolException("鍗曟嵁缂栧彿宸茶繃鏈�");
- }
+
// 鐢熸垚鍏ュ簱閫氱煡妗�
List<DetlDto> detlDtos = new ArrayList<>();
param.getCombMats().forEach(elem -> {
-
+ Order order = orderService.selectByNo(elem.getOrderNo());
+ if (order.getSettle() > 2) {
+ throw new CoolException("鍗曟嵁缂栧彿宸插畬鎴愶細" + elem.getOrderNo());
+ }
// 璁㈠崟鏄庣粏鏁伴噺鏍¢獙
OrderDetl orderDetl = orderDetlService.selectItem(order.getId(), elem.getMatnr(), elem.getBatch());
if (elem.getAnfme() > orderDetl.getEnableQty()) {
throw new CoolException(orderDetl.getMatnr() + "鍏ュ簱鏁伴噺涓嶅悎娉�");
}
- // 淇敼璁㈠崟浣滀笟鏁伴噺
+ // 淇敼璁㈠崟鏄庣粏鏁伴噺
if (!orderDetlService.increaseWorkQty(order.getId(), elem.getMatnr(), elem.getBatch(), elem.getAnfme())) {
- throw new CoolException("淇敼鍗曟嵁浣滀笟鏁伴噺澶辫触");
+ throw new CoolException("淇敼鍗曟嵁鏄庣粏鏁伴噺澶辫触");
}
DetlDto detlDto = new DetlDto(elem.getMatnr(), elem.getBatch(), elem.getAnfme());
@@ -356,6 +354,7 @@
assert one != null;
one.setAnfme(one.getAnfme() + detlDto.getAnfme());
} else {
+ detlDto.setOrderNo(order.getOrderNo());
detlDtos.add(detlDto);
}
});
@@ -364,6 +363,9 @@
if (Cools.isEmpty(mat)) {
throw new CoolException(detlDto.getMatnr() + "鍟嗗搧妗f涓嶅瓨鍦�");
}
+
+ Order order = orderService.selectByNo(detlDto.getOrderNo());
+
WaitPakin waitPakin = new WaitPakin();
waitPakin.sync(mat);
waitPakin.setOrderNo(order.getOrderNo()); // 鍗曟嵁缂栧彿
@@ -379,8 +381,8 @@
if (!waitPakinService.insert(waitPakin)) {
throw new CoolException("淇濆瓨鍏ュ簱閫氱煡妗eけ璐�");
}
+ orderService.updateSettle(order.getId(), 2L, userId);
}
- orderService.updateSettle(order.getId(), 2L, userId);
}
}
--
Gitblit v1.9.1