From ee359b8abc3708e9ed4796cede561685a54aafba Mon Sep 17 00:00:00 2001
From: liyong <18434998025@163.com>
Date: 星期二, 27 一月 2026 15:50:56 +0800
Subject: [PATCH] refactor(stock): 库存代码迁移

---
 src/main/java/com/ruoyi/quality/service/impl/QualityInspectServiceImpl.java |   80 ++--------------------------------------
 1 files changed, 4 insertions(+), 76 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 5be05ad..76280a7 100644
--- a/src/main/java/com/ruoyi/quality/service/impl/QualityInspectServiceImpl.java
+++ b/src/main/java/com/ruoyi/quality/service/impl/QualityInspectServiceImpl.java
@@ -10,6 +10,7 @@
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.deepoove.poi.XWPFTemplate;
 import com.deepoove.poi.config.Configure;
+import com.ruoyi.common.enums.StockQualifiedRecordTypeEnum;
 import com.ruoyi.common.exception.base.BaseException;
 import com.ruoyi.common.utils.HackLoopTableRenderPolicy;
 import com.ruoyi.common.utils.SecurityUtils;
@@ -19,6 +20,7 @@
 import com.ruoyi.procurementrecord.dto.ProcurementAddDto;
 import com.ruoyi.procurementrecord.pojo.ProcurementRecordStorage;
 import com.ruoyi.procurementrecord.service.ProcurementRecordService;
+import com.ruoyi.procurementrecord.utils.StockUtils;
 import com.ruoyi.quality.dto.QualityInspectDto;
 import com.ruoyi.quality.mapper.QualityInspectMapper;
 import com.ruoyi.quality.mapper.QualityInspectParamMapper;
@@ -58,6 +60,7 @@
 @Transactional(rollbackFor = Exception.class)
 public class QualityInspectServiceImpl extends ServiceImpl<QualityInspectMapper, QualityInspect> implements IQualityInspectService {
 
+    private final StockUtils stockUtils;
     private QualityInspectMapper qualityInspectMapper;
 
     private IQualityInspectParamService qualityInspectParamService;
@@ -109,83 +112,8 @@
             qualityUnqualified.setDefectivePhenomena(text + "杩欎簺鎸囨爣涓瓨鍦ㄤ笉鍚堟牸");//涓嶅悎鏍肩幇璞�
             qualityUnqualifiedMapper.insert(qualityUnqualified);
         } else {
-
-            if (qualityInspect.getInspectType() == 0) {
-                if ("鍚堟牸".equals(qualityInspect.getCheckResult())) {
-                    ProcurementAddDto procurementRecordOutAdd = new ProcurementAddDto();
-                    procurementRecordOutAdd.setType(1);
-                    procurementRecordOutAdd.setTypeName("閲囪喘鍘熸潗鏂欐楠屽悎鏍煎叆搴�");
-                    procurementRecordOutAdd.setNickName(loginUser.getNickName());
-                    procurementRecordOutAdd.setPurchaseLedgerId(Math.toIntExact(qualityInspect.getPurchaseLedgerId()));
-                    if (qualityInspect.getPurchaseLedgerId() == null) {
-                        throw new BaseException("璇烽�夋嫨閲囪喘鍗�");
-                    }
-                    SalesLedgerProduct salesLedgerProduct = salesLedgerProductMapper.selectById(qualityInspect.getPurchaseLedgerId());
-
-                    ArrayList<Details> detailss = new ArrayList<>();
-                    Details details = new Details();
-                    details.setId(Math.toIntExact(salesLedgerProduct.getId()));
-                    details.setInboundQuantity(qualityInspect.getQuantity());
-                    details.setWarnNum(salesLedgerProduct.getWarnNum());
-                    details.setUnitPrice(salesLedgerProduct.getTaxInclusiveUnitPrice());
-                    details.setTotalPrice(salesLedgerProduct.getTaxInclusiveTotalPrice());
-                    details.setProductModelId(qualityInspect.getProductModelId());
-                    detailss.add(details);
-                    procurementRecordOutAdd.setDetails(detailss);
-                    procurementRecordOutAdd.setQualityInspectId(qualityInspect.getId());
-                    procurementRecordService.add(procurementRecordOutAdd);
-                }
-            } else if (qualityInspect.getInspectType() == 1) {
-                //鏌ヨUnitPrice/TotalPrice
-                ProcurementAddDto procurementRecordOutAdd = new ProcurementAddDto();
-                procurementRecordOutAdd.setType(2);
-                procurementRecordOutAdd.setTypeName("鐢熶骇杩囩▼妫�楠屽悎鏍煎叆搴�");
-                procurementRecordOutAdd.setNickName(loginUser.getNickName());
-                List<Details> details = new ArrayList<>();
-                Details details1 = new Details();
-                details1.setInboundQuantity(qualityInspect.getQuantity());
-                details1.setProductModelId(qualityInspect.getProductModelId());
-                procurementRecordOutAdd.setDetails(details);
-
-                ProcurementRecordStorage.ProcurementRecordStorageBuilder procurementRecordBuilder = ProcurementRecordStorage.builder()
-                        .salesLedgerProductId(0)
-                        .inboundBatches("鐢熶骇鍗婃垚鍝佸叆搴�")
-                        .inboundNum(details1.getInboundQuantity())
-                        .type(2)
-                        .warnNum(new BigDecimal(0))
-                        .unitPrice(new BigDecimal(0))
-                        .totalPrice(new BigDecimal(0))
-                        .createTime(LocalDateTime.now())
-                        .createUser(loginUser.getUserId())
-                        .updateTime(LocalDateTime.now())
-                        .updateUser(loginUser.getUserId())
-                        .createBy(procurementRecordOutAdd.getNickName())
-                        .productModelId(details1.getProductModelId())
-                        .qualityInspectId(qualityInspect.getId());
-                procurementRecordService.save(procurementRecordBuilder.build());
-
-
-            } else if (qualityInspect.getInspectType() == 2) {
-                //鏌ヨUnitPrice/TotalPrice
-                SalesLedgerProduct salesLedgerProduct = salesLedgerProductMapper.selectSalesLedgerProductByMainId(qualityInspect.getProductMainId());
-                ProcurementAddDto procurementRecordOutAdd = new ProcurementAddDto();
-                procurementRecordOutAdd.setType(2);
-                procurementRecordOutAdd.setTypeName("鐢熶骇鍑哄巶妫�楠屽悎鏍煎叆搴�");
-                procurementRecordOutAdd.setNickName(loginUser.getNickName());
-                List<Details> details = new ArrayList<>();
-                Details details1 = new Details();
-                details1.setInboundQuantity(qualityInspect.getQuantity());
-                details1.setId(Math.toIntExact(salesLedgerProduct.getId()));
-                details1.setUnitPrice(salesLedgerProduct.getTaxInclusiveUnitPrice());
-                details1.setTotalPrice(salesLedgerProduct.getTaxInclusiveTotalPrice());
-                details1.setProductModelId(salesLedgerProduct.getProductModelId());
-                details.add(details1);
-                procurementRecordOutAdd.setDetails(details);
-                procurementRecordOutAdd.setQualityInspectId(qualityInspect.getId());
-                procurementRecordService.add(procurementRecordOutAdd);
-            }
+           stockUtils.addStock(inspect.getProductModelId(), inspect.getQuantity(), StockQualifiedRecordTypeEnum.QUALITYINSPECT_STOCK_IN.getCode(), inspect.getId());
         }
-
         qualityInspect.setInspectState(1);//宸叉彁浜�
         return qualityInspectMapper.updateById(qualityInspect);
     }

--
Gitblit v1.9.3