From 48bd9e20aa649145c9bf643e375c0cd86f7bb800 Mon Sep 17 00:00:00 2001
From: guoyujie <guoyujie@ng.com>
Date: 星期四, 04 九月 2025 08:28:52 +0800
Subject: [PATCH] Merge branch 'master' of http://10.153.19.25:10101/r/ERP_override

---
 north-glass-erp/src/main/resources/mapper/pp/WordOrder.xml |   62 +++++++++++++++++++++++++++----
 1 files changed, 54 insertions(+), 8 deletions(-)

diff --git a/north-glass-erp/src/main/resources/mapper/pp/WordOrder.xml b/north-glass-erp/src/main/resources/mapper/pp/WordOrder.xml
index ec4be7e..da82dde 100644
--- a/north-glass-erp/src/main/resources/mapper/pp/WordOrder.xml
+++ b/north-glass-erp/src/main/resources/mapper/pp/WordOrder.xml
@@ -8,6 +8,7 @@
         <result column="order_id" property="orderId"/>
         <result column="production_id" property="productionId"/>
         <result column="splitting_status" property="splittingStatus"/>
+        <result column="founder" property="founder"/>
         <result column="create_time" property="createTime"/>
         <!--鎺ユ敹鍏朵粬澶栭敭瀹炰綋绫绘暟鎹�-->
             <result column="batch" property="order.batch"/>
@@ -16,6 +17,7 @@
             <result column="area" property="order.area"/>
             <result column="creator" property="order.creator"/>
         <result column="customer_name" property="order.customerName"/>
+        <result column="processing_note" property="order.processingNote"/>
 <!--        <association property="orderDetail" javaType="com.example.erp.entity.sd.OrderDetail">-->
 <!--            <result column="product_id" property="productId"/>-->
 <!--            <result column="product_name" property="productName"/>-->
@@ -26,8 +28,19 @@
 <!--            <result column="bend_radius" property="bendRadius"/>-->
 <!--            <result column="processing_note" property="processingNote"/>-->
             <result column="gross_area" property="orderDetail.grossArea"/>
+
 <!--        </association>-->
 
+    </resultMap>
+
+    <resultMap id="addWordOrderMap" type="com.example.erp.entity.sd.OrderDetail">
+        <result column="order_id" property="orderId"/>
+        <result column="product_id" property="productId"/>
+        <result column="product_name" property="productName"/>
+        <result column="compute_gross_area" property="computeGrossArea"/>
+        <result column="quantity" property="quantity"/>
+        <result column="perimeter" property="perimeter"/>
+        <result column="process" property="orderGlassDetail.process"/>
     </resultMap>
 
     <select id="selectWordOrder" resultMap="wordOrderMap">
@@ -39,11 +52,12 @@
         o.area as gross_area,
         o.quantity as quantity,
         o.creator,
-        o.customer_name
+        o.customer_name,
+        o.processing_note
         from sd.order_detail  as od
         left join `order` as o
         on o.order_id=od.order_id
-        where o.production_order!=2 and o.order_review=2
+        where o.production_order!=2 and o.order_review=2 and o.create_order>0
 
         <if test="orderGlassDetail.orderId != null and orderGlassDetail.orderId != ''">
             and o.order_id regexp #{orderGlassDetail.orderId}
@@ -60,6 +74,9 @@
         </if>
         <if test="orderGlassDetail.order.customerName != null and orderGlassDetail.order.customerName!= ''">
             and o.customer_name regexp #{orderGlassDetail.order.customerName}
+        </if>
+        <if test="orderGlassDetail.order.processingNote != null and orderGlassDetail.order.processingNote!= ''">
+            and o.processing_note regexp #{orderGlassDetail.order.processingNote}
         </if>
 
         <if test="orderGlassDetail.createTime != ''">
@@ -78,6 +95,7 @@
         o.order_id,
         od.order_number,
         ogd.production_id,
+        ogd.founder,
         o.batch,
         o.project,
         o.order_type,
