From 6690f4754d433b9cde475868034b6d1a3c11d396 Mon Sep 17 00:00:00 2001
From: buhuazhen <hua100783@gmail.com>
Date: 星期三, 27 五月 2026 14:12:44 +0800
Subject: [PATCH] feat(ProductionPrintOrder) 工序添加是否质检

---
 src/main/java/com/ruoyi/production/service/impl/ProcessRouteServiceImpl.java |   19 ++++++++++++-------
 1 files changed, 12 insertions(+), 7 deletions(-)

diff --git a/src/main/java/com/ruoyi/production/service/impl/ProcessRouteServiceImpl.java b/src/main/java/com/ruoyi/production/service/impl/ProcessRouteServiceImpl.java
index 3df9df2..4f54bdf 100644
--- a/src/main/java/com/ruoyi/production/service/impl/ProcessRouteServiceImpl.java
+++ b/src/main/java/com/ruoyi/production/service/impl/ProcessRouteServiceImpl.java
@@ -113,7 +113,7 @@
         ProductProcessRoute productProcessRoute = createProductProcessRoute(productModelId, productOrderId, productBom.getId(), processRoute.getProcessRouteCode());
 
         // 6. 鏂板鐢熶骇宸ヨ壓璺嚎瀛愯〃
-        buildProductProcessRouteItems(processRouteAnticlockwiseDtos, productProcessRoute.getId(), productModelId,productOrderId);
+        buildProductProcessRouteItems(processRouteAnticlockwiseDtos, productProcessRoute.getId(), productModelId, productOrderId);
         return processRoute.getId();
     }
 
@@ -179,7 +179,7 @@
             ProcessRouteItem item = new ProcessRouteItem();
             item.setRouteId(routeId);
             item.setProcessId(dto.getProcessId());
-            item.setProductModelId(dto.getProductModelId());
+            item.setProductModelId(productModelId);
             item.setProcessRouteName(dto.getProcessRouteName());
             item.setProcessRouteOpenNum(dto.getProcessRouteOpenNum());
             item.setProcessRouteNum(dto.getProcessRouteNum());
@@ -208,20 +208,25 @@
     /**
      * 鏋勫缓鐢熶骇宸ヨ壓璺嚎瀛愰」鍒楄〃
      */
-    private void buildProductProcessRouteItems(List<ProcessRouteAnticlockwiseDto> dtos, Long productRouteId, Long productModelId,Long productOrderId) {
+    private void buildProductProcessRouteItems(List<ProcessRouteAnticlockwiseDto> dtos, Long productRouteId, Long productModelId, Long productOrderId) {
         ProductOrder byId = productOrderService.getById(productOrderId);
         Integer num = 0;
         for (ProcessRouteAnticlockwiseDto dto : dtos) {
             ProductProcessRouteItem item = new ProductProcessRouteItem();
             item.setProductRouteId(productRouteId);
             item.setProcessId(dto.getProcessId());
-            item.setProductModelId(dto.getProductModelId());
+            if (num >= dtos.size() - 1) {
+                item.setProductModelId(productModelId);
+            } else {
+                item.setProductModelId(dto.getProductModelId());
+            }
             item.setProcessRouteName(dto.getProcessRouteName());
             item.setProcessRouteOpenNum(dto.getProcessRouteOpenNum());
             item.setProcessRouteNum(dto.getProcessRouteNum());
             item.setProcessRouteAddNum(dto.getProcessRouteAddNum());
             item.setProcessRouteRequire(dto.getProcessRouteRequire());
             item.setDragSort(num++);
+            item.setIsQuality(dto.getProductProcess().getIsQuality() != null && dto.getProductProcess().getIsQuality());
             item.setUuid(dto.getUuid());
             productProcessRouteItemService.save(item);
             ProductProcess productProcess = productProcessService.getById(item.getProcessId());
@@ -229,11 +234,11 @@
             ProductWorkOrder productWorkOrder = new ProductWorkOrder();
             productWorkOrder.setProductProcessRouteItemId(item.getId());
             productWorkOrder.setProductOrderId(productOrderId);
-            ProductOrder order = productOrderMapper.selectById(productOrderId);
-            productWorkOrder.setPlanQuantity(order.getQuantity());
+            productWorkOrder.setPlanQuantity(new BigDecimal(dto.getProcessRouteNum()));
             productWorkOrder.setDeviceId(dto.getDeviceId());
             productWorkOrder.setUserIds(dto.getUserIds());
-            productWorkOrder.setWorkOrderNo(productWorkOrderService.generateProductWorkOrder(null, productProcess.getName(), byId.getNpsNo()));
+            productWorkOrder.setUserNames(dto.getUserNames());
+            productWorkOrder.setWorkOrderNo(productWorkOrderService.generateProductWorkOrder(productProcess.getName(), byId.getNpsNo()));
             productWorkOrder.setStatus(1);
             productWorkOrderService.save(productWorkOrder);
         }

--
Gitblit v1.9.3