廖井涛
2024-09-06 10a26b9b670efef0a2adba675c794c539846aa3c
north-glass-erp/src/main/resources/mapper/pp/FolwCard.xml
@@ -195,15 +195,17 @@
               ogd.production_id,
               od.product_id,
               od.product_name,
               SUM(od.quantity)            as quantity,
               ROUND(SUM(od.quantity)-IFNULL(sum(fc.quantity)/count(fc.technology_number),0))            as quantity,
               SUM(od.compute_gross_area)  as compute_gross_area,
               round(sum(od.perimeter), 2) as perimeter
        from sd.order_detail as od
                 left join
             (select order_id, order_number, production_id, splitting_status
             (select order_id, order_number,technology_number, production_id, splitting_status
              from sd.order_glass_detail
              GROUP BY order_id, order_number) as ogd
             on od.order_id = ogd.order_id and od.order_number = ogd.order_number
                 left join flow_card as fc on fc.order_id = od.order_id and fc.order_number = od.order_number
            and fc.technology_number=ogd.technology_number
        where od.order_id = #{orderId}
          and ogd.splitting_status = 0
@@ -241,12 +243,13 @@
               od.quantity,
               od.compute_gross_area,
               p.total_thickness,
               od.quantity           as baiscQuantity,
               ROUND(od.quantity-IFNULL(sum(fc.quantity)/count(fc.technology_number),0))           as baiscQuantity,
               od.compute_gross_area as 'computeGrossArea',
               p.total_thickness     AS 'totalThickness',
               p.thickness,
               od.weight,
               od.remarks,
               od.bend_radius,
               ods.S01,
               ods.S02,
               ods.S03,
@@ -266,6 +269,8 @@
                            FROM sd.order_detail
                            WHERE order_id = #{orderId}) as ods
                           on ods.order_id = od.order_id and ods.order_number = od.order_number
                 left join flow_card as fc on fc.order_id = od.order_id and fc.order_number = od.order_number
                           and fc.technology_number=ogd.technology_number
        where od.order_id = #{orderId}
          and ogd.production_id = #{productionId}
          and ogd.splitting_status = 0
@@ -480,8 +485,8 @@
                      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,
                      # sum(ogd.total_area)                                              as total_area,
                      ROUND(SUM(ogd.child_width*ogd.child_height*fc.quantity)/1000000/(count(DISTINCT fc.technology_number)),2) as total_area,
                      od.product_name,
                      ogdss.concatenated_glass_child                                   as glass_child,
                      fc.founder,
@@ -505,12 +510,10 @@
                                          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, ogds.child_width,
                                            ogds.child_height) 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, ogdss.processed_part, ogdss.child_width,
                        ogdss.child_height
               GROUP BY fc.process_id, ogdss.concatenated_glass_child, ogdss.processed_part
               order by fc.process_id, ogdss.technology_number)
              UNION
@@ -523,8 +526,8 @@
                      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,
                     #  sum(ogd.total_area)                                              as total_area,
                      ROUND(SUM(ogd.child_width*ogd.child_height*fc.quantity)/1000000/(count(DISTINCT fc.technology_number)),2) as total_area,
                      od.product_name,
                      ogdss.concatenated_glass_child                                   as glass_child,
                      fc.founder,
@@ -562,7 +565,7 @@
                      ogdss.technology_number,
                      ogd.glass_address,
                      ROUND(sum(fc.quantity) / (count(DISTINCT fc.technology_number))) as quantity,
                      sum(ogd.total_area)                                              as total_area,
                      ROUND(SUM(ogd.child_width*ogd.child_height*fc.quantity)/1000000/(count(DISTINCT fc.technology_number)),2) as total_area,
                      od.product_name,
                      ogdss.concatenated_glass_child                                   as glass_child,
                      fc.founder,
@@ -759,7 +762,7 @@
               o.customer_id,
               ogd.child_width                as width,
               ogd.child_height               as height,
               od.quantity,
               fc.quantity,
               od.order_number                as orderNumber,
               fc.technology_number           as technologyNumber,
               ogd.glass_child,
