From 20b72a000801cf006bfe1f487baabc110594832f Mon Sep 17 00:00:00 2001
From: cl <1442464845@qq.com>
Date: 星期日, 05 四月 2026 17:55:42 +0800
Subject: [PATCH] 重量
---
src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java | 32 ++++++++++++++++++++++++++++++--
1 files changed, 30 insertions(+), 2 deletions(-)
diff --git a/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java b/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java
index aa515c1..a456d9b 100644
--- a/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java
+++ b/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java
@@ -10,6 +10,7 @@
import com.zy.asrs.task.AbstractHandler;
import com.zy.asrs.task.core.ReturnT;
import com.zy.common.entity.Parameter;
+import com.zy.integration.iot.biz.IotInstructionService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
@@ -18,6 +19,7 @@
import org.springframework.transaction.annotation.Transactional;
import org.springframework.transaction.interceptor.TransactionAspectSupport;
+import java.math.BigDecimal;
import java.util.*;
import java.util.stream.Collectors;
@@ -49,6 +51,8 @@
private OrderPakinService orderPakinService;
@Autowired
private WorkService workService;
+ @Autowired
+ private IotInstructionService iotInstructionService;
@Value("${erp.switch.ErpReportOld}")
private boolean erpReportOld;
@@ -88,11 +92,30 @@
if (!Cools.isEmpty(erpReport) && !"true".equalsIgnoreCase(erpReport)) {
return false;
}
- if (wrkMast == null || Cools.isEmpty(wrkMast.getBarcode())) {
+ if (wrkMast == null) {
return false;
}
Integer ioType = wrkMast.getIoType();
- return ioType != null && (ioType == 101 || ioType == 108 || ioType == 110);
+ if (ioType == null || (ioType != 101 && ioType != 108 && ioType != 110)) {
+ return false;
+ }
+ return !Cools.isEmpty(resolveOutboundPalletId(wrkMast));
+ }
+
+ private String resolveOutboundPalletId(WrkMast wrkMast) {
+ if (!Cools.isEmpty(wrkMast.getBarcode())) {
+ return wrkMast.getBarcode();
+ }
+ List<WrkDetl> wrkDetls = wrkDetlService.selectByWrkNo(wrkMast.getWrkNo());
+ if (Cools.isEmpty(wrkDetls)) {
+ return null;
+ }
+ for (WrkDetl wrkDetl : wrkDetls) {
+ if (!Cools.isEmpty(wrkDetl.getZpallet())) {
+ return wrkDetl.getZpallet();
+ }
+ }
+ return null;
}
public ReturnT<String> doIn(WrkMast wrkMast) {
@@ -437,6 +460,7 @@
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
return FAIL.setMsg("鏇存柊鍏ュ簱瀹屾垚鐘舵�佸け璐�; [workNo=" + wrkMast.getWrkNo() + "],[locNo=" + wrkMast.getLocNo() + "]");
}
+ iotInstructionService.queueWorkCompletion(wrkMast);
} catch (Exception e) {
log.error("fail", e);
e.printStackTrace();
@@ -505,6 +529,7 @@
if (locMast.getLocSts().equals("R")) {
locMast.setLocSts("O");
locMast.setBarcode("");
+ locMast.setScWeight(BigDecimal.ZERO);
locMast.setModiTime(now);
locMast.setIoTime(now);
if (!locMastService.updateById(locMast)) {
@@ -554,6 +579,7 @@
if (locMast.getLocSts().equals("R")) {
locMast.setLocSts("O");
locMast.setBarcode("");
+ locMast.setScWeight(BigDecimal.ZERO);
locMast.setModiTime(now);
locMast.setIoTime(now);
if (!locMastService.updateById(locMast)) {
@@ -586,6 +612,7 @@
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
return FAIL.setMsg("鏇存柊鍑哄簱瀹屾垚鐘舵�佸け璐�; [workNo=" + wrkMast.getWrkNo() + "],[locNo=" + wrkMast.getSourceLocNo() + "]");
}
+ iotInstructionService.queueWorkCompletion(wrkMast);
} catch (Exception e) {
log.error("fail", e);
e.printStackTrace();
@@ -595,3 +622,4 @@
return SUCCESS;
}
}
+
--
Gitblit v1.9.1