From 12f2fd73462da331478fabc7eaa79fc35b1a59b3 Mon Sep 17 00:00:00 2001
From: 廖井涛 <2265517004@qq.com>
Date: 星期五, 19 七月 2024 16:41:17 +0800
Subject: [PATCH] Merge branch 'master' of http://bore.pub:10439/r/ERP_override

---
 north-glass-erp/src/main/resources/mapper/pp/FolwCard.xml |  323 ++++++++++++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 314 insertions(+), 9 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 0f1b318..7ae0bf9 100644
--- a/north-glass-erp/src/main/resources/mapper/pp/FolwCard.xml
+++ b/north-glass-erp/src/main/resources/mapper/pp/FolwCard.xml
@@ -246,7 +246,7 @@
                p.total_thickness     AS 'totalThickness',
                p.thickness,
                od.weight,
-               od.weight,
+               od.remarks,
                ods.S01,
                ods.S02,
                ods.S03,
@@ -544,7 +544,8 @@
                od.other_columns,
                round(ogd.child_width) as width,
                round(ogd.child_height) as height,
-               pd.separation
+               pd.separation,
+               fc.technology_number
         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
@@ -735,13 +736,25 @@
                od.edging_type       as edgingType,
                p.remarks,
                c.customer_abbreviation as customerAbbreviation,
-               od.other_columns
+               p.product_abbreviation as productAbbreviation,
+               fc.process_id 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,
+               JSON_UNQUOTE( JSON_EXTRACT( od.other_columns, '$.S03' )) AS colourCeramicGlaze,
+               JSON_UNQUOTE( JSON_EXTRACT( od.other_columns, '$.S04' )) AS remarks1,
+               JSON_UNQUOTE( JSON_EXTRACT( od.other_columns, '$.S05' )) AS remarks2,
+               JSON_UNQUOTE( JSON_EXTRACT( od.other_columns, '$.S06' )) AS remarks3,
+               JSON_UNQUOTE( JSON_EXTRACT( od.other_columns, '$.S07' )) AS remarks4,
+               JSON_UNQUOTE( JSON_EXTRACT( od.other_columns, '$.S08' )) AS remarks5,
+                p.remarks as filmNumber
         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
         where fc.process_id = #{processId}
           and fc.technology_number = #{technologyNumber}
         group by od.order_number, width, height
@@ -766,7 +779,8 @@
                pl.patch_reason,
                pl.patch_processes,
                od.product_name,
-               ogd.glass_child
+               ogd.glass_child,
+               fc.print_status
         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
@@ -776,9 +790,9 @@
                  left join patch_log as pl on pl.order_id = fc.order_id and pl.process_id = fc.process_id and
                                               pl.order_sort = fc.order_number and
                                               pl.technology_number = fc.technology_number
-        where pl.create_time between #{selectTime1} and #{selectTime2}
-        GROUP BY fc.process_id, ogd.technology_number
-        order by fc.process_id, ogd.technology_number
+        where pl.create_time between #{selectTime1} and #{selectTime2} and pl.review_status>0
+        GROUP BY pl.id,fc.process_id, ogd.technology_number
+        order by pl.id desc,fc.process_id, ogd.technology_number
     </select>
 
     <select id="getRepairPrintCustomData">
@@ -930,8 +944,299 @@
                  left join rework as pl on pl.order_id = fc.order_id and pl.process_id = fc.process_id and
                                            pl.order_sort = fc.order_number and
                                            pl.technology_number = fc.technology_number
-        where pl.create_time between #{selectTime1} and #{selectTime2}
+        where pl.create_time between #{selectTime1} and #{selectTime2} and pl.review_status>0
         GROUP BY fc.process_id, ogd.technology_number