@@ -85,7 +103,8 @@
         (od.quantity) as quantity,
         o.creator,
         od.id,
-        o.customer_name
+        o.customer_name,
+        o.processing_note
         from sd.order_glass_detail  as ogd
         left join  order_detail as od
         on od.order_id=ogd.order_id
@@ -93,7 +112,7 @@
         left join `order` as o
         on o.order_id=ogd.order_id
         where ogd.production_id IS NOT NULL
-
+        and o.order_review>0
         <if test="orderGlassDetail.orderId != null and orderGlassDetail.orderId != ''">
             and o.order_id regexp #{orderGlassDetail.orderId}
         </if>
@@ -112,6 +131,9 @@
         <if test="orderGlassDetail.order.customerName != null and orderGlassDetail.order.customerName!= ''">
             and o.customer_name regexp #{orderGlassDetail.order.customerName}
         </if>
+        <if test="orderGlassDetail.order.processingNote != null and orderGlassDetail.order.processingNote!= ''">
+            and o.processing_note regexp #{orderGlassDetail.order.processingNote}
+        </if>
 
         <if test="orderGlassDetail.createTime != ''">
             and DATE_FORMAT((o.create_time),'%Y-%m-%d') BETWEEN #{ selectTime1 } AND #{ selectTime2 }
@@ -120,17 +142,22 @@
         order by od.id desc
     </select>
 
-    <select id="addWordOrder">
+    <select id="addWordOrder" resultMap="addWordOrderMap">
         select od.order_id,
         od.product_id,
         od.product_name,
         sum( od.quantity) as quantity,
         od.compute_gross_area,
-        od.perimeter
+        od.perimeter,
+        ogd.process
         from sd.order_detail as od
         left join sd.order as o
         on od.order_id =o.order_id
-        where od.order_id = #{orderId} and o.production_order!=2
+        left join (
+        select order_id,order_number,process from
+               sd.order_glass_detail where FIND_IN_SET(order_id,#{orderId}) GROUP BY order_id,order_number
+        ) as ogd on ogd.order_id = o.order_id and ogd.order_number=od.order_number
+        where FIND_IN_SET(od.order_id,#{orderId})    and o.production_order!=2
         <if test="orderDetail.orderId != null and orderDetail.orderId != ''">
             and od.order_id regexp #{orderDetail.orderId}
         </if>
@@ -140,7 +167,7 @@
         <if test="orderDetail.productName != null and orderDetail.productName != ''">
             and od.product_name regexp #{orderDetail.productName}
         </if>
-        group by od.order_id, od.product_id, od.product_name
+        group by od.order_id, od.product_id, od.product_name,ogd.process
         ;
     </select>
 
@@ -161,6 +188,7 @@
         where od.order_id = #{orderId}
           and od.product_id = #{productId}
           and od.product_name = #{productName}
+          and ogd.process = #{process}
     </update>
 
     <!--    鍒犻櫎宸ュ崟-->
@@ -194,4 +222,22 @@
     <select id="selectProcessCard">
         select processing_card from sd.`order` where order_id = #{orderId}
     </select>
+
+    <update id="updateWorkIdMp">
+        UPDATE sd.order_glass_detail AS ogd
+            JOIN (
+            SELECT order_id, order_number, MAX(production_id) AS production_id
+            FROM sd.order_glass_detail
+            WHERE production_id IS NOT NULL
+            AND FIND_IN_SET(order_id, #{orderId})  
+            GROUP BY order_id, order_number
+            ) AS t
+        ON ogd.order_id = t.order_id AND ogd.order_number = t.order_number
+            SET ogd.production_id = t.production_id,
+                ogd.production_time = NOW(),
+                ogd.founder = #{userName}
+        WHERE ogd.production_id IS NULL
+          AND FIND_IN_SET(ogd.order_id, #{orderId})
+
+    </update>
 </mapper>
\ No newline at end of file

--
Gitblit v1.8.0