From 31960ffca93463cf4f6d417576c8694aed84138e Mon Sep 17 00:00:00 2001
From: hdy <1105738590@qq.com>
Date: 星期五, 07 三月 2025 12:40:31 +0800
Subject: [PATCH] 修改

---
 billion-main/src/main/resources/mapper/om/OmProductionOrderInfoMapper.xml |   95 +++++++++++++++++++++++++++++++++++++++++++++--
 1 files changed, 90 insertions(+), 5 deletions(-)

diff --git a/billion-main/src/main/resources/mapper/om/OmProductionOrderInfoMapper.xml b/billion-main/src/main/resources/mapper/om/OmProductionOrderInfoMapper.xml
index 1fc153e..51ccd8a 100644
--- a/billion-main/src/main/resources/mapper/om/OmProductionOrderInfoMapper.xml
+++ b/billion-main/src/main/resources/mapper/om/OmProductionOrderInfoMapper.xml
@@ -23,8 +23,93 @@
     </resultMap>
 
     <sql id="selectOmProductionOrderInfoVo">
-        select id, work_order_no, sales_order_code, product_code, line_code, plan_qty, plan_start_time, plan_end_time, order_status, create_time, update_time, create_by, update_by, remarks, del_flag from om_production_order_info
+        select id,body_status,head_status,pre_status,body_qty,head_qty,pre_qty,work_order_no, sales_order_code, product_code, line_code, plan_qty, plan_start_time, plan_end_time, order_status, create_time, update_time, create_by, update_by, remarks, del_flag from om_production_order_info
     </sql>
+
+    <!-- 鏌ヨ order_status 涓� 1 涓� plan_start_time 鏈�鏃╃殑涓�鏉¤褰� -->
+    <select id="getBodyOrder" resultType="OmProductionOrderInfo">
+            SELECT TOP 1 *
+            FROM om_production_order_info
+            WHERE body_status IN (0,1)
+            ORDER BY plan_start_time ASC
+    </select>
+    <select id="updateBodyStatus1" resultType="OmProductionOrderInfo">
+        UPDATE o
+        SET body_status = 1, body_qty = body_qty + 1
+            FROM om_production_order_info AS o
+            INNER JOIN (
+            SELECT TOP 1 id
+            FROM om_production_order_info
+        WHERE body_status IN (0, 1)
+        ORDER BY plan_start_time ASC
+        ) AS sub ON o.id = sub.id;
+    </select>
+    <select id="updateBodyStatus2" resultType="OmProductionOrderInfo">
+        UPDATE om_production_order_info
+        SET body_status = 2
+        WHERE id = (
+            SELECT TOP 1 id
+            FROM om_production_order_info
+            WHERE body_status IN (0, 1)
+            ORDER BY plan_start_time ASC
+        );
+    </select>
+    <select id="getHeadOrder" resultType="OmProductionOrderInfo">
+        SELECT TOP 1 *
+        FROM om_production_order_info
+        WHERE head_status IN (0,1)
+        ORDER BY plan_start_time ASC
+    </select>
+    <select id="updateHeadStatus1" resultType="OmProductionOrderInfo">
+        UPDATE o
+        SET head_status = 1, head_qty = head_qty + 1
+            FROM om_production_order_info AS o
+            INNER JOIN (
+            SELECT TOP 1 id
+            FROM om_production_order_info
+        WHERE head_status IN (0, 1)
+        ORDER BY plan_start_time ASC
+        ) AS sub ON o.id = sub.id;
+    </select>
+    <select id="updateHeadStatus2" resultType="OmProductionOrderInfo">
+        UPDATE om_production_order_info
+        SET head_status = 2
+        WHERE id = (
+            SELECT TOP 1 id
+            FROM om_production_order_info
+            WHERE head_status IN (0, 1)
+            ORDER BY plan_start_time ASC
+        );
+    </select>
+    <select id="getPreOrder" resultType="OmProductionOrderInfo">
+        SELECT TOP 1 *
+        FROM om_production_order_info
+        WHERE pre_status IN (0,1)
+        ORDER BY plan_start_time ASC
+    </select>
+    <select id="updatePreStatus1" resultType="OmProductionOrderInfo">
+        UPDATE o
+        SET pre_status = 1, pre_qty = pre_qty + 1
+            FROM om_production_order_info AS o
+            INNER JOIN (
+            SELECT TOP 1 id
+            FROM om_production_order_info
+        WHERE pre_status IN (0, 1)
+        ORDER BY plan_start_time ASC
+        ) AS sub ON o.id = sub.id;
+    </select>
+    <select id="updatePreStatus2" resultType="OmProductionOrderInfo">
+        UPDATE om_production_order_info
+        SET pre_status = 2
+        WHERE id = (
+            SELECT TOP 1 id
+            FROM om_production_order_info
+            WHERE pre_status IN (0, 1)
+            ORDER BY plan_start_time ASC
+        );
+    </select>
+
+
 
     <select id="selectOmProductionOrderInfoList" parameterType="OmProductionOrderInfo" resultMap="OmProductionOrderInfoResult">
         <include refid="selectOmProductionOrderInfoVo"/>
@@ -33,13 +118,13 @@
             <if test="salesOrderCode != null  and salesOrderCode != ''"> and sales_order_code = #{salesOrderCode}</if>
             <if test="productCode != null  and productCode != ''"> and product_code = #{productCode}</if>
             <if test="orderStatus != null  and orderStatus != ''"> and order_status = #{orderStatus}</if>
-            and del_flag = "0"
+            and del_flag = 0
         </where>
     </select>
     
     <select id="selectOmProductionOrderInfoById" parameterType="Long" resultMap="OmProductionOrderInfoResult">
         <include refid="selectOmProductionOrderInfoVo"/>
-        where id = #{id} and del_flag = "0"
+        where id = #{id} and del_flag = 0
     </select>
 
     <insert id="insertOmProductionOrderInfo" parameterType="OmProductionOrderInfo" useGeneratedKeys="true" keyProperty="id">
@@ -100,11 +185,11 @@
     </update>
 
     <update id="deleteOmProductionOrderInfoById" parameterType="Long">
-        update om_production_order_info set del_flag = "1" where id = #{id}
+        update om_production_order_info set del_flag = 1 where id = #{id}
     </update>
 
     <update id="deleteOmProductionOrderInfoByIds" parameterType="String">
-        update om_production_order_info set del_flag = "1" where id in
+        update om_production_order_info set del_flag = 1 where id in
         <foreach item="id" collection="array" open="(" separator="," close=")">
             #{id}
         </foreach>

--
Gitblit v1.9.3