@@ -883,7 +886,7 @@
               od.processing_note                                    as processingNote,
               width,
               height,
               od.quantity,
               fc.quantity,
               od.order_number                                       as orderNumber,
               fc.technology_number                                  as technologyNumber,
               od.building_number                                    as buildingNumber,
@@ -945,7 +948,9 @@
               od.product_name,
               ogd.glass_child,
               fc.print_status,
               pl.reporting_work_id
               pl.reporting_work_id,
               JSON_UNQUOTE(JSON_EXTRACT(od.other_columns, '$.S01'))                AS glassNumber
        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
@@ -1128,7 +1133,8 @@
               pl.rework_processes,
               od.product_name,
               ogd.glass_child,
               pl.reporting_work_id
               pl.reporting_work_id,
               JSON_UNQUOTE(JSON_EXTRACT(od.other_columns, '$.S01')) AS glassNumber
        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
@@ -1139,7 +1145,7 @@
                                           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, pl.reporting_work_id
        GROUP BY fc.process_id,fc.order_number, ogd.technology_number, pl.reporting_work_id
        order by pl.id desc, fc.process_id, ogd.technology_number
    </select>
@@ -1218,7 +1224,7 @@
    <select id="getDetailListRefund">
        select fc.order_number,
               concat(round(ogd.child_width), "*", round(ogd.child_height))   as child_width,
               (pl.patch_num)                                                 as quantity,
               sum(pl.patch_num)                                                 as quantity,
               round(ogd.total_area, 2)                                       as total_area,
               od.perimeter,
               od.bend_radius,
@@ -1264,7 +1270,8 @@
               dd.responsible_process,
               dd.responsible_team,
               concat('对应我司单号', o.batch)                 AS otherRemarks,
               dd.responsible_personnel
               dd.responsible_personnel,
               #{mergeTechnologyNumber} as  mergeTechnologyNumber
        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
@@ -1501,7 +1508,7 @@
               od.processing_note                                    as processingNote,
               round(ogd.child_width)                                as width,
               round(ogd.child_height)                               as height,
               od.quantity,
               fc.quantity,
               od.order_number                                       as orderNumber,
               fc.technology_number                                  as technologyNumber,
               od.building_number                                    as buildingNumber,
@@ -1541,7 +1548,7 @@
                               and fcs.process = #{process}
        where fc.process_id = #{processId}
          and position(fc.technology_number in #{technologyNumber})
        group by od.order_number, ogd.technology_number, ogd.child_width, ogd.child_height
        group by fc.process_id,od.order_number, ogd.technology_number, ogd.child_width, ogd.child_height
        order by IF(fcs.sort != NULL or fcs.sort != '', fcs.sort, fc.order_number)
    </select>
@@ -1554,8 +1561,8 @@
               fc.order_number,
               ogd.technology_number,
               ogd.glass_address,
               sum(od.quantity)         as quantity,
               sum(ogd.total_area)      as total_area,
               sum(fc.quantity)                                                          as quantity,
               round(sum(ogd.child_width * ogd.child_height * fc.quantity / 1000000), 2) as total_area,
               od.product_name,
               ogd.glass_child,
               fc.founder,
@@ -1981,7 +1988,7 @@
               od.processing_note                                    as processingNote,
               width,
               height,
               od.quantity,
               fc.quantity,
               od.order_number                                       as orderNumber,
               fc.technology_number                                  as technologyNumber,
               od.building_number                                    as buildingNumber,
@@ -2019,7 +2026,7 @@
                              ogd.technology_number = fc.technology_number
        where fc.process_id = #{processId}
          and fc.order_number = #{orderNumber}
        group by fc.process_id, od.order_number, width, height
        group by od.order_number, width, height
        order by fc.process_id
    </select>
@@ -2095,4 +2102,8 @@
        where fc.process_id = #{processId}
    </update>
    <delete id="deleteflowCardSort">
        delete from flow_card_sort where process_id = #{processId}
    </delete>
</mapper>