From 109e6d0e1f954b7c06d39c285b87cb9fbebc493c Mon Sep 17 00:00:00 2001
From: 廖井涛 <2265517004@qq.com>
Date: 星期五, 02 八月 2024 17:39:12 +0800
Subject: [PATCH] 修改金额重置

---
 north-glass-erp/src/main/resources/mapper/pp/FolwCard.xml |  136 +++++++++++++++++++++++++++++++++++++++++++--
 1 files changed, 130 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 37a850b..a35c17b 100644
--- a/north-glass-erp/src/main/resources/mapper/pp/FolwCard.xml
+++ b/north-glass-erp/src/main/resources/mapper/pp/FolwCard.xml
@@ -544,7 +544,7 @@
                             GROUP BY order_id, order_number,ogds.group
                         ) 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
+                        GROUP BY fc.process_id,ogdss.technology_number
                         order by fc.process_id)
                        UNION
                        (select fc.id,
@@ -845,14 +845,18 @@
                JSON_UNQUOTE( JSON_EXTRACT( od.other_columns, '$.S08' )) AS remarks5,
                 p.remarks as filmNumber,
                 od.bend_radius as bendRadius,
-                od.other_columns
+                od.other_columns,
+               ogd.glass_child as glassChild,
+               ogd.glass_address as glassAddress,
+               JSON_UNQUOTE( JSON_EXTRACT( pd.separation, '$.color' )) AS color
         from sd.order as o
                  left join sd.order_detail as od on o.order_id = od.order_id
                  left join flow_card as fc on o.order_id = fc.order_id and
                                               od.order_number = fc.order_number
                  left join sd.product as p on p.id=od.product_id
                  left join sd.customer as c on c.id = o.customer_id
-        left join sd.product_detail as pd  on pd.prod_id=p.id and pd.sort_num=od.order_number
+        left join sd.product_detail as pd  on pd.prod_id=p.id and pd.sort_num=od.order_number and pd.glass_sort=fc.technology_number
+        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
         where fc.process_id = #{processId}
           and fc.technology_number = #{technologyNumber}
         group by od.order_number, width, height
@@ -1173,7 +1177,11 @@
                round(SUM(ogd.total_area), 2)                   as gross_area,
                sum(od.weight)                   as weight,
                #{technologyNumber}                             as technologyNumber,
-               concat(fc.process_id, '/', #{technologyNumber}) as processIdNumber
+               concat(fc.process_id, '/', #{technologyNumber}) as processIdNumber,
+               dd.breakage_type,
+               dd.breakage_reason,
+               dd.responsible_process,
+               dd.responsible_team
         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
@@ -1194,9 +1202,12 @@
             GROUP BY order_id, order_number
         ) as ogdc on ogdc.order_id=ogd.order_id and ogdc.order_number=ogd.order_number and ogdc.technology_number=ogd.technology_number
                  left join patch_log as pl on pl.process_id=fc.process_id and pl.order_sort=fc.order_number and pl.technology_number=fc.technology_number
+        left join pp.reporting_work as rw on rw.order_id=fc.order_id and rw.process_id=fc.process_id
+        left join pp.damage_details as dd on rw.reporting_work_id=dd.reporting_work_id and dd.order_number=fc.order_number and dd.technology_number=fc.technology_number
         where fc.process_id = #{processId}
           and fc.order_number = #{orderNumber}
           and fc.technology_number = #{technologyNumber}
+        and rw.reporting_work_id=#{reportingWorkId}
         group by fc.process_id, fc.technology_number
     </select>
 
@@ -1392,7 +1403,7 @@
                p.remarks,
                c.customer_abbreviation as customerAbbreviation,
                p.product_abbreviation as productAbbreviation,
-               fc.process_id as processId,
+               CONCAT(fc.process_id,'/',fc.technology_number) as processId,
                o.create_time as createTime,
                JSON_UNQUOTE( JSON_EXTRACT( od.other_columns, '$.S01' )) AS glassNumber,
                JSON_UNQUOTE( JSON_EXTRACT( od.other_columns, '$.S02' )) AS figureNumber,
@@ -1405,7 +1416,8 @@
                p.remarks as filmNumber,
                od.bend_radius as bendRadius,
                ogd.glass_child as glassChild,
-               ogd.glass_address as glassAddress
+               ogd.glass_address as glassAddress,
+            JSON_UNQUOTE( JSON_EXTRACT( pd.separation, '$.color' )) AS color
         from sd.order as o
                  left join sd.order_detail as od on o.order_id = od.order_id
                  left join flow_card as fc on o.order_id = fc.order_id and
@@ -1448,4 +1460,116 @@
         GROUP BY fc.process_id, ogd.technology_number
         order by fc.process_id, ogd.technology_number
     </select>
+
+    <select id="selectPrintNotMergeMp">
+        select * from ((select fc.id,
+                               fc.order_id,
+                               fc.process_id,
+                               o.customer_name,
+                               o.project,
+                               fc.order_number,
+                               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,
+                            /* if(fc.print_status=0,'鏈墦鍗�','宸叉墦鍗�') as  print_status*/
+                               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,
+                               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,
+                               od.product_name,
+                               ogdss.concatenated_glass_child as glass_child,
+                               fc.founder,
+                               date(fc.splitFrame_time) as splitFrame_time,
+                               fc.print_status,
+                               processed_part as  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
+                                 left join (
+                            select
+                                ogds.order_id,
+                                ogds.order_number,
+                                GROUP_CONCAT(ogds.technology_number SEPARATOR '') AS technology_number,
+                                ogds.glass_child,
+                                GROUP_CONCAT(ogds.glass_child SEPARATOR ' ') AS concatenated_glass_child,
+                                SUBSTRING(process, LOCATE('澶硅兌', process)) AS processed_part
+                            from sd.order_glass_detail as ogds
+                            where ogds.order_id = #{orderId} and LOCATE('澶硅兌',ogds.process)>0
+                            GROUP BY order_id, order_number,ogds.group
+                        ) 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.technology_number
+                        order by fc.process_id)
+                       UNION
+                       (select fc.id,
+                               fc.order_id,
+                               fc.process_id,
+                               o.customer_name,
+                               o.project,
+                               ogdss.technology_number,
+                               ogd.glass_address,
+                               ROUND(sum(fc.quantity)/(count(DISTINCT fc.technology_number)))         as quantity,
+                               sum(ogd.total_area)      as total_area,
+                               od.product_name,
+                               ogdss.concatenated_glass_child as glass_child,
+                               fc.founder,
+                               date(fc.splitFrame_time) as splitFrame_time,
+                               fc.print_status,
+                               processed_part as 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
+                                 left join (
+                            select
+                                ogds.order_id,
+                                ogds.order_number,
+                                GROUP_CONCAT(pds.glass_sort SEPARATOR '') AS technology_number,
+                                ogds.glass_child,
+                                GROUP_CONCAT(ogds.glass_child SEPARATOR ' ') AS concatenated_glass_child,
+                                SUBSTRING(pds.process, LOCATE('涓┖', pds.process)) AS processed_part
+                            from sd.order_glass_detail as ogds
+                                     left join sd.order_detail as ods on ods.order_id=ogds.order_id and ods.order_number=ogds.order_number
+                                     left join sd.product_detail as pds on pds.prod_id=ods.product_id and pds.glass_sort=ogds.technology_number
+                            where ogds.order_id = #{orderId}
+                            GROUP BY order_id, order_number
+                        ) 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
+                        order by fc.process_id)
+
+                      ) AS combined_results where process is not null and process!=""
+    </select>
 </mapper>
\ No newline at end of file

--
Gitblit v1.8.0