From 06df28e9434e6b6287aa7aacf42a8a2e00f31454 Mon Sep 17 00:00:00 2001
From: buhuazhen <hua100783@gmail.com>
Date: 星期四, 21 五月 2026 09:28:20 +0800
Subject: [PATCH] null 调整

---
 src/main/java/com/ruoyi/production/service/impl/ProductProcessRouteItemServiceImpl.java |   44 ++++++++++++--------------------------------
 1 files changed, 12 insertions(+), 32 deletions(-)

diff --git a/src/main/java/com/ruoyi/production/service/impl/ProductProcessRouteItemServiceImpl.java b/src/main/java/com/ruoyi/production/service/impl/ProductProcessRouteItemServiceImpl.java
index bbc4b79..2e97872 100644
--- a/src/main/java/com/ruoyi/production/service/impl/ProductProcessRouteItemServiceImpl.java
+++ b/src/main/java/com/ruoyi/production/service/impl/ProductProcessRouteItemServiceImpl.java
@@ -10,6 +10,8 @@
 import com.ruoyi.production.mapper.*;
 import com.ruoyi.production.pojo.*;
 import com.ruoyi.production.service.ProductProcessRouteItemService;
+import com.ruoyi.production.service.ProductProcessService;
+import com.ruoyi.production.service.ProductWorkOrderService;
 import com.ruoyi.production.service.ProductionProductMainService;
 import com.ruoyi.quality.mapper.QualityInspectMapper;
 import com.ruoyi.quality.pojo.QualityInspect;
@@ -18,6 +20,7 @@
 import lombok.AllArgsConstructor;
 import org.apache.poi.ss.formula.functions.T;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.context.annotation.Lazy;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.util.CollectionUtils;
@@ -36,17 +39,13 @@
 @AllArgsConstructor
 public class ProductProcessRouteItemServiceImpl extends ServiceImpl<ProductProcessRouteItemMapper, ProductProcessRouteItem> implements ProductProcessRouteItemService {
 
-
+    @Autowired
+    @Lazy
     private ProductionProductMainService productionProductMainService;
+
     private ProductProcessRouteItemMapper productProcessRouteItemMapper;
 
     private ProductionProductMainMapper productionProductMainMapper;
-
-    private ProductionProductInputMapper productionProductInputMapper;
-
-    private ProductionProductOutputMapper productionProductOutputMapper;
-
-    private QualityInspectMapper qualityInspectMapper;
 
     private SalesLedgerProductionAccountingMapper salesLedgerProductionAccountingMapper;
 
@@ -54,9 +53,9 @@
 
     private ProductOrderMapper productOrderMapper;
 
-    private ProductProcessRouteMapper productProcessRouteMapper;
+    private final ProductWorkOrderService productWorkOrderService;
 
-    private SalesLedgerProductMapper salesLedgerProductMapper;
+    private final ProductProcessService productProcessService;
 
 
     @Override
@@ -137,35 +136,16 @@
     @Override
     public R addRouteItem(ProductProcessRouteItem productProcessRouteItem) {
         ProductOrder productOrder = productOrderMapper.selectById(productProcessRouteItem.getProductOrderId());
+        ProductProcess productProcess = productProcessService.getById(productProcessRouteItem.getProcessId());
         int insert = productProcessRouteItemMapper.insert(productProcessRouteItem);
-        // 鐢熸垚褰撳墠鏃ユ湡鐨勫墠缂�锛氬勾鏈堟棩
-        String datePrefix = LocalDate.now().format(DateTimeFormatter.ofPattern("yyyyMMdd"));
+
         if (insert > 0) {
-            // 鏌ヨ浠婃棩宸插瓨鍦ㄧ殑鏈�澶у伐鍗曞彿
-            QueryWrapper<ProductWorkOrder> queryWrapper = new QueryWrapper<>();
-            queryWrapper.likeRight("work_order_no", datePrefix)
-                    .orderByDesc("work_order_no")
-                    .last("LIMIT 1");
-            ProductWorkOrder lastWorkOrder = productWorkOrderMapper.selectOne(queryWrapper);
-            int sequenceNumber = 1; // 榛樿搴忓彿
-            if (lastWorkOrder != null && lastWorkOrder.getWorkOrderNo() != null) {
-                String lastNo = lastWorkOrder.getWorkOrderNo().toString();
-                if (lastNo.startsWith(datePrefix)) {
-                    String seqStr = lastNo.substring(datePrefix.length());
-                    try {
-                        sequenceNumber = Integer.parseInt(seqStr) + 1;
-                    } catch (NumberFormatException e) {
-                        sequenceNumber = 1;
-                    }
-                }
-            }
-            // 鐢熸垚瀹屾暣鐨勫伐鍗曞彿
-            String workOrderNoStr = "GD" +String.format("%s%03d", datePrefix, sequenceNumber);
+
             ProductWorkOrder productWorkOrder = new ProductWorkOrder();
             productWorkOrder.setProductProcessRouteItemId(productProcessRouteItem.getId());
             productWorkOrder.setProductOrderId(productProcessRouteItem.getProductOrderId());
             productWorkOrder.setPlanQuantity(productOrder.getQuantity());
-            productWorkOrder.setWorkOrderNo(workOrderNoStr);
+            productWorkOrder.setWorkOrderNo(productWorkOrderService.generateProductWorkOrder(productProcess.getName(),productOrder.getNpsNo()));
             productWorkOrder.setStatus(1);
             productWorkOrderMapper.insert(productWorkOrder);
         }

--
Gitblit v1.9.3