<?xml version="1.0" encoding="UTF-8" ?>
|
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
<mapper namespace="com.mes.pp.mapper.FlowCardMapper">
|
|
|
<select id="selectFlowCard" resultType="java.util.Map">
|
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(IFNULL(od.processing_note,''), IFNULL(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 pp.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="selectProject" resultType="java.util.Map">
|
select o.customer_name,
|
o.project,
|
(select process from sd.order_glass_detail where order_id=fc.order_id and order_number=fc.order_number and technology_number=fc.technology_number) as process ,
|
od.edging_type,
|
(select glass_child from sd.order_glass_detail where order_id=fc.order_id and order_number=fc.order_number and technology_number=fc.technology_number) 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,
|
1 as technologyNumber,
|
concat(fc.process_id, '/', 1) as processIdNumber,
|
concat('对应我司单号',o.batch) AS otherRemarks
|
from pp.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
|
</select>
|
|
<select id="selectLabel" resultType="java.util.Map">
|
select fc.process_id,
|
o.order_id,
|
o.project,
|
o.customer_id,
|
ogd.child_width as width,
|
ogd.child_height as height,
|
od.quantity,
|
od.order_number as orderNumber,
|
fc.technology_number as technologyNumber,
|
ogd.glass_child,
|
ogd.process,
|
c.customer_abbreviation as customer_name,
|
ifnull(od.processing_note, '') as processing_note,
|
bgt.type_name,
|
od.other_columns,
|
od.building_number,
|
od.bend_radius
|
from sd.order as o
|
left join sd.order_detail as od on o.order_id = od.order_id
|
left join sd.order_glass_detail as ogd
|
on ogd.order_id = od.order_id and ogd.order_number = od.order_number
|
left join pp.flow_card as fc on o.order_id = fc.order_id and
|
od.order_number = fc.order_number and
|
fc.technology_number = ogd.technology_number
|
left join sd.product pt on pt.id = od.product_id
|
left join sd.customer c on c.id = o.customer_id
|
left join sd.basic_glass_type bgt on bgt.type_id = pt.type_id
|
where fc.process_id = #{processId}
|
and fc.technology_number = #{technologyNumber}
|
group by od.order_number, od.width, od.height
|
</select>
|
|
|
</mapper>
|