From b28173836631e9ecb1aafbaa5786c0383462208e Mon Sep 17 00:00:00 2001
From: liding <756868258@qq.com>
Date: 星期四, 12 三月 2026 15:09:57 +0800
Subject: [PATCH] 1.生产成品添加审核流程,半成品不审核
---
src/main/java/com/ruoyi/production/service/impl/ProductionProductMainServiceImpl.java | 28 ++++++++++++++++++++--------
1 files changed, 20 insertions(+), 8 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 8138ec2..b3f75b0 100644
--- a/src/main/java/com/ruoyi/production/service/impl/ProductionProductMainServiceImpl.java
+++ b/src/main/java/com/ruoyi/production/service/impl/ProductionProductMainServiceImpl.java
@@ -119,7 +119,6 @@
Object maxNoObj = result.get("maxNo");
if (maxNoObj != null) {
String lastNo = maxNoObj.toString();
- System.out.println("lastNo: " + lastNo);
if (lastNo.startsWith(datePrefix)) {
try {
String seqStr = lastNo.substring(datePrefix.length());
@@ -167,10 +166,10 @@
productionProductOutputMapper.insert(productionProductOutput);
//鍚堟牸鏁伴噺=鎶ュ伐鏁伴噺-鎶ュ簾鏁伴噺
BigDecimal productQty = productionProductOutput.getQuantity().subtract(productionProductOutput.getScrapQty());
+ List<ProductProcessRouteItem> productProcessRouteItems = productProcessRouteItemMapper.selectList(Wrappers.<ProductProcessRouteItem>lambdaQuery().eq(ProductProcessRouteItem::getProductRouteId, productProcessRouteItem.getProductRouteId()));
//鍙湁鍚堟牸鏁伴噺>0鎵嶈兘澧炲姞鐩稿簲鏁版嵁
if (productQty.compareTo(BigDecimal.ZERO) > 0) {
/*鏂板璐ㄦ*/
- List<ProductProcessRouteItem> productProcessRouteItems = productProcessRouteItemMapper.selectList(Wrappers.<ProductProcessRouteItem>lambdaQuery().eq(ProductProcessRouteItem::getProductRouteId, productProcessRouteItem.getProductRouteId()));
if (productProcessRouteItem.getIsQuality()) {
//瀵瑰簲鐨勮繃绋嬫鎴栬�呭嚭鍘傛
int inspectType = 1;
@@ -209,7 +208,14 @@
}
}else {
//鐩存帴鍏ュ簱
- stockUtils.addStock(productProcessRouteItem.getProductModelId(), productQty, StockInQualifiedRecordTypeEnum.PRODUCTION_REPORT_STOCK_IN.getCode(), productionProductMain.getId());
+ //鏈�鍚庝竴閬撳伐搴忎负鎴愬搧
+ if (productProcessRouteItem.getDragSort() == productProcessRouteItems.size()) {
+ //鎴愬搧瀹℃牳
+ stockUtils.addStock(productProcessRouteItem.getProductModelId(), productQty, StockInQualifiedRecordTypeEnum.PRODUCTION_REPORT_STOCK_IN.getCode(), productionProductMain.getId());
+ }else {
+ //鍗婃垚鍝佷笉瀹℃牳
+ stockUtils.addStockNoReview(productProcessRouteItem.getProductModelId(), productQty, StockInQualifiedRecordTypeEnum.PRODUCTION_REPORT_STOCK_IN.getCode(), productionProductMain.getId());
+ }
}
/*鏇存柊宸ュ崟鍜岀敓浜ц鍗�*/
ProductWorkOrder productWorkOrder = productWorkOrderMapper.selectById(dto.getWorkOrderId());
@@ -250,7 +256,11 @@
//濡傛灉鎶ュ簾鏁伴噺>0,闇�瑕佽繘鍏ユ姤搴熺殑搴撳瓨
if (ObjectUtils.isNotEmpty(dto.getScrapQty())) {
if (dto.getScrapQty().compareTo(BigDecimal.ZERO) > 0) {
- stockUtils.addUnStock(productModel.getId(), dto.getScrapQty(), StockInUnQualifiedRecordTypeEnum.PRODUCTION_SCRAP.getCode(), productionProductMain.getId());
+ if (productProcessRouteItem.getDragSort() == productProcessRouteItems.size()){
+ stockUtils.addUnStock(productModel.getId(), dto.getScrapQty(), StockInUnQualifiedRecordTypeEnum.PRODUCTION_SCRAP.getCode(), productionProductMain.getId());
+ }else {
+ stockUtils.addUnStockNoReview(productModel.getId(), dto.getScrapQty(), StockInUnQualifiedRecordTypeEnum.PRODUCTION_SCRAP.getCode(), productionProductMain.getId());
+ }
}
}
return true;
@@ -260,10 +270,12 @@
public Boolean removeProductMain(Long id) {
//鍒ゆ柇璇ユ潯鎶ュ伐鏄惁涓嶅悎鏍煎鐞�,濡傛灉涓嶅悎鏍煎鐞嗕簡锛屽垯涓嶅厑璁稿垹闄�
List<QualityInspect> qualityInspects = qualityInspectMapper.selectList(Wrappers.<QualityInspect>lambdaQuery().eq(QualityInspect::getProductMainId, id));
- List<QualityUnqualified> qualityUnqualifieds = qualityUnqualifiedMapper.selectList(Wrappers.<QualityUnqualified>lambdaQuery()
- .in(QualityUnqualified::getInspectId, qualityInspects.stream().map(QualityInspect::getId).collect(Collectors.toList())));
- if (qualityUnqualifieds.size() > 0 && qualityUnqualifieds.get(0).getInspectState()==1) {
- throw new ServiceException("璇ユ潯鎶ュ伐宸茬粡涓嶅悎鏍煎鐞嗕簡锛屼笉鍏佽鍒犻櫎");
+ if (qualityInspects.size() > 0){
+ List<QualityUnqualified> qualityUnqualifieds = qualityUnqualifiedMapper.selectList(Wrappers.<QualityUnqualified>lambdaQuery()
+ .in(QualityUnqualified::getInspectId, qualityInspects.stream().map(QualityInspect::getId).collect(Collectors.toList())));
+ if (qualityUnqualifieds.size() > 0 && qualityUnqualifieds.get(0).getInspectState()==1) {
+ throw new ServiceException("璇ユ潯鎶ュ伐宸茬粡涓嶅悎鏍煎鐞嗕簡锛屼笉鍏佽鍒犻櫎");
+ }
}
ProductionProductMain productionProductMain = productionProductMainMapper.selectById(id);
//璇ユ姤宸ュ搴旂殑宸ヨ壓璺嚎璇︽儏
--
Gitblit v1.9.3