From 0be02df3d287f802c76e5738916301a877dfaa0e Mon Sep 17 00:00:00 2001
From: gongchunyi <deslre0381@gmail.com>
Date: 星期一, 27 四月 2026 16:56:12 +0800
Subject: [PATCH] feat: 生产报工与报工台账功能更改完成

---
 src/main/resources/mapper/production/ProductWorkOrderMapper.xml |   30 ++++++++++++++++++++++++++++--
 1 files changed, 28 insertions(+), 2 deletions(-)

diff --git a/src/main/resources/mapper/production/ProductWorkOrderMapper.xml b/src/main/resources/mapper/production/ProductWorkOrderMapper.xml
index e132174..2c47577 100644
--- a/src/main/resources/mapper/production/ProductWorkOrderMapper.xml
+++ b/src/main/resources/mapper/production/ProductWorkOrderMapper.xml
@@ -21,7 +21,15 @@
     <select id="pageProductWorkOrder" resultType="com.ruoyi.production.dto.ProductWorkOrderDto">
         SELECT
         pwo.*,
-        pp.NAME as processName,
+        CASE pp.type
+            WHEN 1 THEN '鍔犲伐'
+            WHEN 2 THEN '鍒澘鍐疯姱鍒朵綔'
+            WHEN 3 THEN '绠¤矾缁勫'
+            WHEN 4 THEN '缃愪綋杩炴帴鍙婅皟璇�'
+            WHEN 5 THEN '娴嬭瘯鎵撳帇'
+            WHEN 6 THEN '鍏朵粬'
+            ELSE pp.NAME
+        END as processName,
         pm.model,
         pm.unit,
         p.product_name AS productName,
@@ -62,7 +70,15 @@
     <select id="getProductWorkOrderFlowCard" resultType="com.ruoyi.production.dto.ProductWorkOrderDto">
         SELECT
         pwo.*,
-        pp.NAME as processName,
+        CASE pp.type
+            WHEN 1 THEN '鍔犲伐'
+            WHEN 2 THEN '鍒澘鍐疯姱鍒朵綔'
+            WHEN 3 THEN '绠¤矾缁勫'
+            WHEN 4 THEN '缃愪綋杩炴帴鍙婅皟璇�'
+            WHEN 5 THEN '娴嬭瘯鎵撳帇'
+            WHEN 6 THEN '鍏朵粬'
+            ELSE pp.NAME
+        END as processName,
         pm.model,
         pm.unit,
         p.product_name AS productName,
@@ -105,4 +121,14 @@
         limit 1
         ;
     </select>
+
+    <update id="addCompleteQtyIfNotExceed">
+        update product_work_order
+        set
+            complete_quantity = complete_quantity + #{delta},
+            actual_start_time = ifnull(actual_start_time, now()),
+            actual_end_time = case when (complete_quantity + #{delta}) = plan_quantity then now() else actual_end_time end
+        where id = #{id}
+          and (complete_quantity + #{delta}) <![CDATA[ <= ]]> plan_quantity
+    </update>
 </mapper>

--
Gitblit v1.9.3