From 2a891d0391bc9f2dfaaaee8f63fcb20ff0932202 Mon Sep 17 00:00:00 2001
From: 廖井涛 <2265517004@qq.com>
Date: 星期三, 24 七月 2024 15:11:40 +0800
Subject: [PATCH] 修改订单报表

---
 north-glass-erp/src/main/resources/mapper/sd/OrderGlassDetailMapper.xml |   62 ++++++++++++++++++++++++++-----
 1 files changed, 52 insertions(+), 10 deletions(-)

diff --git a/north-glass-erp/src/main/resources/mapper/sd/OrderGlassDetailMapper.xml b/north-glass-erp/src/main/resources/mapper/sd/OrderGlassDetailMapper.xml
index 9b332f2..b73cec4 100644
--- a/north-glass-erp/src/main/resources/mapper/sd/OrderGlassDetailMapper.xml
+++ b/north-glass-erp/src/main/resources/mapper/sd/OrderGlassDetailMapper.xml
@@ -17,7 +17,8 @@
             total_area,
 
             process,
-            `group`)
+            `group`
+            ,arc)
         select
             od.order_id,
             od.order_number,
@@ -25,14 +26,26 @@
             if(pd.glass_sort=1,'(澶�)',if(pd2.glass_sort=pd.glass_sort,'(鍐�)','')),
             pd.detail,
             if( od.bend_radius!='',
-                round(od.width*(od.bend_radius-round(sum(t.thicknessCount),2))/od.bend_radius,1),
+                round(od.width*
+                      (od.bend_radius-round(
+                          sum(t.thicknessCount)-t1.thicknessCount/2
+                          ,2))
+                          /od.bend_radius
+                    ,1),
                 od.width
-              ),
+              )
+               ,
+
             od.height,
             od.area,
             od.gross_area,
             pd.process,
-            pd.glass_group
+            pd.glass_group,
+            if( od.bend_radius!='',
+                round((od.width*(od.bend_radius-(sum(t.thicknessCount)-t1.thicknessCount)))/od.bend_radius,1)
+                ,null) as 'arc'
+
+
         from sd.product_detail as pd
         left join order_detail as od
             on od.product_id = pd.prod_id and pd.detail_type='glass'
@@ -43,18 +56,23 @@
                 a.prod_id,
                 a.sort_num,
                 a.glass_sort,
-                (case
-                      when a.sort_num=1
-                          then left(detail,LOCATE('mm',detail)-1)/2
-                      else
-                          left(detail,LOCATE('mm',detail)-1)
-                end) as 'thicknessCount'
+                left(detail,LOCATE('mm',detail)-1) as 'thicknessCount'
 
             from product_detail as a
             group  by prod_id,a.sort_num
         ) as t
         ON t.prod_id = od.product_id and t.sort_num &lt;=pd.sort_num
+        left join (
+            select
+                a.prod_id,
+                a.sort_num,
+                a.glass_sort,
+                left(detail,LOCATE('mm',detail)-1) as 'thicknessCount'
 
+            from product_detail as a
+            group  by prod_id,a.sort_num
+        ) as t1
+          ON t1.prod_id = od.product_id and t1.sort_num =pd.sort_num
 
         where od.order_id = #{orderId}
         group by od.order_number,pd.glass_sort
@@ -155,4 +173,28 @@
         group by child_width,child_height) as c
     </select>
 
+    <select id="getOrderGlassDetailByProductIdGlassChild" >
+        select a.glass_child
+        from sd.order_glass_detail as a
+        where a.order_id = #{orderId}
+          and a.order_number = #{orderNumber}
+        group by a.glass_child
+    </select>
+
+    <select id="getOrderGlassDetailByProductId" >
+        select *
+        from sd.order_detail od
+                 LEFT join sd.order_glass_detail  ogd on ogd.order_id=od.order_id and ogd.order_number=od.order_number
+        where od.order_id = #{orderId} and od.product_id=#{productId}
+          and  ogd.glass_child=#{glassChild}
+    </select>
+
+    <select id="getMinIdByGroup" >
+        select min(id) from sd.order_glass_detail as a
+        where a.order_id = #{orderId}
+          and a.order_number = #{orderNumber}
+        and a.`group` = #{group}
+
+    </select>
+
 </mapper>
\ No newline at end of file

--
Gitblit v1.8.0