From 44ceeeee9cd3f76b0f3a2135421407b73dea9bb0 Mon Sep 17 00:00:00 2001
From: 云 <2163098428@qq.com>
Date: 星期五, 28 八月 2026 11:41:58 +0800
Subject: [PATCH] fix(sales): 修复销售台账发货状态查询逻辑
---
src/main/java/com/ruoyi/procurementrecord/utils/StockUtils.java | 34 +++++++++++++++++++++++-----------
1 files changed, 23 insertions(+), 11 deletions(-)
diff --git a/src/main/java/com/ruoyi/procurementrecord/utils/StockUtils.java b/src/main/java/com/ruoyi/procurementrecord/utils/StockUtils.java
index 9b8735f..27a53e2 100644
--- a/src/main/java/com/ruoyi/procurementrecord/utils/StockUtils.java
+++ b/src/main/java/com/ruoyi/procurementrecord/utils/StockUtils.java
@@ -20,6 +20,7 @@
import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.util.Collections;
+import java.util.List;
@Component
@RequiredArgsConstructor
@@ -159,9 +160,10 @@
*/
public void shipmentStatus(String recordType, Long recordId) {
LambdaQueryWrapper<StockOutRecord> queryWrapper = new LambdaQueryWrapper<StockOutRecord>().eq(StockOutRecord::getRecordType, recordType)
- .eq(StockOutRecord::getRecordId, recordId);
- stockOutRecordService.list(queryWrapper).stream().forEach(stockOutRecord -> {
- stockOutRecord.setApprovalStatus(0);
+ .eq(StockOutRecord::getRecordId, recordId)
+ .eq(StockOutRecord::getApprovalStatus, 3);
+ stockOutRecordService.list(queryWrapper).forEach(stockOutRecord -> {
+ stockOutRecord.setApprovalStatus(ReviewStatusEnum.PENDING_REVIEW.getCode());
stockOutRecordService.updateById(stockOutRecord);
});
}
@@ -183,15 +185,25 @@
//鍒犻櫎鍑哄簱璁板綍
public void deleteStockOutRecord(Long recordId, String recordType) {
- StockOutRecord one = stockOutRecordService.getOne(new QueryWrapper<StockOutRecord>()
+ List<StockOutRecord> records = stockOutRecordService.list(new QueryWrapper<StockOutRecord>()
.lambda().eq(StockOutRecord::getRecordId, recordId)
- .eq(StockOutRecord::getRecordType, recordType), false);
- if (ObjectUtils.isNotEmpty(one)) {
- if (ReviewStatusEnum.APPROVED.getCode().equals(one.getApprovalStatus())) {
- stockOutRecordService.batchDelete(Collections.singletonList(one.getId()));
- } else {
- stockOutRecordService.removeById(one.getId());
- }
+ .eq(StockOutRecord::getRecordType, recordType));
+ if (ObjectUtils.isEmpty(records)) {
+ return;
+ }
+ List<Long> approvedIds = records.stream()
+ .filter(one -> ReviewStatusEnum.APPROVED.getCode().equals(one.getApprovalStatus()))
+ .map(StockOutRecord::getId)
+ .toList();
+ List<Long> pendingIds = records.stream()
+ .filter(one -> !ReviewStatusEnum.APPROVED.getCode().equals(one.getApprovalStatus()))
+ .map(StockOutRecord::getId)
+ .toList();
+ if (!approvedIds.isEmpty()) {
+ stockOutRecordService.batchDelete(approvedIds);
+ }
+ if (!pendingIds.isEmpty()) {
+ stockOutRecordService.removeByIds(pendingIds);
}
}
--
Gitblit v1.9.3