From 2a9c3934bb093c978a54a1c3e220e6a120855e77 Mon Sep 17 00:00:00 2001
From: maven <2163098428@qq.com>
Date: 星期五, 09 一月 2026 15:11:35 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/jtwy' into jtwy

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

diff --git a/src/main/resources/mapper/production/ProductWorkOrderMapper.xml b/src/main/resources/mapper/production/ProductWorkOrderMapper.xml
new file mode 100644
index 0000000..cd5d97e
--- /dev/null
+++ b/src/main/resources/mapper/production/ProductWorkOrderMapper.xml
@@ -0,0 +1,66 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE mapper
+        PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
+        "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.ruoyi.production.mapper.ProductWorkOrderMapper">
+
+    <resultMap id="BaseResultMap" type="com.ruoyi.production.pojo.ProductWorkOrder">
+        <result column="id" property="id"/>
+        <result column="product_process_route_item_id" property="productProcessRouteItemId"/>
+        <result column="create_time" property="createTime"/>
+        <result column="update_time" property="updateTime"/>
+        <result column="work_order_no" property="workOrderNo"/>
+        <result column="status" property="status"/>
+        <result column="tenant_id" property="tenantId"/>
+        <result column="actual_end_time" property="planStartTime"/>
+        <result column="plan_end_time" property="planEndTime"/>
+        <result column="actual_start_time" property="actualStartTime"/>
+        <result column="actualEndTime" property="actualEndTime"/>
+    </resultMap>
+
+    <select id="pageProductWorkOrder" resultType="com.ruoyi.production.dto.ProductWorkOrderDto">
+        SELECT
+        pwo.*,
+        pp.NAME as processName,
+        pm.model,
+        pm.unit,
+        p.product_name AS productName,
+        po.nps_no AS productOrderNpsNo
+        FROM
+        `product_work_order` pwo
+        LEFT JOIN product_process_route_item ppri ON ppri.id = pwo.product_process_route_item_id
+        LEFT JOIN product_order po ON po.id = pwo.product_order_id
+        LEFT JOIN product_process pp ON pp.id = ppri.process_id
+        LEFT JOIN product_model pm ON pm.id = ppri.product_model_id
+        LEFT JOIN product p ON p.id = pm.product_id
+        <where>
+            <if test="c.workOrderNo != null and c.workOrderNo != ''">
+                pwo.work_order_no like concat('%',#{c.workOrderNo},'%')
+            </if>
+        </where>
+    </select>
+
+    <update id="updatePlanQuantity" parameterType="java.util.Map">
+        UPDATE product_work_order
+        SET
+            report_work = #{reportWork},
+            quantity = #{quantity},
+            plan_quantity = plan_quantity - #{deductQuantity},
+            product_main_id = #{productMainId}
+        WHERE id = #{workOrderId}
+    </update>
+
+    <update id="rollbackPlanQuantity" parameterType="java.lang.Long">
+        UPDATE product_work_order pwo
+        INNER JOIN production_product_main ppm
+        ON pwo.id = ppm.work_order_id
+        AND ppm.id = #{productMainId}
+        INNER JOIN production_product_output ppo
+        ON ppo.product_main_id = ppm.id
+        SET
+        pwo.plan_quantity = pwo.plan_quantity + ppo.quantity,
+        pwo.report_work = 0,
+        pwo.quantity = 0
+        WHERE pwo.id = ppm.work_order_id
+    </update>
+</mapper>

--
Gitblit v1.9.3