From 45893b5be857c034467d7069cf41a9905b369691 Mon Sep 17 00:00:00 2001
From: gongchunyi <deslre0381@gmail.com>
Date: 星期五, 26 六月 2026 11:01:19 +0800
Subject: [PATCH] fix: 报价日期倒序,发货台账返回宽、高和数量
---
src/main/java/com/ruoyi/quality/service/impl/QualityInspectServiceImpl.java | 39 ++++++++++++++++++++++-----------------
1 files changed, 22 insertions(+), 17 deletions(-)
diff --git a/src/main/java/com/ruoyi/quality/service/impl/QualityInspectServiceImpl.java b/src/main/java/com/ruoyi/quality/service/impl/QualityInspectServiceImpl.java
index 04a921e..c6f5d45 100644
--- a/src/main/java/com/ruoyi/quality/service/impl/QualityInspectServiceImpl.java
+++ b/src/main/java/com/ruoyi/quality/service/impl/QualityInspectServiceImpl.java
@@ -139,22 +139,16 @@
if (qualifiedQty.compareTo(BigDecimal.ZERO) > 0) {
if (Objects.equals(qualityInspect.getInspectType(), 0)) {
- Long ledgerId = qualityInspect.getPurchaseLedgerId();
- PurchaseLedger purchaseLedger = ledgerId == null ? null : purchaseLedgerMapper.selectById(ledgerId);
- if (purchaseLedger != null) {
- submitQualifiedInboundApprove(qualityInspect);
- } else {
- // 鎵嬪姩鏂板鐨勫師鏉愭枡妫�楠岋細鏃犻噰璐彴璐︼紝涓嶈蛋閲囪喘鍏ュ簱瀹℃壒锛岀洿鎺ュ叆鍚堟牸搴撳瓨锛堜笌杩囩▼/鍑哄巶妫�楠屼竴鑷达級
- stockUtils.addStock(
- null,
- null,
- qualityInspect.getProductModelId(),
- qualifiedQty,
- StockInQualifiedRecordTypeEnum.QUALITYINSPECT_STOCK_IN.getCode(),
- qualityInspect.getId()
- );
- syncQualifiedInboundToPurchaseProducts(qualityInspect, qualifiedQty);
- }
+ stockUtils.addStock(
+ qualityInspect.getPurchaseLedgerId(),
+ null,
+ qualityInspect.getProductModelId(),
+ qualifiedQty,
+ StockInQualifiedRecordTypeEnum.QUALITYINSPECT_STOCK_IN.getCode(),
+ qualityInspect.getId()
+ );
+ syncQualifiedInboundToPurchaseProducts(qualityInspect, qualifiedQty);
+ qualityInspect.setApprovalStatus(3);
} else if (Objects.equals(qualityInspect.getInspectType(), 2) && qualityInspect.getSalesLedgerId() != null) {
// 閿�鍞鍗曠殑鎴愬搧鍑哄巶妫�楠岋紝鎻愪氦鍚庣洿鎺ュ叆搴�
StockInventoryDto stockInventoryDto = new StockInventoryDto();
@@ -631,10 +625,21 @@
allStocked = false;
}
}
+
+ long pendingInspectCount = qualityInspectMapper.selectCount(Wrappers.<QualityInspect>lambdaQuery()
+ .eq(QualityInspect::getSalesLedgerId, salesLedgerId)
+ .eq(QualityInspect::getInspectState, 0));
+ boolean allInspectFinished = pendingInspectCount == 0;
SalesLedger ledger = salesLedgerMapper.selectById(salesLedgerId);
if (ledger != null) {
- ledger.setStockStatus(allStocked ? 2 : (hasStocked ? 1 : 0));
+ int newStatus = ledger.getStockStatus() != null ? ledger.getStockStatus() : 0;
+ if (allInspectFinished) {
+ newStatus = allStocked ? 2 : 5; // 2: 宸插叆搴�(璐ㄦ瀹屾垚), 5: 閮ㄥ垎璐ㄦ瀹屾垚
+ } else {
+ newStatus = 4; // 4: 璐ㄦ涓�
+ }
+ ledger.setStockStatus(newStatus);
salesLedgerMapper.updateById(ledger);
}
}
--
Gitblit v1.9.3