From 29ccd9919082e0157f57989ae83b303f314bad6b Mon Sep 17 00:00:00 2001
From: 云 <2163098428@qq.com>
Date: 星期一, 08 六月 2026 16:01:55 +0800
Subject: [PATCH] feat(financial): 新增凭证分录科目明细字段
---
src/main/java/com/ruoyi/quality/service/impl/QualityInspectServiceImpl.java | 20 ++++++++++++++++++--
1 files changed, 18 insertions(+), 2 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 2842878..7e9ad95 100644
--- a/src/main/java/com/ruoyi/quality/service/impl/QualityInspectServiceImpl.java
+++ b/src/main/java/com/ruoyi/quality/service/impl/QualityInspectServiceImpl.java
@@ -137,7 +137,15 @@
}
stockInventoryDto.setRecordId(qualityInspect.getId());
stockInventoryDto.setProductModelId(qualityInspect.getProductModelId());
- stockInventoryDto.setQualitity(qualityInspect.getQualifiedQuantity());
+ // 鍏ュ簱鏁伴噺 = 鍚堟牸鏁伴噺 * 鍏ュ簱姣斾緥 / 100锛屽叆搴撴瘮渚嬮粯璁�100%
+ BigDecimal stockInRatio = qualityInspect.getStockInRatio();
+ if (stockInRatio == null || stockInRatio.compareTo(BigDecimal.ZERO) <= 0) {
+ stockInRatio = new BigDecimal("100.00");
+ }
+ BigDecimal actualStockInQuantity = qualityInspect.getQualifiedQuantity()
+ .multiply(stockInRatio)
+ .divide(new BigDecimal("100"), 2, BigDecimal.ROUND_HALF_UP);
+ stockInventoryDto.setQualitity(actualStockInQuantity);
if (qualityInspect.getCheckTime() != null) {
LocalDate stockCreateDate = DateUtils.toLocalDate(qualityInspect.getCheckTime()).plusDays(1);
stockInventoryDto.setCreateTime(LocalDateTime.of(stockCreateDate, java.time.LocalTime.MIDNIGHT));
@@ -294,7 +302,15 @@
}
stockInventoryDto.setRecordId(qualityInspect.getId());
stockInventoryDto.setProductModelId(qualityInspect.getProductModelId());
- stockInventoryDto.setQualitity(qualified);
+ // 鍏ュ簱鏁伴噺 = 鍚堟牸鏁伴噺 * 鍏ュ簱姣斾緥 / 100锛屽叆搴撴瘮渚嬮粯璁�100%
+ BigDecimal stockInRatio = qualityInspect.getStockInRatio();
+ if (stockInRatio == null || stockInRatio.compareTo(BigDecimal.ZERO) <= 0) {
+ stockInRatio = new BigDecimal("100.00");
+ }
+ BigDecimal actualStockInQuantity = qualified
+ .multiply(stockInRatio)
+ .divide(new BigDecimal("100"), 2, BigDecimal.ROUND_HALF_UP);
+ stockInventoryDto.setQualitity(actualStockInQuantity);
if (qualityInspect.getCheckTime() != null) {
LocalDate stockCreateDate = DateUtils.toLocalDate(qualityInspect.getCheckTime()).plusDays(1);
stockInventoryDto.setCreateTime(LocalDateTime.of(stockCreateDate, java.time.LocalTime.MIDNIGHT));
--
Gitblit v1.9.3