From 666edb2c889556d3d963c341241cf43fafd32434 Mon Sep 17 00:00:00 2001
From: skyouc
Date: 星期四, 06 三月 2025 12:33:56 +0800
Subject: [PATCH] #优化 1. 路由层级修改
---
rsf-server/src/main/java/com/vincent/rsf/server/manager/utils/ScheduleJobs.java | 38 +++++++++++++++++++++++++++++---------
1 files changed, 29 insertions(+), 9 deletions(-)
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/utils/ScheduleJobs.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/utils/ScheduleJobs.java
index dedd1a5..1513cd5 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/utils/ScheduleJobs.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/utils/ScheduleJobs.java
@@ -2,16 +2,20 @@
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.vincent.rsf.framework.exception.CoolException;
+import com.vincent.rsf.server.common.utils.DateUtils;
import com.vincent.rsf.server.manager.entity.*;
import com.vincent.rsf.server.manager.service.*;
+import com.vincent.rsf.server.system.constant.SerialRuleCode;
+import com.vincent.rsf.server.system.utils.SerialRuleUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.scheduling.annotation.Scheduled;
+import org.springframework.stereotype.Component;
import org.springframework.transaction.annotation.Transactional;
import java.util.ArrayList;
-import java.util.Collection;
-import java.util.Collections;
+import java.util.Date;
import java.util.List;
+import java.util.Objects;
/**
* @author Ryan
@@ -20,6 +24,7 @@
* @description
* @create 2025/3/3 15:38
*/
+@Component
public class ScheduleJobs {
@Autowired
@@ -37,29 +42,37 @@
private AsnOrderItemService asnOrderItemService;
/**
* @author Ryan
- * @description 鏍规嵁PO鍗曟嵁鐢熸垚ASN鍗�
+ * @description 鏍规嵁PO鍗曟嵁鐢熸垚ASN鍗�,鑷姩鐢熸垚ASN鍗曚负鍏ㄩ噺鐢熸垚
* @throws
* @return
* @time 2025/3/3 15:44
*/
- @Scheduled(cron = "0/10 * * * * ? ")
+ @Scheduled(cron = "0 0/30 * * * ? ")
@Transactional(rollbackFor = Exception.class)
public void genAsnOrder() {
//鑾峰彇鏈敓鎴怉SN鍗曟嵁
- List<Purchase> purchases = purchaseService.list(new LambdaQueryWrapper<Purchase>().eq(Purchase::getStatus, 2));
+ List<Purchase> purchases = purchaseService.list(new LambdaQueryWrapper<Purchase>().eq(Purchase::getStatus, 0));
//閲囪喘鍗曚负绌猴紝鐩存帴璺冲嚭褰撳墠浠诲姟
if (purchases.isEmpty()) {
return;
}
//鐢熸垚ASN鍗曟嵁
purchases.forEach(purchase -> {
+ if (!Objects.isNull(purchase.getStartTime())) {
+ //鍒ゆ柇璧峰鏃堕棿鏄惁澶т簬褰撳墠鏃堕棿
+ if (DateUtils.compareDate(new Date(), purchase.getStartTime())) {
+ return;
+ }
+ }
List<PurchaseItem> items = purchaseItemService.list(new LambdaQueryWrapper<PurchaseItem>().eq(PurchaseItem::getPurchaseId, purchase.getId()));
- //瀛愬垪琛ㄤ负绌烘暟鎹紝鐩存帴璺冲嚭
if (items.isEmpty()) {
- return;
+ throw new CoolException("瀛愬垪琛ㄦ暟鎹负绌猴紝璇锋煡璇O鍗曟槸鍚︽纭綍鍏ワ紒锛�");
}
AsnOrder order = new AsnOrder();
+ //鏍规嵁缂栫爜瑙勫垯鐢熸垚ASN鍗曞彿
+ String code = SerialRuleUtils.generateRuleCode(SerialRuleCode.SYS_ASN_ORDER, purchase);
order.setAnfme(purchase.getAnfme())
+ .setCode(code)
.setArrTime(purchase.getPreArr())
.setQty(purchase.getQty())
.setPoId(purchase.getId())
@@ -74,8 +87,8 @@
orderItem.setAnfme(item.getAnfme())
.setAsnId(purchase.getId())
.setQty(item.getQty())
- .setSplrName(item.getPulrName())
- .setSplrCode(item.getPulrCode())
+ .setSplrName(item.getSplrName())
+ .setSplrCode(item.getSplrCode())
.setMatnk(item.getMatnrName())
.setPoDetlId(item.getId() + "")
.setPurQty(item.getAnfme())
@@ -88,6 +101,13 @@
throw new CoolException(("Asn鍗曟嵁鏄庣粏淇濆瓨澶辫触锛侊紒"));
}
+ //浠诲姟鎵ц瀹屾垚锛屼慨鏀瑰凡瀹屾垚鏁伴噺鍜孭O鍗曟墽琛岀姸鎬�
+ purchase.setQty(purchase.getAnfme()).setStatus(1);
+
+ if (!purchaseService.save(purchase)) {
+ throw new CoolException("PO鍗曟墽琛屽畬鎴愬悗锛屼繚瀛樺け璐ワ紒锛�");
+ }
+
});
}
--
Gitblit v1.9.1