From 2f44fc75c78e9291f07a0864199235cde689fa8d Mon Sep 17 00:00:00 2001
From: 廖井涛 <2265517004@qq.com>
Date: 星期五, 12 十二月 2025 12:29:37 +0800
Subject: [PATCH] 订单明细报表新增楼层编号跟其他列

---
 north-glass-erp/src/main/resources/mapper/sd/OrderDetailMapper.xml |   52 +++++++++++++++++++++++++++++++++++++++++++---------
 1 files changed, 43 insertions(+), 9 deletions(-)

diff --git a/north-glass-erp/src/main/resources/mapper/sd/OrderDetailMapper.xml b/north-glass-erp/src/main/resources/mapper/sd/OrderDetailMapper.xml
index 9525ef1..b67e7b1 100644
--- a/north-glass-erp/src/main/resources/mapper/sd/OrderDetailMapper.xml
+++ b/north-glass-erp/src/main/resources/mapper/sd/OrderDetailMapper.xml
@@ -28,7 +28,9 @@
                             weight,
                             perimeter,
                             monolithic_perimeter,
-                            other_columns
+                            other_columns,
+                            file_name,
+                            process_attribute
                           )
         values
         <foreach collection ="orderDetails" item="orderDetail" separator =",">
@@ -55,7 +57,9 @@
             #{orderDetail.weight},
             #{orderDetail.perimeter},
             #{orderDetail.monolithicPerimeter},
-            #{orderDetail.otherColumns}
+            #{orderDetail.otherColumns},
+            #{orderDetail.fileName},
+            #{orderDetail.processAttribute}
              )
         </foreach>
     </insert>
@@ -97,6 +101,7 @@
         <result column="levelTwo" property="levelTwo"/>
         <result column="total_thickness" property="totalThickness"/>
         <result column="createTime" property="createTime"/>
+        <result column="weights" property="weight"/>
 
         <result column="order_type" property="order.orderType"/>
         <result column="customer_name" property="order.customerName"/>
@@ -266,10 +271,11 @@
     <select id="getOrderReport" resultMap="orderMap">
         SELECT
             *,
+            round(a.weight*a.quantity,2) as weights,
             a.create_time as createTime,
             d.type_name as levelOne,
             e.type_name as levelTwo
-        from order_detail as a
+        from sd.order_detail as a
         left join sd.`order` as b
             on b.order_id = a.order_id
         left join sd.product as c
@@ -314,13 +320,33 @@
             and a.order_number like concat('%',#{orderDetail.orderNumber},'%')
         </if>
 
-        <if test="orderDetail.width != null and orderDetail.width != ''">
+        <if test="orderDetail.buildingNumber != null and orderDetail.buildingNumber != ''">
+            and a.building_number like concat('%',#{orderDetail.buildingNumber},'%')
+        </if>
+
+        <if test="orderDetail.width != null and orderDetail.width != '' and model==0">
             and a.width regexp REGEXP_REPLACE(#{orderDetail.width},'\\.0+$','')
         </if>
 
-        <if test="orderDetail.height != null and orderDetail.height != ''">
+        <if test="orderDetail.height != null and orderDetail.height != '' and model==0 ">
             and a.height regexp REGEXP_REPLACE(#{orderDetail.height},'\\.0+$','')
         </if>
+
+        <if test="orderDetail.width != null and orderDetail.width != '' and model==1">
+            and a.width >= REGEXP_REPLACE(#{orderDetail.width } - #{scope} ,'\\.0+$','')
+            and a.width &lt;= REGEXP_REPLACE(#{orderDetail.width } + #{scope} ,'\\.0+$','')
+
+        </if>
+
+        <if test="orderDetail.height != null and orderDetail.height != '' and model==1 ">
+            and a.height > REGEXP_REPLACE(#{orderDetail.height } - #{scope} ,'\\.0+$','')
+            and a.height &lt; REGEXP_REPLACE(#{orderDetail.height } + #{scope} ,'\\.0+$','')
+        </if>
+
+
+
+
+
 
         <if test="orderDetail.quantity != null and orderDetail.quantity != ''">
             and a.quantity like concat('%',#{orderDetail.quantity},'%')
@@ -456,6 +482,10 @@
             and a.order_number like concat('%',#{orderDetail.orderNumber},'%')
         </if>
 
+        <if test="orderDetail.buildingNumber != null and orderDetail.buildingNumber != ''">
+            and a.building_number like concat('%',#{orderDetail.buildingNumber},'%')
+        </if>
+
         <if test="orderDetail.width != null and orderDetail.width != ''">
             and a.width regexp REGEXP_REPLACE(#{orderDetail.width},'\\.0+$','')
         </if>
@@ -552,11 +582,12 @@
     <select id="exportOrderReport"  >
         SELECT
             *,
+            round(a.weight*a.quantity,2) as weights,
             b.processing_note as processingNotes,
             a.create_time as createTime,
             d.type_name as level_one,
             e.type_name as level_two
-        from order_detail as a
+        from sd.order_detail as a
          left join sd.`order` as b
                    on b.order_id = a.order_id
          left join sd.product as c
@@ -566,6 +597,7 @@
          left join sd.basic_glass_type as e
                    on e.type_id = d.belong
         where  date(a.create_time)>=#{dates[0]} and date(a.create_time) &lt;= #{dates[1]} and b.order_review>0
+        order by b.order_id desc
     </select>
 
 
@@ -587,7 +619,7 @@
         a.edging_type,
         b.pack_type,
         round(sum(a.perimeter),2) as perimeter,
-        round(sum(a.weight),2) as weight,
+        round(sum(a.weight*a.quantity),2) as weights,
         a.price,
         sum(a.gross_amount ) as gross_amount,
         b.al_type,
@@ -916,7 +948,7 @@
                a.remarks,
                a.bend_radius,
                a.edging_type,
-               a.weight,
+               round(sum(a.weight*a.quantity),2) as weights,
                a.perimeter,
                a.other_columns,
                a.warehouse_num,
@@ -1046,7 +1078,9 @@
         group by od.product_id,pd.detail
     </select>
 
-
+    <delete id="deleteOrderFile" >
+        delete from sd.order_file where order_id = #{orderId}
+    </delete>
 
 
 

--
Gitblit v1.8.0