From 141af43b696975d22a3abacd5d2017fb0fbfbb97 Mon Sep 17 00:00:00 2001
From: liyong <18434998025@163.com>
Date: 星期五, 30 一月 2026 09:44:07 +0800
Subject: [PATCH] feat(production): 添加生产核算功能和相关接口

---
 src/main/java/com/ruoyi/sales/service/impl/SalesLedgerProductServiceImpl.java         |    7 ++++---
 src/main/resources/mapper/production/ProductOrderMapper.xml                           |    2 +-
 src/main/resources/mapper/sales/SalesLedgerProductMapper.xml                          |    2 +-
 src/main/java/com/ruoyi/production/pojo/SalesLedgerProductionAccounting.java          |    2 ++
 src/main/java/com/ruoyi/production/service/impl/ProductionProductMainServiceImpl.java |    2 +-
 src/main/java/com/ruoyi/production/pojo/ProductOrder.java                             |    5 +++++
 6 files changed, 14 insertions(+), 6 deletions(-)

diff --git a/src/main/java/com/ruoyi/production/pojo/ProductOrder.java b/src/main/java/com/ruoyi/production/pojo/ProductOrder.java
index dae49a7..70c82d8 100644
--- a/src/main/java/com/ruoyi/production/pojo/ProductOrder.java
+++ b/src/main/java/com/ruoyi/production/pojo/ProductOrder.java
@@ -30,6 +30,11 @@
     /**
      * 閿�鍞彴璐︿骇鍝乮d(sales_ledger_product)
      */
+    private Long saleLedgerProductId;
+
+    /**
+     * 閿�鍞彴璐︿骇鍝乮d(sales_ledger_product)
+     */
     @ApiModelProperty(value = "閿�鍞彴璐︿骇鍝乮d")
     private Long productModelId;
 
diff --git a/src/main/java/com/ruoyi/production/pojo/SalesLedgerProductionAccounting.java b/src/main/java/com/ruoyi/production/pojo/SalesLedgerProductionAccounting.java
index 38a2469..b410df7 100644
--- a/src/main/java/com/ruoyi/production/pojo/SalesLedgerProductionAccounting.java
+++ b/src/main/java/com/ruoyi/production/pojo/SalesLedgerProductionAccounting.java
@@ -101,4 +101,6 @@
     @TableField(fill = FieldFill.INSERT)
     private Long tenantId;
 
+    private Long ProductMainId;
+
 }
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 553e0d0..6f71f6b 100644
--- a/src/main/java/com/ruoyi/production/service/impl/ProductionProductMainServiceImpl.java
+++ b/src/main/java/com/ruoyi/production/service/impl/ProductionProductMainServiceImpl.java
@@ -227,7 +227,7 @@
                     .salesLedgerWorkId(productionProductMain.getId())
                     .salesLedgerSchedulingId(0L)
                     .salesLedgerId(productOrder.getSalesLedgerId())
-                    .salesLedgerProductId(productOrder.getProductModelId())
+                    .salesLedgerProductId(productOrder.getSaleLedgerProductId())
                     .schedulingUserId(user.getUserId())
                     .schedulingUserName(user.getNickName())
                     .finishedNum(productQty)
diff --git a/src/main/java/com/ruoyi/sales/service/impl/SalesLedgerProductServiceImpl.java b/src/main/java/com/ruoyi/sales/service/impl/SalesLedgerProductServiceImpl.java
index d2118d1..a793a02 100644
--- a/src/main/java/com/ruoyi/sales/service/impl/SalesLedgerProductServiceImpl.java
+++ b/src/main/java/com/ruoyi/sales/service/impl/SalesLedgerProductServiceImpl.java
@@ -270,7 +270,8 @@
     public void addProductionData(SalesLedgerProduct salesLedgerProduct) {
         ProductOrder productOrder = new ProductOrder();
         productOrder.setSalesLedgerId(salesLedgerProduct.getSalesLedgerId());
-        productOrder.setProductModelId(salesLedgerProduct.getId());
+        productOrder.setProductModelId(salesLedgerProduct.getProductModelId());
+        productOrder.setSaleLedgerProductId(salesLedgerProduct.getId());
         productOrder.setNpsNo("SC" + String.format("%08d", salesLedgerProduct.getId()));
         productOrder.setQuantity(salesLedgerProduct.getQuantity());//闇�姹傛暟閲�
         productOrder.setCompleteQuantity(BigDecimal.ZERO);//瀹屾垚鏁伴噺
@@ -346,7 +347,7 @@
         //鎵归噺鏌ヨproductOrder
         List<ProductOrder> productOrders = productOrderMapper.selectList(
                 new LambdaQueryWrapper<ProductOrder>()
-                        .in(ProductOrder::getProductModelId, productIds)
+                        .in(ProductOrder::getSaleLedgerProductId, productIds)
         );
         if (!org.springframework.util.CollectionUtils.isEmpty(productOrders)) {
             List<Long> orderIds = productOrders.stream()
@@ -426,7 +427,7 @@
 
             // 鎵归噺鍒犻櫎productOrder
             productOrderMapper.delete(new LambdaQueryWrapper<ProductOrder>()
-                    .in(ProductOrder::getProductModelId, productIds));
+                    .in(ProductOrder::getSaleLedgerProductId, productIds));
         }
     }
 
diff --git a/src/main/resources/mapper/production/ProductOrderMapper.xml b/src/main/resources/mapper/production/ProductOrderMapper.xml
index 70ce815..5f526ea 100644
--- a/src/main/resources/mapper/production/ProductOrderMapper.xml
+++ b/src/main/resources/mapper/production/ProductOrderMapper.xml
@@ -25,7 +25,7 @@
         DATEDIFF(sl.delivery_date, CURDATE()) AS delivery_days_diff
         from product_order po
         left join sales_ledger sl on po.sales_ledger_id = sl.id
-        left join sales_ledger_product slp on po.product_model_id = slp.id
+        left join sales_ledger_product slp on po.sale_ledger_product_id = slp.id
         left join product_process_route ppr on po.id = ppr.product_order_id
         left join product_bom pb on pb.id = ppr.bom_id
         <where>
diff --git a/src/main/resources/mapper/sales/SalesLedgerProductMapper.xml b/src/main/resources/mapper/sales/SalesLedgerProductMapper.xml
index 01f0e89..2a1b94a 100644
--- a/src/main/resources/mapper/sales/SalesLedgerProductMapper.xml
+++ b/src/main/resources/mapper/sales/SalesLedgerProductMapper.xml
@@ -31,7 +31,7 @@
                  left join production_product_main ppm on qi.product_main_id = ppm.id
                  left join product_work_order pwo on ppm.work_order_id = pwo.id
                  left join product_order po on pwo.product_order_id = po.id
-                 left join sales_ledger_product slp on po.product_model_id = slp.id
+                 left join sales_ledger_product slp on po.sale_ledger_product_id = slp.id
         where qi.product_main_id = #{productMainId}
 
 

--
Gitblit v1.9.3