From 4be6aef4c0af3ce178d3d3e3c5f482d837da8045 Mon Sep 17 00:00:00 2001
From: 你好啊 <1536384743@qq.com>
Date: 星期三, 07 八月 2024 19:28:40 +0800
Subject: [PATCH] 计算方式  精度问题解决冲突

---
 north-glass-erp/src/main/resources/mapper/pp/FolwCard.xml |   42 ++++++++++++++++++++++++++++++++++++------
 1 files changed, 36 insertions(+), 6 deletions(-)

diff --git a/north-glass-erp/src/main/resources/mapper/pp/FolwCard.xml b/north-glass-erp/src/main/resources/mapper/pp/FolwCard.xml
index 9fc3d0f..688f653 100644
--- a/north-glass-erp/src/main/resources/mapper/pp/FolwCard.xml
+++ b/north-glass-erp/src/main/resources/mapper/pp/FolwCard.xml
@@ -472,13 +472,41 @@
 
     <select id="selectPrintMp">
         select *
-        from ((select fc.id,
+        from ((
+                  select fc.id,
+                         fc.order_id,
+                         fc.process_id,
+                         o.customer_name,
+                         o.project,
+                         ogd.technology_number,
+                         ogd.glass_address,
+                         sum(od.quantity)         as quantity,
+                         sum(ogd.total_area)      as total_area,
+                         od.product_name,
+                         ogd.glass_child,
+                         fc.founder,
+                         date(fc.splitFrame_time) as splitFrame_time,
+                         fc.print_status,
+                         ogd.process
+                  from flow_card as fc
+                           left join sd.order_glass_detail as ogd
+                                     on ogd.order_id = fc.order_id and ogd.order_number = fc.order_number and
+                                        ogd.technology_number = fc.technology_number
+                           left join sd.order_detail as od on od.order_id = fc.order_id and od.order_number = fc.order_number
+                           left join sd.`order` as o on o.order_id = fc.order_id
+                  where fc.order_id = #{orderId}
+                  GROUP BY fc.process_id, ogd.technology_number
+                  order by fc.process_id, ogd.technology_number
+              )
+              UNION
+
+        (select fc.id,
                       fc.order_id,
                       fc.process_id,
                       o.customer_name,
                       o.project,
                       ogdss.technology_number,
-                      ogdss.concatenated_glass_child,
+                      ogd.glass_address,
                       ROUND(sum(fc.quantity) / (count(DISTINCT fc.technology_number))) as quantity,
                       sum(ogd.total_area)                                              as total_area,
                       # SUM(ogd.child_width*child_height*fc.quantity/(count(DISTINCT ogd.technology_number))) as total_area,
@@ -503,10 +531,10 @@
                                           process                                           AS processed_part
                                    from sd.order_glass_detail as ogds
                                    where ogds.order_id = #{orderId}
-                                   GROUP BY order_id, order_number, ogds.glass_child) as ogdss
+                                   GROUP BY order_id, order_number, ogds.glass_child,process) as ogdss
                                   on fc.order_id = ogdss.order_id and ogdss.order_number = fc.order_number
                where fc.order_id = #{orderId}
-               GROUP BY fc.process_id, ogdss.concatenated_glass_child
+               GROUP BY fc.process_id, ogdss.concatenated_glass_child,ogdss.processed_part
                order by fc.process_id, ogdss.technology_number)
 
               UNION
@@ -593,7 +621,7 @@
                order by fc.process_id)) AS combined_results
         where process is not null
           and process != ""
-
+        GROUP BY order_id,process_id,technology_number
     </select>
 
     <select id="getPrimaryList">
@@ -995,11 +1023,13 @@
                fc.quantity,
                ROUND(ogd.child_width * ogd.child_height * fc.quantity / 1000000, 2) as area,
                fc.sort,
-               ogd.process
+               ogd.process,
+               JSON_UNQUOTE(JSON_EXTRACT(od.other_columns, '$.S01')) AS glassNumber
         FROM flow_card AS fc
                  LEFT JOIN sd.order_glass_detail AS ogd ON fc.order_id = ogd.order_id
             AND fc.order_number = ogd.order_number
             AND fc.technology_number = ogd.technology_number
+        left join sd.order_detail as od on fc.order_id = od.order_id and fc.order_number = od.order_number
         where fc.order_id = #{orderId}
         order by IF(fc.sort != NULL || fc.sort != '', fc.sort, fc.technology_number)
     </select>

--
Gitblit v1.8.0