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 | 42 ++++++++++++++++++++++++++++++++++++++++--
1 files changed, 40 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 effb6af..7e9ad95 100644
--- a/src/main/java/com/ruoyi/quality/service/impl/QualityInspectServiceImpl.java
+++ b/src/main/java/com/ruoyi/quality/service/impl/QualityInspectServiceImpl.java
@@ -25,6 +25,7 @@
import com.ruoyi.quality.pojo.QualityInspect;
import com.ruoyi.quality.pojo.QualityInspectParam;
import com.ruoyi.quality.pojo.QualityUnqualified;
+import com.ruoyi.quality.utils.QualityInspectTemplateExportHelper;
import com.ruoyi.stock.pojo.StockInRecord;
import com.ruoyi.stock.service.StockInRecordService;
import com.ruoyi.quality.service.IQualityInspectParamService;
@@ -71,6 +72,8 @@
private SalesLedgerProductMapper salesLedgerProductMapper;
private ProcurementRecordService procurementRecordService;
+
+ private final QualityInspectTemplateExportHelper qualityInspectTemplateExportHelper;
@Override
public int add(QualityInspectDto qualityInspectDto) {
@@ -134,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));
@@ -291,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));
@@ -444,5 +463,24 @@
}
+ @Override
+ public void exportWeiLong(HttpServletResponse response, Long id) {
+ qualityInspectTemplateExportHelper.exportWeiLong(response, id);
+ }
+
+ @Override
+ public void exportBaiShi(HttpServletResponse response, Long id) {
+ qualityInspectTemplateExportHelper.exportBaiShi(response, id);
+ }
+
+ @Override
+ public void exportDaLi(HttpServletResponse response, Long id) {
+ qualityInspectTemplateExportHelper.exportDaLi(response, id);
+ }
+
+ @Override
+ public String analyzeTemplate(String templatePath) {
+ return qualityInspectTemplateExportHelper.analyzeTemplate(templatePath);
+ }
}
--
Gitblit v1.9.3