From aa221b6b6c3939130c78e4219207d14ce877ff30 Mon Sep 17 00:00:00 2001
From: zhang <zc857179121@qq.com>
Date: 星期三, 06 八月 2025 15:57:34 +0800
Subject: [PATCH] 1
---
src/main/java/com/zy/asrs/task/AutoReplenishmentScheduler.java | 32 +++++++++++++++++++++++++++-----
1 files changed, 27 insertions(+), 5 deletions(-)
diff --git a/src/main/java/com/zy/asrs/task/AutoReplenishmentScheduler.java b/src/main/java/com/zy/asrs/task/AutoReplenishmentScheduler.java
index 3f08e02..8cf793a 100644
--- a/src/main/java/com/zy/asrs/task/AutoReplenishmentScheduler.java
+++ b/src/main/java/com/zy/asrs/task/AutoReplenishmentScheduler.java
@@ -8,12 +8,14 @@
import com.zy.asrs.entity.Order;
import com.zy.asrs.service.*;
import com.zy.asrs.task.handler.AutoReplenishmentHandler;
+import com.zy.common.entity.Parameter;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;
import java.util.List;
+import java.util.Set;
@Slf4j
@Component
@@ -33,10 +35,15 @@
private LocDetlService locDetlService;
/*
- 瀹氭椂渚垮埄搴撳瓨锛岀敓鎴愯嚜鍔ㄨˉ璐у崟鎹�
+ 瀹氭椂閬嶅巻搴撳瓨锛岀敓鎴愯嚜鍔ㄨˉ璐у崟鎹�
*/
- @Scheduled(cron = "0/5 * * * * ? ")
+// @Scheduled(cron = "0 */1 * * * ? ")
public void createOrder(){
+
+ if(!"Y".equals(Parameter.get().getAutoReplenishment())){
+ return;
+ }
+
//妫�娴嬫槸鍚︽湁鏈畬鎴愮殑琛ヨ揣鍗曟嵁
DocType docType = docTypeService.selectOne(new EntityWrapper<DocType>().eq("doc_name", "鑷姩琛ヨ揣鍗�"));
int count = orderService.selectCount(new EntityWrapper<Order>()
@@ -56,12 +63,27 @@
if(Cools.isEmpty(anfmeSum)){
anfmeSum = 0.0;
}
- //鏌ヨ褰撳墠鐗╂枡鍥涢」搴撴槸鍚﹀瓨鍦�
+ //褰撳墠鐗╂枡涓嶉渶瑕佽ˉ璐�
+ if(anfmeSum > mat.getStoreMin()){
+ continue;
+ }
+ //鏌ヨ褰撳墠鐗╂枡鍥涢」搴撴槸鍚﹀瓨鍦�,骞朵笖璐ф灦涓嶅惈鏈夐潪璐ф灦鐗╂枡
if(Cools.isEmpty(locDetlService.selectOne(new EntityWrapper<LocDetl>().eq("matnr", mat.getMatnr())))){
continue;
}
- if(anfmeSum < mat.getStoreMin()){
+ Set<String> locNosSearch = locDetlService.selectLocNos(mat.getMatnr());
+ //鏄惁鍚湁鍙ˉ璐у嚭搴撶殑搴撲綅
+ boolean flag = false;
+ for (String locNo : locNosSearch){
+ //log.info("闇�瑕佹嫞鏂欑殑璐т綅锛�" + locNo +"锛岄渶瑕佽ˉ璐х殑鐗╂枡锛�" + mat.getMatnr());
+ if(Cools.isEmpty(locDetlService.selectByLocWithoutContainer(locNo))){
+ flag = true;
+ continue;
+ }
+ }
+
+ if(flag){
autoReplenishmentHandler.create(mat,mat.getStoreMax() - anfmeSum);
break;
}
@@ -72,7 +94,7 @@
/*
瀹氭椂澶勭悊鑷姩琛ヨ揣鍗曟嵁
*/
- @Scheduled(cron = "0/5 * * * * ? ")
+ //@Scheduled(cron = "0/10 * * * * ? ")
public void excuteOrder(){
DocType docType = docTypeService.selectOne(new EntityWrapper<DocType>().eq("doc_name", "鑷姩琛ヨ揣鍗�"));
List<Order> orderList = orderService.selectList(new EntityWrapper<Order>()
--
Gitblit v1.9.1