From f4d4d29368ccacb807f93e2033cd4a643a3ddade Mon Sep 17 00:00:00 2001
From: 云 <2163098428@qq.com>
Date: 星期一, 30 三月 2026 10:20:28 +0800
Subject: [PATCH] yys 1.修改bug

---
 src/main/java/com/ruoyi/production/service/impl/ProductOrderServiceImpl.java |   26 ++++++++++++++------------
 1 files changed, 14 insertions(+), 12 deletions(-)

diff --git a/src/main/java/com/ruoyi/production/service/impl/ProductOrderServiceImpl.java b/src/main/java/com/ruoyi/production/service/impl/ProductOrderServiceImpl.java
index fe78782..5cd4bbd 100644
--- a/src/main/java/com/ruoyi/production/service/impl/ProductOrderServiceImpl.java
+++ b/src/main/java/com/ruoyi/production/service/impl/ProductOrderServiceImpl.java
@@ -33,6 +33,7 @@
 import java.math.BigDecimal;
 import java.time.LocalDate;
 import java.time.format.DateTimeFormatter;
+import java.util.ArrayList;
 import java.util.Arrays;
 import java.util.List;
 import java.util.stream.Collectors;
@@ -116,11 +117,13 @@
         productProcessRoute.setBomId(processRoute.getBomId());
         productProcessRouteMapper.insert(productProcessRoute);
         // 缁戝畾鐢熶骇bom娓呭崟
-        List<ProductStructureRecord> productStructureDtos = productOrder.getProductStructureRecords();
-        productStructureDtos.forEach(item ->{
-            item.setProductOrderId(productOrder.getId());
-            productStructureRecordMapper.insert(item);
-        });
+        if(CollectionUtils.isNotEmpty(productOrder.getProductStructureRecords())){
+            List<ProductStructureRecord> productStructureDtos = productOrder.getProductStructureRecords();
+            productStructureDtos.forEach(item ->{
+                item.setProductOrderId(productOrder.getId());
+                productStructureRecordMapper.insert(item);
+            });
+        }
         //鏂板鐢熶骇璁㈠崟涓嬬殑宸ヨ壓璺嚎瀛愯〃
         List<ProductProcessRouteItem> processRouteItems = productOrder.getProcessRouteItems();
         // 鐢熸垚褰撳墠鏃ユ湡鐨勫墠缂�锛氬勾鏈堟棩
@@ -137,8 +140,7 @@
                 ProductWorkOrder productWorkOrder = new ProductWorkOrder();
                 productWorkOrder.setProductProcessRouteItemId(productProcessRouteItem.getId());
                 productWorkOrder.setProductOrderId(productOrder.getId());
-                ProductOrder order = productOrderMapper.selectById(productOrder.getId());
-                productWorkOrder.setPlanQuantity(order.getQuantity());
+                productWorkOrder.setPlanQuantity(BigDecimal.valueOf(productProcessRouteItem.getPlanNum()));
                 productWorkOrder.setWorkOrderNo(workOrderNoStr);
                 productWorkOrder.setPlanStartTime(productProcessRouteItem.getPlanStartTime());
                 productWorkOrder.setPlanEndTime(productProcessRouteItem.getPlanEndTime());
@@ -197,14 +199,14 @@
 
     @Override
     @Transactional(rollbackFor = Exception.class)
-    public Boolean delete(Long[] ids) {
+    public Boolean delete(Long[] idList) {
         //鎵归噺鏌ヨproductOrder
         List<ProductOrder> productOrders = productOrderMapper.selectList(
                 new LambdaQueryWrapper<ProductOrder>()
-                        .in(ProductOrder::getId, ids)
+                        .in(ProductOrder::getId, Arrays.asList(idList))
         );
         if (!org.springframework.util.CollectionUtils.isEmpty(productOrders)) {
-
+            List<Long> ids = productOrders.stream().map(ProductOrder::getId).collect(Collectors.toList());
 
             // 鎵归噺鏌ヨprocessRouteItems
             List<ProductProcessRouteItem> allRouteItems = productProcessRouteItemMapper.selectList(
@@ -240,7 +242,7 @@
                     // 鍒犻櫎浜у嚭琛ㄣ�佹姇鍏ヨ〃鏁版嵁
                     if (!com.baomidou.mybatisplus.core.toolkit.CollectionUtils.isEmpty(productMainIds)) {
                         productionProductOutputMapper.deleteByProductMainIds(productMainIds);
-                        productionProductInputMapper.deleteByProductMainIds(productMainIds);
+                        productionProductInputMapper.deleteByProductMainIds(ids);
                         List<QualityInspect> qualityInspects = qualityInspectMapper.selectList(
                                 new LambdaQueryWrapper<QualityInspect>()
                                         .in(QualityInspect::getProductMainId, productMainIds)
@@ -283,7 +285,7 @@
             productOrderMapper.delete(new LambdaQueryWrapper<ProductOrder>()
                     .in(ProductOrder::getId, ids));
             // 鍒犻櫎闄勪欢
-            commonFileService.deleteByBusinessIds(Arrays.asList(ids), FileNameType.PRODUCT_ORDER.getValue());
+            commonFileService.deleteByBusinessIds(ids, FileNameType.PRODUCT_ORDER.getValue());
             // 鍒犻櫎鐢熶骇璁㈠崟-鐗╂枡娓呭崟
             productStructureRecordMapper.delete(new LambdaQueryWrapper<ProductStructureRecord>()
                     .in(ProductStructureRecord::getProductOrderId, ids));

--
Gitblit v1.9.3