廖井涛
2024-08-12 b425ceaf0691b548f0e837e002a23fc2968548ad
north-glass-erp/src/main/resources/mapper/pp/FolwCard.xml
@@ -502,13 +502,15 @@
                                          ogds.order_number,
                                          GROUP_CONCAT(ogds.technology_number SEPARATOR '') AS technology_number,
                                          ogds.glass_child                                  AS concatenated_glass_child,
                                          process                                           AS processed_part
                                          process                                           AS processed_part,
                                          ogds.child_width,
                                          ogds.child_height
                                   from sd.order_glass_detail as ogds
                                   where ogds.order_id = #{orderId}
                                   GROUP BY order_id, order_number, ogds.glass_child,process) as ogdss
                                   GROUP BY order_id, order_number, ogds.glass_child,process,ogds.child_width,ogds.child_height) 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,ogdss.processed_part
               GROUP BY fc.process_id, ogdss.concatenated_glass_child,ogdss.processed_part,ogdss.child_width,ogdss.child_height
               order by fc.process_id, ogdss.technology_number)
              UNION
@@ -596,6 +598,7 @@
        where process is not null
          and process != ""
        GROUP BY order_id,process_id,technology_number,process
        order by order_id,process_id,length(technology_number)
    </select>
    <select id="getPrimaryList">
@@ -639,7 +642,7 @@
    <select id="getDetailList">
        select fc.order_number,
               concat(round(ogd.child_width), "*", round(ogd.child_height)) as child_width,
               od.quantity,
               fc.quantity,
               round(ogd.total_area, 2)                                     as total_area,
               od.perimeter,
               od.bend_radius,
@@ -1104,7 +1107,7 @@
    <select id="getDetailListLike">
        select fc.order_number,
               concat(round(ogd.child_width), "*", round(ogd.child_height)) as child_width,
               od.quantity,
               fc.quantity,
               round(ogd.total_area, 2)                                     as total_area,
               od.perimeter,
               od.bend_radius,
@@ -1808,6 +1811,7 @@
        where process is not null
          and process != ""
        GROUP BY order_id,process_id,technology_number,process
        order by order_id,process_id,length(technology_number)
    </select>
    <insert id="printAddSortMp">
@@ -1831,4 +1835,42 @@
          and technology_number = #{technologyNumber}
          and process = #{process}
    </update>
    <select id="getPrimaryListLimt">
        select o.customer_name,
               o.project,
               #{process}                                         process,
               od.edging_type,
               #{glassChild}                                   as glass_child,
               od.product_name,
               o.processing_note,
               fc.process_id,
               SUM(od.quantity)                                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,
               concat('对应我司单号',o.batch)                                         AS otherRemarks
        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 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
        where fc.process_id = #{processId}
          and position(fc.technology_number in #{technologyNumber})
        group by fc.process_id limit 1
    </select>
</mapper>