From ab14726215678ac69adfeafbd845ebc5b0776ea2 Mon Sep 17 00:00:00 2001
From: zhangc <zc@123>
Date: 星期二, 14 一月 2025 14:56:41 +0800
Subject: [PATCH] 优化订单同步逻辑及库位查找
---
src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java | 39 +++++++++++++++++++++++----------------
1 files changed, 23 insertions(+), 16 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 163d97b..b8cc2a2 100644
--- a/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java
@@ -11,6 +11,7 @@
import com.zy.asrs.service.*;
import com.zy.asrs.task.core.ReturnT;
import com.zy.asrs.task.handler.WorkLogHandler;
+import com.zy.asrs.utils.CodeDetectionUtil;
import com.zy.asrs.utils.MatUtils;
import com.zy.asrs.utils.SaasUtils;
import com.zy.asrs.utils.Utils;
@@ -80,21 +81,24 @@
// if (Cools.isEmpty(param.getBarcode(), param.getCombMats())) {
// throw new CoolException(BaseRes.PARAM);
// }
+ if (Cools.isEmpty(param.getBarcode()) || !CodeDetectionUtil.barcodeDetection(param.getBarcode())){
+ throw new CoolException(param.getBarcode() + "璐ф灦鐮佹湁璇紝璇锋纭壂鐮侊紒锛侊紒");
+ }
// 鍒ゆ柇鏄惁鏈夌浉鍚屾潯鐮佺殑鏁版嵁
if (waitPakinService.selectCount(new EntityWrapper<WaitPakin>().
eq("zpallet", param.getBarcode()).eq("io_status", "N")) > 0) {
throw new CoolException(param.getBarcode() + "鏁版嵁姝e湪杩涜鍏ュ簱");
}
- //鍒ゆ柇鎵樼洏鏄惁宸茬粡鍦ㄥ簱
+ //鍒ゆ柇璐ф灦鏄惁宸茬粡鍦ㄥ簱
if (locDetlService.selectCount(new EntityWrapper<LocDetl>()
.eq("zpallet", param.getBarcode())) > 0) {
throw new CoolException(param.getBarcode() + "鏁版嵁宸茬粡鍦ㄥ簱");
}
- //鍒ゆ柇鏄惁瀛樺湪鏂欑鐮� => 瀛樺湪鏂欑鐮佸垯瑕佹眰鎻愪氦涓婃潵鐨勭墿鏂檒ist蹇呴』鍏ㄩ儴閮芥湁鏂欑鐮�
+ //鍒ゆ柇鏄惁瀛樺湪璐ф灦鐮� => 瀛樺湪璐ф灦鐮佸垯瑕佹眰鎻愪氦涓婃潵鐨勭墿鏂檒ist蹇呴』鍏ㄩ儴閮芥湁璐ф灦鐮�
boolean hasContainerCode = false;
- int containerCodeCount = 0;//鏂欑鐮佹暟閲�
+ int containerCodeCount = 0;//璐ф灦鐮佹暟閲�
for (CombParam.CombMat combMat : param.getCombMats()) {
if (combMat.getContainerCode() != null) {
hasContainerCode = true;
@@ -103,23 +107,23 @@
}
}
- //鍒ゆ柇鏂欑鏄惁宸茬粡鍑虹幇鍦ㄥ叆搴撻�氱煡妗c�佸簱瀛樹腑
+ //鍒ゆ柇璐ф灦鏄惁宸茬粡鍑虹幇鍦ㄥ叆搴撻�氱煡妗c�佸簱瀛樹腑
if (hasContainerCode) {
if (containerCodeCount != param.getCombMats().size()) {
- throw new CoolException(param.getBarcode() + "鎵樼洏鏈�" + (param.getCombMats().size()-containerCodeCount) + "涓湭鎵弿鐨勬枡绠�");
+ throw new CoolException(param.getBarcode() + "璐ф灦鏈�" + (param.getCombMats().size()-containerCodeCount) + "涓湭鎵弿鐨勮揣鏋�");
}
for (CombParam.CombMat combMat : param.getCombMats()) {
- //鍒ゆ柇鏂欑鏄惁姝e湪鍏ュ簱
+ //鍒ゆ柇璐ф灦鏄惁姝e湪鍏ュ簱
if (waitPakinService.selectCount(new EntityWrapper<WaitPakin>().
eq("supp_code", combMat.getContainerCode()).eq("io_status", "N")) > 0) {
- throw new CoolException(combMat.getContainerCode() + "鏂欑姝e湪杩涜鍏ュ簱");
+ throw new CoolException(combMat.getContainerCode() + "璐ф灦姝e湪杩涜鍏ュ簱");
}
- //鍒ゆ柇鏂欑鏄惁宸茬粡鍦ㄥ簱
+ //鍒ゆ柇璐ф灦鏄惁宸茬粡鍦ㄥ簱
if (locDetlService.selectCount(new EntityWrapper<LocDetl>()
.eq("supp_code", combMat.getContainerCode())) > 0) {
- throw new CoolException(combMat.getContainerCode() + "鏂欑宸茬粡鍦ㄥ簱");
+ throw new CoolException(combMat.getContainerCode() + "璐ф灦宸茬粡鍦ㄥ簱");
}
}
}
@@ -161,7 +165,7 @@
WaitPakin waitPakin = new WaitPakin();
waitPakin.sync(mat);
waitPakin.setBatch(detlDto.getBatch());
- waitPakin.setZpallet(param.getBarcode()); // 鎵樼洏鐮�
+ waitPakin.setZpallet(param.getBarcode()); // 璐ф灦鐮�
waitPakin.setIoStatus("N"); // 鍏ュ嚭鐘舵��
waitPakin.setAnfme(detlDto.getAnfme()); // 鏁伴噺
waitPakin.setStatus("Y"); // 鐘舵��
@@ -215,7 +219,7 @@
waitPakin.sync(mat);
waitPakin.setOrderNo(order.getOrderNo()); // 鍗曟嵁缂栧彿
waitPakin.setBatch(detlDto.getBatch()); // 搴忓垪鐮�
- waitPakin.setZpallet(param.getBarcode()); // 鎵樼洏鐮�
+ waitPakin.setZpallet(param.getBarcode()); // 璐ф灦鐮�
waitPakin.setIoStatus("N"); // 鍏ュ嚭鐘舵��
waitPakin.setAnfme(detlDto.getAnfme()); // 鏁伴噺
waitPakin.setStatus("Y"); // 鐘舵��
@@ -450,7 +454,7 @@
waitPakin.sync(mat);
waitPakin.setOrderNo(orderNo);
waitPakin.setBatch(detlDto.getBatch());
- waitPakin.setZpallet(param.getBarcode()); // 鎵樼洏鐮�
+ waitPakin.setZpallet(param.getBarcode()); // 璐ф灦鐮�
waitPakin.setIoStatus("N"); // 鍏ュ嚭鐘舵��
waitPakin.setAnfme(detlDto.getAnfme()); // 鏁伴噺
waitPakin.setStatus("Y"); // 鐘舵��
@@ -481,12 +485,15 @@
@Transactional
public void nodePutway(String zpallet, String locNo, User user) {
Date now = new Date();
+ if (Cools.isEmpty(zpallet) || !CodeDetectionUtil.barcodeDetection(zpallet)){
+ throw new CoolException(zpallet + "璐ф灦鐮佹湁璇紝璇锋纭壂鐮侊紒锛侊紒");
+ }
//澧炲姞骞冲簱搴撳瓨
List<WaitPakin> waitPakinList = waitPakinService.selectList(new EntityWrapper<WaitPakin>().eq("zpallet", zpallet));
if(Cools.isEmpty(waitPakinList)){
- throw new CoolException("璇ユ墭鐩樼爜鏈粍鎵�");
+ throw new CoolException("璇ヨ揣鏋剁爜鏈粍鎵�");
}
waitPakinList.forEach(waitPakin -> {
@@ -519,7 +526,7 @@
//鍒犻櫎鍏ュ簱閫氱煡妗�
waitPakinService.delete(new EntityWrapper<WaitPakin>().eq("zpallet", zpallet));
- orderService.checkComplete(waitPakinList.get(0).getOrderNo());
+ orderService.checkComplete(waitPakinList.get(0).getOrderNo(),null);
}
@@ -589,7 +596,7 @@
manLocDetlService.update(manLocDetl,manLocDetlWrapper);
//妫�娴嬭鍗曟槸鍚﹀畬鎴�
- orderService.checkComplete(param.getOrderNo());
+ orderService.checkComplete(param.getOrderNo(),null);
}
@@ -604,7 +611,7 @@
BeanUtils.copyProperties(locDetl,wrkDetl);
wrkDetl.setWrkNo(wrkDetls.get(0).getWrkNo());
if(wrkDetl.getAnfme() < param.getAnfme()){
- throw new CoolException("鏂欑"+param.getContainerCode()+"鐨勭墿鏂欐暟閲忓皬浜庢嫞鏂欐暟閲忥紝璇烽噸鏂版牳瀵�");
+ throw new CoolException("璐ф灦"+param.getContainerCode()+"鐨勭墿鏂欐暟閲忓皬浜庢嫞鏂欐暟閲忥紝璇烽噸鏂版牳瀵�");
}
wrkDetl.setAnfme(param.getAnfme());
wrkDetl.setModiTime(new Date());
--
Gitblit v1.9.1