From 2f80b7085c4eabce06d3491306b75eecc275275f Mon Sep 17 00:00:00 2001
From: 云 <2163098428@qq.com>
Date: 星期四, 30 四月 2026 17:31:57 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/dev_New_pro' into dev_New_pro

---
 src/main/resources/mapper/production/ProductionOperationTaskMapper.xml |   25 +++++++++++++++++++++++++
 1 files changed, 25 insertions(+), 0 deletions(-)

diff --git a/src/main/resources/mapper/production/ProductionOperationTaskMapper.xml b/src/main/resources/mapper/production/ProductionOperationTaskMapper.xml
index ebafa7a..0ccb06f 100644
--- a/src/main/resources/mapper/production/ProductionOperationTaskMapper.xml
+++ b/src/main/resources/mapper/production/ProductionOperationTaskMapper.xml
@@ -24,6 +24,7 @@
     <select id="pageProductionOperationTask" resultType="com.ruoyi.production.bean.vo.ProductionOperationTaskVo">
         select pot.*,
                po.nps_no as npsNo,
+               po.is_end_order as endOrder,
                p.product_name as productName,
                pm.model as model,
                pm.unit as unit,
@@ -120,4 +121,28 @@
         group by poro.technology_operation_id, poro.operation_name
     </select>
 
+    <select id="getProductWorkOrderFlowCard" resultType="com.ruoyi.production.bean.dto.ProductionOperationTaskDto">
+        SELECT pot.*,
+               poro.operation_name AS processName,
+               pm.model AS model,
+               pm.unit AS unit,
+               p.product_name AS productName,
+               po.nps_no AS productOrderNpsNo,
+               ROUND(IFNULL(pot.complete_quantity, 0) / NULLIF(pot.plan_quantity, 0) * 100, 2) AS completionStatus,
+               IFNULL(scrapStat.scrapQty, 0) AS scrapQty
+        FROM production_operation_task pot
+                 LEFT JOIN production_order po ON pot.production_order_id = po.id
+                 LEFT JOIN production_order_routing_operation poro ON pot.production_order_routing_operation_id = poro.id
+                 LEFT JOIN product_model pm ON pm.id = ifnull(poro.product_model_id, po.product_model_id)
+                 LEFT JOIN product p ON p.id = pm.product_id
+                 LEFT JOIN (
+            SELECT ppm.production_operation_task_id AS taskId,
+                   SUM(IFNULL(ppo.scrap_qty, 0)) AS scrapQty
+            FROM production_product_main ppm
+                     LEFT JOIN production_product_output ppo ON ppo.production_product_main_id = ppm.id
+            GROUP BY ppm.production_operation_task_id
+        ) scrapStat ON scrapStat.taskId = pot.id
+        WHERE pot.id = #{id}
+    </select>
+
 </mapper>

--
Gitblit v1.9.3