-        order by fc.process_id, ogd.technology_number
+        order by pl.id desc,fc.process_id, ogd.technology_number
+    </select>
+
+    <select id="getDetailListLike">
+        select fc.order_number,
+               concat(round(ogd.child_width), "*", round(ogd.child_height)) as child_width,
+               od.quantity,
+               round(ogd.total_area, 2)                                     as total_area,
+               od.perimeter,
+               od.bend_radius,
+               concat(od.processing_note,od.remarks) as remarks,
+               od.other_columns,
+               round(ogd.child_width) as width,
+               round(ogd.child_height) as height,
+               pd.separation,
+               fc.technology_number
+        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 od.order_id = fc.order_id and od.order_number = fc.order_number
+                 left join sd.product_detail as pd on pd.prod_id=od.product_id and pd.glass_sort=ogd.technology_number
+        where fc.process_id = #{processId}
+          and position(fc.technology_number in #{technologyNumber})
+        group by fc.process_id, fc.order_number,fc.technology_number
+        order by IF(sort != NULL || sort != '', sort, fc.order_number)
+    </select>
+
+    <select id="getPrimaryListMergeRefund">
+        select o.customer_name,
+               o.project,
+               ogd.process,
+               od.edging_type,
+               ogdc.concatenated_glass_child as glass_child,
+               od.product_name,
+               o.processing_note,
+               fc.process_id,
+               pl.patch_num                                as quantity,
+               round(SUM(ogd.total_area), 2)                   as gross_area,
+               sum(od.weight)                   as weight,
+               #{technologyNumber}                             as technologyNumber,
+               concat(fc.process_id, '/', #{technologyNumber}) as processIdNumber
+        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 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 sd.product as p on p.id=od.product_id
+                 left join (
+            select         ogd.order_id,
+                           ogd.order_number,
+                           ogd.technology_number,
+                           ogd.glass_child,
+                           GROUP_CONCAT(glass_child SEPARATOR ' ') AS concatenated_glass_child
+            from sd.order_glass_detail as ogd
+            where ogd.order_id = left(#{processId},10)
+              and ogd.order_number=#{orderNumber}
+              and position(ogd.technology_number in #{technologyNumber})
+            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
+        where fc.process_id = #{processId} and fc.order_number=#{orderNumber}
+          and position(fc.technology_number in #{technologyNumber}) and ogdc.concatenated_glass_child is NOT null
+        group by fc.process_id, fc.technology_number
+    </select>
+
+    <select id="getDetailListRefund">
+        select fc.order_number,
+               concat(round(ogd.child_width), "*", round(ogd.child_height)) as child_width,
+               (pl.patch_num) as quantity,
+               round(ogd.total_area, 2)                                     as total_area,
+               od.perimeter,
+               od.bend_radius,
+               concat(od.processing_note,od.remarks) as remarks,
+               od.other_columns,
+               round(ogd.child_width) as width,
+               round(ogd.child_height) as height,
+               pd.separation,
+               fc.technology_number
+        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 od.order_id = fc.order_id and od.order_number = fc.order_number
+                 left join sd.product_detail as pd on pd.prod_id=od.product_id and pd.glass_sort=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
+        where fc.process_id = #{processId}
+          and fc.order_number = #{orderNumber}
+          and position(fc.technology_number in #{technologyNumber})
+        group by fc.process_id, fc.order_number,fc.technology_number
+        order by IF(sort != NULL || sort != '', sort, fc.order_number)
+    </select>
+
+    <select id="getPrimaryListRefund">
+        select o.customer_name,
+               o.project,
+               ogd.process,
+               od.edging_type,
+               ogd.glass_child,
+               od.product_name,
+               o.processing_note,
+               fc.process_id,
+               pl.patch_num                                as quantity,
+               round(SUM(ogd.total_area), 2)                   as gross_area,
+               sum(od.weight)                   as weight,
+               #{technologyNumber}                             as technologyNumber,
+               concat(fc.process_id, '/', #{technologyNumber}) as processIdNumber
+        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 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 sd.product as p on p.id=od.product_id
+                 left join (
+            select         ogd.order_id,
+                           ogd.order_number,
+                           ogd.technology_number,
+                           ogd.glass_child,
+                           GROUP_CONCAT(glass_child SEPARATOR ' ') AS concatenated_glass_child
+            from sd.order_glass_detail as ogd
+            where ogd.order_id = left(#{processId},10)
+              and ogd.order_number = #{orderNumber}
+              and position(ogd.technology_number in #{technologyNumber})
+            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
+        where fc.process_id = #{processId}
+          and fc.order_number = #{orderNumber}
+          and fc.technology_number = #{technologyNumber}
+        group by fc.process_id, fc.technology_number
+    </select>
+
+    <select id="getDetailListLikeRefund">
+        select fc.order_number,
+               concat(round(ogd.child_width), "*", round(ogd.child_height)) as child_width,
+               pl.patch_num as quantity,
+               round(ogd.total_area, 2)                                     as total_area,
+               od.perimeter,
+               od.bend_radius,
+               concat(od.processing_note,od.remarks) as remarks,
+               od.other_columns,
+               round(ogd.child_width) as width,
+               round(ogd.child_height) as height,
+               pd.separation,
+               fc.technology_number
+        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 od.order_id = fc.order_id and od.order_number = fc.order_number
+                 left join sd.product_detail as pd on pd.prod_id=od.product_id and pd.glass_sort=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
+        where fc.process_id = #{processId}
+          and fc.order_number = #{orderNumber}
+          and position(fc.technology_number in #{technologyNumber})
+        group by fc.process_id, fc.order_number,fc.technology_number
+        order by IF(sort != NULL || sort != '', sort, fc.order_number)
+    </select>
+
+    <select id="getPrimaryListRework">
+        select o.customer_name,
+               o.project,
+               ogd.process,
+               od.edging_type,
+               ogd.glass_child,
+               od.product_name,
+               o.processing_note,
+               fc.process_id,
+               pl.rework_num                                as quantity,
+               round(SUM(ogd.total_area), 2)                   as gross_area,
+               sum(od.weight)                   as weight,
+               #{technologyNumber}                             as technologyNumber,
+               concat(fc.process_id, '/', #{technologyNumber}) as processIdNumber
+        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 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 sd.product as p on p.id=od.product_id
+                 left join (
+            select         ogd.order_id,
+                           ogd.order_number,
+                           ogd.technology_number,
+                           ogd.glass_child,
+                           GROUP_CONCAT(glass_child SEPARATOR ' ') AS concatenated_glass_child
+            from sd.order_glass_detail as ogd
+            where ogd.order_id = left(#{processId},10)
+              and ogd.order_number = #{orderNumber}
+              and position(ogd.technology_number in #{technologyNumber})
+            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 rework as pl on pl.process_id=fc.process_id and pl.order_sort=fc.order_number and pl.technology_number=fc.technology_number
+        where fc.process_id = #{processId}
+          and fc.order_number = #{orderNumber}
+          and fc.technology_number = #{technologyNumber}
+        group by fc.process_id, fc.technology_number
+    </select>
+
+    <select id="getDetailListRework">
+        select fc.order_number,
+               concat(round(ogd.child_width), "*", round(ogd.child_height)) as child_width,
+               (pl.rework_num) as quantity,
+               round(ogd.total_area, 2)                                     as total_area,
+               od.perimeter,
+               od.bend_radius,
+               concat(od.processing_note,od.remarks) as remarks,
+               od.other_columns,
+               round(ogd.child_width) as width,
+               round(ogd.child_height) as height,
+               pd.separation,
+               fc.technology_number
+        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 od.order_id = fc.order_id and od.order_number = fc.order_number
+                 left join sd.product_detail as pd on pd.prod_id=od.product_id and pd.glass_sort=ogd.technology_number
+                 left join rework as pl on pl.process_id=fc.process_id and pl.order_sort=fc.order_number and pl.technology_number=fc.technology_number
+        where fc.process_id = #{processId}
+          and fc.order_number = #{orderNumber}
+          and position(fc.technology_number in #{technologyNumber})
+        group by fc.process_id, fc.order_number,fc.technology_number
+        order by IF(sort != NULL || sort != '', sort, fc.order_number)
+    </select>
+
+    <select id="getPrimaryListMergeRework">
+        select o.customer_name,
+               o.project,
+               ogd.process,
+               od.edging_type,
+               ogdc.concatenated_glass_child as glass_child,
+               od.product_name,
+               o.processing_note,
+               fc.process_id,
+               pl.rework_num                                as quantity,
+               round(SUM(ogd.total_area), 2)                   as gross_area,
+               sum(od.weight)                   as weight,
+               #{technologyNumber}                             as technologyNumber,
+               concat(fc.process_id, '/', #{technologyNumber}) as processIdNumber
+        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 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 sd.product as p on p.id=od.product_id
+                 left join (
+            select         ogd.order_id,
+                           ogd.order_number,
+                           ogd.technology_number,
+                           ogd.glass_child,
+                           GROUP_CONCAT(glass_child SEPARATOR ' ') AS concatenated_glass_child
+            from sd.order_glass_detail as ogd
+            where ogd.order_id = left(#{processId},10)
+              and ogd.order_number=#{orderNumber}
+              and position(ogd.technology_number in #{technologyNumber})
+            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 rework as pl on pl.process_id=fc.process_id and pl.order_sort=fc.order_number and pl.technology_number=fc.technology_number
+        where fc.process_id = #{processId} and fc.order_number=#{orderNumber}
+          and position(fc.technology_number in #{technologyNumber}) and ogdc.concatenated_glass_child is NOT null
+        group by fc.process_id, fc.technology_number
+    </select>
+
+    <select id="getDetailListLikeRework">
+        select fc.order_number,
+               concat(round(ogd.child_width), "*", round(ogd.child_height)) as child_width,
+               pl.rework_num as quantity,
+               round(ogd.total_area, 2)                                     as total_area,
+               od.perimeter,
+               od.bend_radius,
+               concat(od.processing_note,od.remarks) as remarks,
+               od.other_columns,
+               round(ogd.child_width) as width,
+               round(ogd.child_height) as height,
+               pd.separation,
+               fc.technology_number
+        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 od.order_id = fc.order_id and od.order_number = fc.order_number
+                 left join sd.product_detail as pd on pd.prod_id=od.product_id and pd.glass_sort=ogd.technology_number
+                 left join rework as pl on pl.process_id=fc.process_id and pl.order_sort=fc.order_number and pl.technology_number=fc.technology_number
+        where fc.process_id = #{processId}
+          and fc.order_number = #{orderNumber}
+          and position(fc.technology_number in #{technologyNumber})
+        group by fc.process_id, fc.order_number,fc.technology_number
+        order by IF(sort != NULL || sort != '', sort, fc.order_number)
     </select>
 </mapper>
\ No newline at end of file

--
Gitblit v1.8.0