From 472d3a889984e88e17524431b48d17f19da57ad6 Mon Sep 17 00:00:00 2001
From: yuan <123@>
Date: 星期二, 24 三月 2026 17:52:55 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/dev_长治_健齿齿科器材' into dev_长治_健齿齿科器材
---
src/main/java/com/ruoyi/production/service/impl/ProductionProductMainServiceImpl.java | 19 ++++++++++++++-----
1 files changed, 14 insertions(+), 5 deletions(-)
diff --git a/src/main/java/com/ruoyi/production/service/impl/ProductionProductMainServiceImpl.java b/src/main/java/com/ruoyi/production/service/impl/ProductionProductMainServiceImpl.java
index fa34114..c7fa600 100644
--- a/src/main/java/com/ruoyi/production/service/impl/ProductionProductMainServiceImpl.java
+++ b/src/main/java/com/ruoyi/production/service/impl/ProductionProductMainServiceImpl.java
@@ -141,7 +141,7 @@
productionProductMainMapper.insert(productionProductMain);
/*鏂板鎶ュ伐鎶曞叆琛�*/
List<ProductStructureDto> productStructureDtos = productStructureMapper.listBybomAndProcess(productProcessRoute.getBomId(), productProcess.getId());
- if (productStructureDtos.size() == 0) {
+ if (productStructureDtos.isEmpty()) {
//濡傛灉璇ュ伐搴忔病鏈変骇鍝佺粨鏋勭殑鎶曞叆鍝�,閭h繖涓姇鍏ュ搧鍜屼骇鍑哄搧鏄悓涓�涓�
ProductStructureDto productStructureDto = new ProductStructureDto();
productStructureDto.setProductModelId(productProcessRouteItem.getProductModelId());
@@ -155,8 +155,6 @@
productionProductInput.setQuantity(productStructureDto.getUnitQuantity().multiply(dto.getQuantity()));
productionProductInput.setProductMainId(productionProductMain.getId());
productionProductInputMapper.insert(productionProductInput);
- stockUtils.substractStock(productStructureDto.getProductModelId(), productionProductInput.getQuantity(), StockOutQualifiedRecordTypeEnum.PRODUCTION_REPORT_STOCK_OUT.getCode(), productionProductMain.getId());
-
}
/*鏂板鎶ュ伐浜у嚭琛�*/
ProductionProductOutput productionProductOutput = new ProductionProductOutput();
@@ -165,8 +163,8 @@
productionProductOutput.setQuantity(dto.getQuantity() != null ? dto.getQuantity() : BigDecimal.ZERO);
productionProductOutput.setScrapQty(dto.getScrapQty() != null ? dto.getScrapQty() : BigDecimal.ZERO);
productionProductOutputMapper.insert(productionProductOutput);
- //鍚堟牸鏁伴噺=鎶ュ伐鏁伴噺-鎶ュ簾鏁伴噺
- BigDecimal productQty = productionProductOutput.getQuantity().subtract(productionProductOutput.getScrapQty());
+ //鍚堟牸鏁伴噺=鎶ュ伐鏁伴噺
+ BigDecimal productQty = productionProductOutput.getQuantity();
//鍙湁鍚堟牸鏁伴噺>0鎵嶈兘澧炲姞鐩稿簲鏁版嵁
if (productQty.compareTo(BigDecimal.ZERO) > 0) {
/*鏂板璐ㄦ*/
@@ -180,6 +178,13 @@
inspectType = 2;
process = null;
}
+ ProductWorkOrder productWorkOrder = productWorkOrderMapper.selectById(productionProductMain.getWorkOrderId());
+ ProductOrder productOrder = productOrderMapper.selectById(productWorkOrder.getProductOrderId());
+ if (productOrder == null) {
+ throw new RuntimeException("鐢熶骇璁㈠崟涓嶅瓨鍦�");
+ }
+
+
Product product = productMapper.selectById(productModel.getProductId());
QualityInspect qualityInspect = new QualityInspect();
qualityInspect.setProductId(product.getId());
@@ -192,6 +197,9 @@
qualityInspect.setInspectType(inspectType);
qualityInspect.setProductMainId(productionProductMain.getId());
qualityInspect.setProductModelId(productModel.getId());
+ qualityInspect.setBatchNo(productOrder.getBatchNo());
+ qualityInspect.setInspectedQuantity(dto.getInspectedQuantity());
+ qualityInspect.setManufacturingTeam(productOrder.getManufacturingTeam());
qualityInspectMapper.insert(qualityInspect);
List<QualityTestStandard> qualityTestStandard = qualityTestStandardMapper.getQualityTestStandardByProductId(product.getId(), inspectType, process);
if (qualityTestStandard.size() > 0) {
@@ -220,6 +228,7 @@
if (productWorkOrder.getCompleteQuantity().compareTo(productWorkOrder.getPlanQuantity()) == 0) {
productWorkOrder.setActualEndTime(LocalDate.now());//瀹為檯缁撴潫鏃堕棿
}
+ productWorkOrder.setTotalInvestment(dto.getTotalInvestment());
productWorkOrderMapper.updateById(productWorkOrder);
//鐢熶骇璁㈠崟
ProductOrder productOrder = productOrderMapper.selectById(productWorkOrder.getProductOrderId());
--
Gitblit v1.9.3