From 43efe016c156158b9fc3a8b647810f612fb126e6 Mon Sep 17 00:00:00 2001
From: zwl <1051256694@qq.com>
Date: 星期二, 02 九月 2025 11:39:52 +0800
Subject: [PATCH] 自动补货单新增 1.订单中只能生成两笔自动补货单 2.CTU库是否有足够的空库位,空库位数需要大于100才会生成自动补货单 3.在补货时加上订单明细的数量进行判断
---
src/main/java/com/zy/asrs/task/handler/AutoReplenishmentHandler.java | 27 +++++++++++++++++++++++++--
1 files changed, 25 insertions(+), 2 deletions(-)
diff --git a/src/main/java/com/zy/asrs/task/handler/AutoReplenishmentHandler.java b/src/main/java/com/zy/asrs/task/handler/AutoReplenishmentHandler.java
index 044917d..971c519 100644
--- a/src/main/java/com/zy/asrs/task/handler/AutoReplenishmentHandler.java
+++ b/src/main/java/com/zy/asrs/task/handler/AutoReplenishmentHandler.java
@@ -12,13 +12,16 @@
import com.zy.asrs.utils.Utils;
import com.zy.common.model.enums.WorkNoType;
import com.zy.common.service.CommonService;
+import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.*;
+import java.util.stream.Collectors;
+@Slf4j
@Service
public class AutoReplenishmentHandler extends AbstractHandler<String> {
@@ -44,6 +47,7 @@
public ReturnT<String> create(Mat mat, double anfme) {
//鍒涘缓涓�涓柊鐨勮嚜鍔ㄨˉ璐у崟鎹�
Order order = createOrder();
+ orderService.insert(order);
OrderDetl orderDetl = createOrderDetl(order);
orderDetl.setMatnr(mat.getMatnr());
orderDetl.setMaktx(mat.getMaktx());
@@ -51,7 +55,7 @@
orderDetl.setAnfme(anfme);
orderDetl.setQty(0.0);
- orderService.insert(order);
+
orderDetlService.insert(orderDetl);
return SUCCESS;
@@ -73,6 +77,7 @@
List<LocDetl> locDetls = locDetlService.selectByLocNo(locNo);
createWrkDetl(locDetls, wrkMast,order.getOrderNo(),now);
//淇敼搴撲綅鐘舵��
+ log.warn("Flag - 24,{}搴撲綅鐘舵�佸彉鏇�,{} => {}", locMast.getLocNo(), locMast.getLocSts(), "R");
locMast.setLocSts("R");
locMastService.updateByLocNo(locMast);
}
@@ -157,7 +162,25 @@
//List<String> locNosSearch = locDetlService.selectLocNo(matnr);
Set<String> locNosSearch = locDetlService.selectLocNos(matnr);
- //閲嶆柊鎺掑簭 骞朵笖妫�娴嬭搴撲綅鏄惁鍚病鏈夋枡绠辩爜鐨勭墿鏂欙紝濡傛湁鏈夊垯涓嶅厑璁稿嚭搴�
+ //杩囨护搴撲綅璐х墿涓洪珮璐х墿
+ locNosSearch = locNosSearch.stream().filter(locNo -> {
+ LocMast locMast = locMastService.selectByLoc(locNo);
+ if(locMast.getLocType1() == 3){
+ return false;
+ }else {
+ //涓旀娴嬭搴撲綅鏄惁鍚病鏈夋枡绠辩爜鐨勭墿鏂欙紝濡傛湁鏈夊垯涓嶅厑璁稿嚭搴�
+// LocDetl locDetl = locDetlService.selectOne(new EntityWrapper<LocDetl>().eq("loc_no", locNo)
+// .andNew().eq("supp_code", "").or().isNull("supp_code"));
+
+ if(Cools.isEmpty(locDetlService.selectByLocWithoutContainer(locNo))){
+ return true;
+ }else {
+ return false;
+ }
+ }
+ }).collect(Collectors.toSet());
+
+ //閲嶆柊鎺掑簭
Set<String> resort = resort(locNosSearch);
for(String locNo : resort){
--
Gitblit v1.9.1