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/resources/mapper/production/ProductionProductMainMapper.xml | 62 +++++++++++++++++++++++++++----
1 files changed, 54 insertions(+), 8 deletions(-)
diff --git a/src/main/resources/mapper/production/ProductionProductMainMapper.xml b/src/main/resources/mapper/production/ProductionProductMainMapper.xml
index d9e4ff4..aeb4230 100644
--- a/src/main/resources/mapper/production/ProductionProductMainMapper.xml
+++ b/src/main/resources/mapper/production/ProductionProductMainMapper.xml
@@ -14,15 +14,24 @@
<select id="listPageProductionProductMainDto" resultType="com.ruoyi.production.dto.ProductionProductMainDto">
select ppm.*,
- pwo.work_order_no as workOrderNo,
- pwo.status as workOrderStatus,
- pwo.actual_start_time as actualStartTime,
- pwo.actual_end_time as actualEndTime,
- u.nick_name as nickName
+ pwo.work_order_no as workOrderNo,
+ pwo.status as workOrderStatus,
+ u.nick_name as nickName,
+ p.product_name as productName,
+ pm.model as productModelName,
+ ppo.quantity,
+ ppo.scrap_qty,
+ pm.unit,
+ sl.sales_contract_no salesContractNo
from
- production_product_main ppm
- left join product_work_order pwo on pwo.id = ppm.work_order_id
- left join sys_user u on u.user_id = ppm.user_id
+ production_product_main ppm
+ 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 production_product_output ppo on ppm.id = ppo.product_main_id
+ left join product_model pm on pm.id = ppo.product_model_id
+ left join product p on p.id = pm.product_id
+ left join sales_ledger sl on sl.id = po.sales_ledger_id
+ left join sys_user u on u.user_id = ppm.user_id
<where>
<if test="c.nickName != null and c.nickName != ''">
and u.nick_name like concat('%',#{c.nickName},'%')
@@ -38,6 +47,43 @@
</if>
</where>
order by ppm.id
+
+ </select>
+ <select id="getOrderByMainId" resultType="com.ruoyi.production.pojo.ProductOrder">
+ select po.*
+ from product_order po
+ left join product_work_order pwo on po.id = pwo.product_order_id
+ left join production_product_main pm on work_order_id = pwo.id
+ where pm.id = #{productMainId}
+ </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
+ 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
+ <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