From bb1befa2a8abae3f75cc71b524c46a6d206cb46b Mon Sep 17 00:00:00 2001
From: liyong <18434998025@163.com>
Date: 星期五, 30 一月 2026 10:47:01 +0800
Subject: [PATCH] feat(production): 添加生产核算功能和相关接口
---
src/main/java/com/ruoyi/sales/service/impl/SalesLedgerProductServiceImpl.java | 2 +-
src/main/java/com/ruoyi/quality/service/impl/QualityUnqualifiedServiceImpl.java | 2 +-
src/main/java/com/ruoyi/production/service/impl/ProductOrderServiceImpl.java | 2 +-
src/main/resources/mapper/production/ProductionProductMainMapper.xml | 45 +++++++++++++++++++++++++--------------------
src/main/java/com/ruoyi/production/mapper/ProductionProductMainMapper.java | 2 +-
src/main/java/com/ruoyi/production/service/impl/ProductProcessRouteItemServiceImpl.java | 2 +-
6 files changed, 30 insertions(+), 25 deletions(-)
diff --git a/src/main/java/com/ruoyi/production/mapper/ProductionProductMainMapper.java b/src/main/java/com/ruoyi/production/mapper/ProductionProductMainMapper.java
index 1958e05..818b6f1 100644
--- a/src/main/java/com/ruoyi/production/mapper/ProductionProductMainMapper.java
+++ b/src/main/java/com/ruoyi/production/mapper/ProductionProductMainMapper.java
@@ -29,5 +29,5 @@
*/
ProductOrder getOrderByMainId(@Param("productMainId") Long productMainId);
- IPage<ProductionProductMainDto> listProductionDetails(SalesLedgerProductionAccountingDto salesLedgerProductionAccountingDto, Page page);
+ IPage<ProductionProductMainDto> listProductionDetails(@Param("ew") SalesLedgerProductionAccountingDto salesLedgerProductionAccountingDto, Page page);
}
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 3dc98a1..a6fdd11 100644
--- a/src/main/java/com/ruoyi/production/service/impl/ProductOrderServiceImpl.java
+++ b/src/main/java/com/ruoyi/production/service/impl/ProductOrderServiceImpl.java
@@ -87,7 +87,7 @@
}
}
// 鐢熸垚瀹屾暣鐨勫伐鍗曞彿
- String workOrderNoStr = String.format("%s%03d", datePrefix, sequenceNumber);
+ String workOrderNoStr ="GD"+ String.format("%s%03d", datePrefix, sequenceNumber);
ProductWorkOrder productWorkOrder = new ProductWorkOrder();
productWorkOrder.setProductProcessRouteItemId(productProcessRouteItem.getId());
productWorkOrder.setProductOrderId(productOrder.getId());
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 6c87939..4db1c0c 100644
--- a/src/main/java/com/ruoyi/production/service/impl/ProductProcessRouteItemServiceImpl.java
+++ b/src/main/java/com/ruoyi/production/service/impl/ProductProcessRouteItemServiceImpl.java
@@ -157,7 +157,7 @@
}
}
// 鐢熸垚瀹屾暣鐨勫伐鍗曞彿
- String workOrderNoStr = String.format("%s%03d", datePrefix, sequenceNumber);
+ String workOrderNoStr = "GD" +String.format("%s%03d", datePrefix, sequenceNumber);
ProductWorkOrder productWorkOrder = new ProductWorkOrder();
productWorkOrder.setProductProcessRouteItemId(productProcessRouteItem.getId());
productWorkOrder.setProductOrderId(productProcessRouteItem.getProductOrderId());
diff --git a/src/main/java/com/ruoyi/quality/service/impl/QualityUnqualifiedServiceImpl.java b/src/main/java/com/ruoyi/quality/service/impl/QualityUnqualifiedServiceImpl.java
index 0e8497a..68c819c 100644
--- a/src/main/java/com/ruoyi/quality/service/impl/QualityUnqualifiedServiceImpl.java
+++ b/src/main/java/com/ruoyi/quality/service/impl/QualityUnqualifiedServiceImpl.java
@@ -116,7 +116,7 @@
}
}
// 鐢熸垚瀹屾暣鐨勫伐鍗曞彿
- String workOrderNoStr = String.format("%s%03d", datePrefix, sequenceNumber);
+ String workOrderNoStr ="FG" +String.format("%s%03d", datePrefix, sequenceNumber);
ProductWorkOrder productWorkOrder = new ProductWorkOrder();
productWorkOrder.setProductProcessRouteItemId(productProcessRouteItem.getId());
productWorkOrder.setProductOrderId(order.getId());
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 a793a02..f596e88 100644
--- a/src/main/java/com/ruoyi/sales/service/impl/SalesLedgerProductServiceImpl.java
+++ b/src/main/java/com/ruoyi/sales/service/impl/SalesLedgerProductServiceImpl.java
@@ -323,7 +323,7 @@
}
}
// 鐢熸垚瀹屾暣鐨勫伐鍗曞彿
- String workOrderNoStr = String.format("%s%03d", datePrefix, sequenceNumber);
+ String workOrderNoStr ="GD"+ String.format("%s%03d", datePrefix, sequenceNumber);
ProductWorkOrder productWorkOrder = new ProductWorkOrder();
productWorkOrder.setProductProcessRouteItemId(productProcessRouteItem.getId());
productWorkOrder.setProductOrderId(productOrder.getId());
diff --git a/src/main/resources/mapper/production/ProductionProductMainMapper.xml b/src/main/resources/mapper/production/ProductionProductMainMapper.xml
index ccc29e0..aeb4230 100644
--- a/src/main/resources/mapper/production/ProductionProductMainMapper.xml
+++ b/src/main/resources/mapper/production/ProductionProductMainMapper.xml
@@ -58,27 +58,32 @@
</select>
<select id="listProductionDetails" resultType="com.ruoyi.production.dto.ProductionProductMainDto">
SELECT
- slpa.scheduling_date,
- slpa.scheduling_user_name,
- sl.sales_contract_no,
- sl.customer_name,
- p.product_name,
- pm.model,
- pm.unit,
- slpa.process,
- ppo.quantity,
- slpa.work_hours,
- slpa.work_hours * slpa.finished_num AS wages
+ slpa.scheduling_date,
+ slpa.scheduling_user_name,
+ sl.sales_contract_no,
+ sl.customer_name,
+ p.product_name,
+ pm.model,
+ pm.unit,
+ slpa.process,
+ ppo.quantity,
+ slpa.work_hours,
+ slpa.work_hours * slpa.finished_num AS wages
FROM
- production_product_main ppm
- LEFT JOIN sales_ledger_production_accounting slpa ON slpa.sales_ledger_work_id = ppm.id
- LEFT JOIN production_product_output ppo ON ppm.id = ppo.product_main_id
- LEFT JOIN product_work_order pwo ON pwo.id = ppm.work_order_id
- LEFT JOIN product_order po ON po.id = pwo.product_order_id
- LEFT JOIN process_route pr ON pr.id = po.route_id
- LEFT JOIN product_model pm ON po.product_model_id = pm.id
- LEFT JOIN product p ON p.id = pm.product_id
- LEFT JOIN sales_ledger sl ON po.sales_ledger_id = sl.id
+ production_product_main ppm
+ LEFT JOIN sales_ledger_production_accounting slpa ON slpa.sales_ledger_work_id = ppm.id
+ LEFT JOIN production_product_output ppo ON ppm.id = ppo.product_main_id
+ LEFT JOIN product_work_order pwo ON pwo.id = ppm.work_order_id
+ LEFT JOIN product_order po ON po.id = pwo.product_order_id
+ LEFT JOIN process_route pr ON pr.id = po.route_id
+ LEFT JOIN product_model pm ON po.product_model_id = pm.id
+ LEFT JOIN product p ON p.id = pm.product_id
+ LEFT JOIN sales_ledger sl ON po.sales_ledger_id = sl.id
+ <where>
+ <if test="ew.schedulingUserName != null and ew.schedulingUserName !=''">
+ and slpa.scheduling_user_name = #{ew.schedulingUserName}
+ </if>
+ </where>
</select>
<delete id="deleteByWorkOrderIds" parameterType="java.util.List">
--
Gitblit v1.9.3