From 0ee00b5d3cbd625fc9d0e92f88bb327aac6c86e9 Mon Sep 17 00:00:00 2001
From: 王佳豪 <g675230687@126.com>
Date: 星期六, 15 五月 2021 15:27:34 +0800
Subject: [PATCH] 1.立库任务单入库支持批量组托的功能
---
src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java | 84 ++++++++++++++++++++++++++++++++++++++++--
1 files changed, 80 insertions(+), 4 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 cd6121c..3b05adb 100644
--- a/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java
@@ -95,7 +95,7 @@
// 鍏宠仈閫氱煡鍗曠粍鎵�
for (CombParam.CombMat combMat : param.getCombMats()) {
WaitPakin one = waitPakinService.selectOne(new EntityWrapper<WaitPakin>()
- .eq("supplier", param.getBillNo())
+ .eq("supplier", combMat.getSupplier())
.eq("matnr", combMat.getMatNo())
.isNull("zpallet"));
if (one == null) {
@@ -115,24 +115,25 @@
waitPakin.setAppeTime(new Date());
waitPakin.setModiUser(userId);
waitPakin.setModiTime(new Date());
+ waitPakin.setSupplier(combMat.getSupplier());
if (!waitPakinService.insert(waitPakin)) {
throw new CoolException("淇濆瓨鏁版嵁澶辫触");
}
// 鍑忓皯閫氱煡鍗曚笂璇ョ墿鏂欑粍鎵樻暟閲�
if (waitPakin.getAnfme() >= one.getAnfme()) {
waitPakinService.delete(new EntityWrapper<WaitPakin>()
- .eq("supplier", param.getBillNo())
+ .eq("supplier", combMat.getSupplier())
.eq("matnr", combMat.getMatNo())
.eq("mnemonic", param.getMnemonic())
.isNull("zpallet"));
} else {
Wrapper<WaitPakin> wrapper = new EntityWrapper<WaitPakin>();
if ("".equals(param.getMnemonic())) {
- wrapper.eq("supplier", param.getBillNo())
+ wrapper.eq("supplier", combMat.getSupplier())
.eq("matnr", combMat.getMatNo())
.isNull("zpallet");
} else {
- wrapper.eq("supplier", param.getBillNo())
+ wrapper.eq("supplier", combMat.getSupplier())
.eq("matnr", combMat.getMatNo())
.eq("mnemonic", param.getMnemonic())
.isNull("zpallet");
@@ -153,4 +154,79 @@
}
+ @Override
+ @Transactional
+ public void combBatch(CombParam param, Long userId) {
+ if (Cools.isEmpty(param.getBarcode())) {
+ throw new CoolException(BaseRes.PARAM);
+ }
+ if (Cools.isEmpty(param.getCombMats()) && Cools.isEmpty(param.getProductCode())) {
+ throw new CoolException(BaseRes.PARAM);
+ }
+ int count = waitPakinService.selectCount(new EntityWrapper<WaitPakin>().
+ eq("zpallet", param.getBarcode()).eq("io_status", "N"));
+ if (count > 0) {
+ throw new CoolException("鏉$爜鏁版嵁宸插瓨鍦�");
+ }
+ // 鍏宠仈閫氱煡鍗曠粍鎵�
+ for (CombParam.CombMat combMat : param.getCombMats()) {
+ WaitPakin one = waitPakinService.selectOne(new EntityWrapper<WaitPakin>()
+ .eq("supplier", combMat.getSupplier())
+ .eq("matnr", combMat.getMatNo())
+ .isNull("zpallet"));
+ if (one == null) {
+ throw new CoolException("閫氱煡鍗曚笉瀛樺湪" + combMat.getMatNo() + "鏁版嵁锛�");
+ }
+ if (combMat.getCount() > one.getAnfme()) {
+ throw new CoolException(combMat.getMatNo() + "鐗╂枡鏁伴噺涓嶈冻锛�");
+ }
+ MatCode matCode = matCodeService.selectById(combMat.getMatNo());
+ if (Cools.isEmpty(matCode)) {
+ throw new CoolException("鐗╂枡鏁版嵁閿欒");
+ }
+ WaitPakin waitPakin = one.clone();
+ waitPakin.setZpallet(param.getBarcode()); // 鎵樼洏鐮�
+ waitPakin.setAnfme(combMat.getCount()); // 鏁伴噺
+ waitPakin.setAppeUser(userId);
+ waitPakin.setAppeTime(new Date());
+ waitPakin.setModiUser(userId);
+ waitPakin.setModiTime(new Date());
+ waitPakin.setSupplier(combMat.getSupplier());
+ if (!waitPakinService.insert(waitPakin)) {
+ throw new CoolException("淇濆瓨鏁版嵁澶辫触");
+ }
+ // 鍑忓皯閫氱煡鍗曚笂璇ョ墿鏂欑粍鎵樻暟閲�
+ if (waitPakin.getAnfme() >= one.getAnfme()) {
+ waitPakinService.delete(new EntityWrapper<WaitPakin>()
+ .eq("supplier", combMat.getSupplier())
+ .eq("matnr", combMat.getMatNo())
+ .eq("mnemonic", combMat.getMnemonic())
+ .isNull("zpallet"));
+ } else {
+ Wrapper<WaitPakin> wrapper = new EntityWrapper<WaitPakin>();
+ if ("".equals(param.getMnemonic())) {
+ wrapper.eq("supplier", combMat.getSupplier())
+ .eq("matnr", combMat.getMatNo())
+ .isNull("zpallet");
+ } else {
+ wrapper.eq("supplier", combMat.getSupplier())
+ .eq("matnr", combMat.getMatNo())
+ .eq("mnemonic", combMat.getMnemonic())
+ .isNull("zpallet");
+ }
+ WaitPakin pakin = new WaitPakin();
+ pakin.setAnfme(one.getAnfme() - waitPakin.getAnfme());
+ pakin.setSupplier(combMat.getSupplier());
+ pakin.setMatnr(combMat.getMatNo());
+ pakin.setMnemonic(combMat.getMnemonic());
+ if (!waitPakinService.update(pakin, wrapper)) {
+ throw new CoolException("鏇存柊鏁版嵁澶辫触");
+ }
+
+ }
+
+ }
+
+
+ }
}
--
Gitblit v1.9.1