From eef4b7ca66cc2fb34d2d2cb0a4a8643f2bb0f838 Mon Sep 17 00:00:00 2001
From: guoyuji <guoyujie@ng.com>
Date: 星期五, 18 十月 2024 13:44:06 +0800
Subject: [PATCH] Merge branch 'master' of http://10.153.19.25:10101/r/ERP_override
---
north-glass-erp/src/main/resources/mapper/pp/FolwCard.xml | 841 ++++++++++++++++++++++++++++++++++++++++++++++++++-----
1 files changed, 752 insertions(+), 89 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 9fc3d0f..4e86833 100644
--- a/north-glass-erp/src/main/resources/mapper/pp/FolwCard.xml
+++ b/north-glass-erp/src/main/resources/mapper/pp/FolwCard.xml
@@ -10,6 +10,7 @@
<result column="founder" property="founder"/>
<result column="create_time" property="createTime"/>
<result column="layout_status" property="layoutStatus"/>
+ <result column="merge" property="merge"/>
<!--鎺ユ敹鍏朵粬澶栭敭瀹炰綋绫绘暟鎹�-->
<association property="order" javaType="com.example.erp.entity.sd.Order">
<result column="project" property="project"/>
@@ -64,8 +65,9 @@
a.founder,
c.processing_note,
b.customer_name,
- if(a.layout_status=0,'涓嶅彲鎺掔増',if(a.layout_status=1,'鍙帓鐗�','宸叉帓鐗�')) as layout_status
- from (select id,order_id,process_id,order_number, quantity,founder,layout_status,create_time from flow_card
+ if(a.layout_status=0,'涓嶅彲鎺掔増',if(a.layout_status=1,'鍙帓鐗�','宸叉帓鐗�')) as layout_status,
+ a.merge
+ from (select id,order_id,process_id,order_number, quantity,founder,layout_status,create_time,merge from flow_card
group by process_Id,order_number) as a left join sd.`order` as b on a.order_Id=b.order_id
left join sd.order_detail as c on a.order_Id=c.order_id and a.order_Number=c.order_number
where a.create_time between #{selectTime1} and #{selectTime2}
@@ -93,6 +95,9 @@
</if>
<if test="flowCard.layoutStatus != null and flowCard.layoutStatus != '' and flowCard.layoutStatus == '宸叉帓鐗�'">
and a.layout_status regexp 2
+ </if>
+ <if test="flowCard.merge != null">
+ and a.merge regexp #{flowCard.merge}
</if>
<if test="flowCard.order.customerName != null and flowCard.order.customerName!= ''">
and b.customer_name regexp #{flowCard.order.customerName}
@@ -134,6 +139,9 @@
</if>
<if test="flowCard.layoutStatus != null and flowCard.layoutStatus != '' and flowCard.layoutStatus == '宸叉帓鐗�'">
and a.layout_status regexp 2
+ </if>
+ <if test="flowCard.merge != null">
+ and a.merge regexp #{flowCard.merge}
</if>
ORDER BY a.id desc
@@ -195,15 +203,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
@@ -217,7 +227,7 @@
sd.order_glass_detail as ogd left join flow_card as fc
on ogd.order_id = fc.order_id and ogd.order_number = fc.order_number
set ogd.splitting_status=0
- where ogd.order_id = #{orderId}
+ where fc.process_id = #{processId}
</update>
@@ -225,7 +235,7 @@
<update id="deleteFlowCardMp">
delete
from flow_card as fc
- where fc.order_id = left(#{processId}, 10)
+ where fc.process_id = #{processId}
</update>
<!-- 鍒嗘灦鏂板鏄庣粏鏌ヨ-->
@@ -241,12 +251,14 @@
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,
+ ifnull(p.thickness,'') as thickness,
od.weight,
od.remarks,
+ od.processing_note,
+ ifnull(od.bend_radius,'') as bend_radius,
ods.S01,
ods.S02,
ods.S03,
@@ -266,6 +278,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
@@ -442,7 +456,7 @@
<delete id="deleteReportingWork">
delete
from sd.order_process_detail
- where order_id = left(#{processId}, 10)
+ where process_id = #{processId}
</delete>
<select id="selectPrintFlowCardMp">
@@ -458,7 +472,7 @@
where create_time between #{selectTime1} and #{selectTime2}
and position(#{orderId} in order_id)
and position(#{project} in project)
- and processing_card = 2
+ and processing_card >0
order by create_time desc
</select>
@@ -478,10 +492,10 @@
o.customer_name,
o.project,
ogdss.technology_number,
- ogdss.concatenated_glass_child,
+ 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,
@@ -500,13 +514,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) 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
+ GROUP BY fc.process_id, ogdss.concatenated_glass_child, ogdss.processed_part
order by fc.process_id, ogdss.technology_number)
UNION
@@ -519,8 +535,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,
@@ -539,7 +555,7 @@
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,
+ 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}
@@ -558,7 +574,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,
@@ -577,7 +593,7 @@
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,
+ 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
@@ -593,7 +609,8 @@
order by fc.process_id)) AS combined_results
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">
@@ -610,7 +627,8 @@
sum(od.weight) as weight,
#{technologyNumber} as technologyNumber,
concat(fc.process_id, '/', #{technologyNumber}) as processIdNumber,
- concat('瀵瑰簲鎴戝徃鍗曞彿',o.batch) AS otherRemarks
+ concat('瀵瑰簲鎴戝徃鍗曞彿', o.batch) AS otherRemarks,
+ '' as qrcode
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
@@ -636,15 +654,15 @@
<select id="getDetailList">
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,
+ concat(round(ogd.child_width), "*", round(ogd.child_height)) as child_width,
+ fc.quantity,
+ round(ogd.total_area, 2) as total_area,
od.perimeter,
- od.bend_radius,
- concat(IFNULL(od.processing_note,''), IFNULL(od.remarks,'')) as remarks,
+ if(od.shape=2,JSON_UNQUOTE(JSON_EXTRACT(od.other_columns, '$.S04')),od.bend_radius) as 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,
+ round(ogd.child_width) as width,
+ round(ogd.child_height) as height,
pd.separation,
fc.technology_number
from flow_card as fc
@@ -654,10 +672,14 @@
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 flow_card_sort as fcs
+ on fcs.process_id = fc.process_id and fcs.order_number = fc.order_number and
+ fcs.technology_number = fc.technology_number
+ and fcs.process = #{process}
where fc.process_id = #{processId}
and position(fc.technology_number in #{technologyNumber})
group by fc.process_id, fc.order_number
- order by IF(sort != NULL || sort != '', sort, fc.order_number)
+ order by IF(fcs.sort != NULL or fcs.sort != '', fcs.sort, fc.order_number)
</select>
<select id="getProcessList">
@@ -697,7 +719,42 @@
opd.stock_id,
od.quantity,
od.other_columns,
- od.bend_radius
+ od.bend_radius,
+ od.order_number as heat_layout_id,
+ a.id as heat_layout_sort
+ from pp.optimize_detail opd
+ left join sd.`order` o on SUBSTR(opd.process_id, 1, 10) = o.order_id
+ left join sd.order_detail od
+ on SUBSTR(opd.process_id, 1, 10) = od.order_id and opd.order_sort = od.order_number
+ left join sd.order_glass_detail ogd
+ on SUBSTR(opd.process_id, 1, 10) = ogd.order_id and opd.order_sort = ogd.order_number and
+ opd.layer = ogd.technology_number
+ left join sd.product p on od.product_id = p.id
+ left join sd.basic_glass_type e on e.type_id = p.type_id
+ left join sd.customer c on c.id = o.customer_id
+ left join
+ (select (@row_number := @row_number + 1) as id,process_id as process_id from (select process_id from pp.optimize_detail tt where project_no =#{projectNo} group by process_id) tt,(select @row_number := 0) as t) a
+ on a.process_id=opd.process_id
+ where opd.project_no = #{projectNo}
+ order by opd.stock_id,opd.polys_id
+ </select>
+
+ <select id="getPrintLabel2">
+ select o.order_id,
+ c.customer_abbreviation as customer_name,
+ o.project,
+ od.building_number,
+ od.processing_note,
+ ogd.child_width as width,
+ ogd.child_height as height,
+ ogd.glass_child,
+ ogd.process,
+ e.type_name,
+ od.quantity,
+ od.other_columns,
+ od.bend_radius,
+ opd.heat_layout_id,
+ opd.heat_layout_sort
from pp.optimize_detail opd
left join sd.`order` o on SUBSTR(opd.process_id, 1, 10) = o.order_id
left join sd.order_detail od
@@ -709,7 +766,7 @@
left join sd.basic_glass_type e on e.type_id = p.type_id
left join sd.customer c on c.id = o.customer_id
where opd.project_no = #{projectNo}
- order by opd.stock_id
+ order by opd.heat_layout_id, opd.heat_layout_sort desc
</select>
<select id="getPrintLabel1">
@@ -718,7 +775,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,
@@ -744,6 +801,43 @@
group by od.order_number, od.width, od.height
</select>
+ <select id="getPrintLabelDetail">
+ select o.order_id,
+ o.project,
+ o.customer_id,
+ ogd.child_width as width,
+ ogd.child_height as height,
+ fc.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>
+ and fc.process_id = #{flowCard.processId}
+ and fc.order_number = #{flowCard.orderNumber}
+ <if test="flowCard.technologyNumber != null and flowCard.technologyNumber != ''">
+ and fc.technology_number = #{flowCard.technologyNumber}
+ </if>
+ </where>
+ group by od.order_number,fc.technology_number, od.width, od.height
+ </select>
+
<select id="printFlowCardDetailsMp">
SELECT fc.process_id,
fc.order_number,
@@ -753,15 +847,24 @@
ogd.child_height,
fc.quantity,
ROUND(ogd.child_width * ogd.child_height * fc.quantity / 1000000, 2) as area,
- fc.sort,
- ogd.glass_child
+ ifnull(fcs.sort, '') as sort,
+ ogd.glass_child,
+ #{process} as process,
+ JSON_UNQUOTE(JSON_EXTRACT(od.other_columns, '$.S01')) AS glassNumber,
+ od.bend_radius
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 flow_card_sort as fcs
+ on fcs.process_id = fc.process_id and fcs.order_number = fc.order_number and
+ fcs.technology_number = fc.technology_number
+ and fcs.process = #{process}
+ left join sd.order_detail as od on od.order_id = fc.order_id and od.order_number = fc.order_number
where fc.process_id = #{processId}
and position(fc.technology_number in #{technologyNumber})
- order by IF(fc.sort != NULL || fc.sort != '', fc.sort, fc.order_number)
+ GROUP BY fc.process_id,fc.order_number,fc.technology_number
+ order by IF(fcs.sort != NULL or fcs.sort != '', fcs.sort, fc.order_number)
</select>
<update id="printSortMp">
@@ -834,13 +937,13 @@
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,
od.product_name as productName,
od.edging_type as edgingType,
- p.remarks,
+ od.remarks,
c.customer_abbreviation as customerAbbreviation,
p.product_abbreviation as productAbbreviation,
fc.process_id as processId,
@@ -873,7 +976,7 @@
where fc.process_id = #{processId}
and fc.technology_number = #{technologyNumber}
group by od.order_number, width, height
- order by IF(fc.sort != NULL || fc.sort != '', fc.sort, fc.order_number)
+ order by fc.process_id
</select>
<select id="selectReplenishPrintMp">
@@ -896,7 +999,10 @@
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,
+ pl.patch_id
+
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
@@ -966,7 +1072,7 @@
and pl.technology_number = #{technologyNumber}
and pl.reporting_work_id = #{reportingWorkId}
group by od.order_number, width, height
- order by IF(fc.sort != NULL || fc.sort != '', fc.sort, pl.order_sort)
+ order by IF(fc.sort != NULL or fc.sort != '', fc.sort, pl.order_sort)
</select>
<select id="getGlassNumber">
@@ -974,8 +1080,9 @@
from sd.order_detail as od
left join flow_card as fc on od.order_id = fc.order_id and od.order_number = fc.order_number
where fc.process_id = #{processId}
- and fc.technology_number = #{technologyNumber}
- order by IF(fc.sort != NULL || fc.sort != '', fc.sort, fc.order_number)
+ and POSITION(fc.technology_number in #{technologyNumber})
+ GROUP BY other_columns
+ order by IF(fc.sort != NULL or fc.sort != '', fc.sort, fc.order_number)
</select>
<update id="updatePrintStateMp">
@@ -995,13 +1102,15 @@
fc.quantity,
ROUND(ogd.child_width * ogd.child_height * fc.quantity / 1000000, 2) as area,
fc.sort,
- ogd.process
+ ogd.process,
+ JSON_UNQUOTE(JSON_EXTRACT(od.other_columns, '$.S01')) AS glassNumber
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 fc.order_id = od.order_id and fc.order_number = od.order_number
where fc.order_id = #{orderId}
- order by IF(fc.sort != NULL || fc.sort != '', fc.sort, fc.technology_number)
+ order by IF(fc.sort != NULL or fc.sort != '', fc.sort, fc.technology_number)
</select>
<update id="printOrderSortMp">
@@ -1025,7 +1134,8 @@
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,
+ 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
@@ -1075,7 +1185,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
@@ -1086,21 +1197,21 @@
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>
<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,
+ concat(round(ogd.child_width), "*", round(ogd.child_height)) as child_width,
+ fc.quantity,
+ round(ogd.total_area, 2) as total_area,
od.perimeter,
- od.bend_radius,
- concat(IFNULL(od.processing_note,''), IFNULL(od.remarks,'')) as remarks,
+ if(od.shape=2,JSON_UNQUOTE(JSON_EXTRACT(od.other_columns, '$.S04')),od.bend_radius) as 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,
+ round(ogd.child_width) as width,
+ round(ogd.child_height) as height,
pd.separation,
fc.technology_number
from flow_card as fc
@@ -1110,10 +1221,14 @@
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 flow_card_sort as fcs
+ on fcs.process_id = fc.process_id and fcs.order_number = fc.order_number and
+ fcs.technology_number = fc.technology_number
+ and fcs.process = #{process}
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)
+ order by IF(fcs.sort != NULL or fcs.sort != '', fcs.sort, fc.order_number)
</select>
<select id="getPrimaryListMergeRefund">
@@ -1160,17 +1275,22 @@
<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,
+ concat(round(ogd.child_width), "*", round(ogd.child_height)) as child_width,
+ sum(pl.patch_num) as quantity,
+ round(ogd.total_area, 2) as total_area,
od.perimeter,
- od.bend_radius,
- concat(IFNULL(od.processing_note,''), IFNULL(od.remarks,'')) as remarks,
+ if(od.shape=2,JSON_UNQUOTE(JSON_EXTRACT(od.other_columns, '$.S04')),od.bend_radius) as 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,
+ round(ogd.child_width) as width,
+ round(ogd.child_height) as height,
pd.separation,
- fc.technology_number
+ fc.technology_number,
+ pl.patch_type,
+ pl.patch_reason,
+ pl.patch_processes,
+ pl.responsible_team,
+ pl.responsible_personnel
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
@@ -1184,8 +1304,9 @@
and fc.order_number = #{orderNumber}
and position(fc.technology_number in #{technologyNumber})
and pl.reporting_work_id = #{reportingWorkId}
- group by fc.process_id, fc.order_number, fc.technology_number
- order by IF(sort != NULL || sort != '', sort, fc.order_number)
+ and pl.patch_reason = #{patchReason}
+ group by fc.process_id, fc.order_number, fc.technology_number,pl.id
+ order by IF(sort != NULL and sort != '', sort, fc.order_number)
</select>
<select id="getPrimaryListRefund">
@@ -1205,7 +1326,11 @@
dd.breakage_type,
dd.breakage_reason,
dd.responsible_process,
- dd.responsible_team
+ dd.responsible_team,
+ concat('瀵瑰簲鎴戝徃鍗曞彿', o.batch) AS otherRemarks,
+ dd.responsible_personnel,
+ #{mergeTechnologyNumber} as mergeTechnologyNumber,
+ pl.patch_id
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
@@ -1234,21 +1359,22 @@
where fc.process_id = #{processId}
and fc.order_number = #{orderNumber}
and fc.technology_number = #{technologyNumber}
- and rw.reporting_work_id = #{reportingWorkId}
+ and pl.reporting_work_id = #{reportingWorkId}
+ and dd.breakage_reason = #{patchReason}
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,
+ 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(IFNULL(od.processing_note,''), IFNULL(od.remarks,'')) as remarks,
+ 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,
+ round(ogd.child_width) as width,
+ round(ogd.child_height) as height,
pd.separation,
fc.technology_number
from flow_card as fc
@@ -1265,7 +1391,7 @@
and position(fc.technology_number in #{technologyNumber})
and pl.reporting_work_id = #{reportingWorkId}
group by fc.process_id, fc.order_number, fc.technology_number
- order by IF(sort != NULL || sort != '', sort, fc.order_number)
+ order by IF(sort != NULL and sort != '', sort, fc.order_number)
</select>
<select id="getPrimaryListRework">
@@ -1281,7 +1407,14 @@
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,
+ concat('瀵瑰簲鎴戝徃鍗曞彿', o.batch) AS otherRemarks,
+ dd.responsible_personnel,
+ pl.rework_id as patch_id
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
@@ -1303,9 +1436,14 @@
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
+ 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>
@@ -1315,13 +1453,19 @@
(pl.rework_num) as quantity,
round(ogd.total_area, 2) as total_area,
od.perimeter,
- od.bend_radius,
+ if(od.shape=2,JSON_UNQUOTE(JSON_EXTRACT(od.other_columns, '$.S04')),od.bend_radius) as 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
+ fc.technology_number,
+ pl.rework_type as patch_type,
+ pl.rework_reason as patch_reason,
+ pl.rework_processes as patch_processes,
+ pl.responsible_team,
+ pl.rework_team,
+ pl.responsible_personnel
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
@@ -1336,7 +1480,7 @@
and position(fc.technology_number in #{technologyNumber})
and pl.reporting_work_id = #{reportingWorkId}
group by fc.process_id, fc.order_number, fc.technology_number
- order by IF(sort != NULL || sort != '', sort, fc.order_number)
+ order by IF(sort != NULL and sort != '', sort, fc.order_number)
</select>
<select id="getPrimaryListMergeRework">
@@ -1408,7 +1552,7 @@
and position(fc.technology_number in #{technologyNumber})
and pl.reporting_work_id = #{reportingWorkId}
group by fc.process_id, fc.order_number, fc.technology_number
- order by IF(sort != NULL || sort != '', sort, fc.order_number)
+ order by IF(sort != NULL or sort != '', sort, fc.order_number)
</select>
<select id="getPrintCustomDataSemi">
@@ -1431,13 +1575,13 @@
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,
od.product_name as productName,
od.edging_type as edgingType,
- p.remarks,
+ od.remarks,
c.customer_abbreviation as customerAbbreviation,
p.product_abbreviation as productAbbreviation,
CONCAT(fc.process_id, '/', fc.technology_number) as processId,
@@ -1465,10 +1609,14 @@
left join sd.order_glass_detail ogd
on ogd.order_id = o.order_id and ogd.order_number = od.order_number and
ogd.technology_number = fc.technology_number
+ left join flow_card_sort as fcs
+ on fcs.process_id = fc.process_id and fcs.order_number = fc.order_number and
+ fcs.technology_number = fc.technology_number
+ and fcs.process = #{process}
where fc.process_id = #{processId}
- and fc.technology_number = #{technologyNumber}
- group by od.order_number, ogd.technology_number, ogd.child_width, ogd.child_height
- order by IF(fc.sort != NULL || fc.sort != '', fc.sort, fc.order_number)
+ and position(fc.technology_number in #{technologyNumber})
+ 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>
<select id="selectPrintNotMp">
@@ -1480,8 +1628,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,
@@ -1676,6 +1824,521 @@
and pl.technology_number = #{technologyNumber}
and pl.reporting_work_id = #{reportingWorkId}
group by od.order_number, width, height
- order by IF(fc.sort != NULL || fc.sort != '', fc.sort, pl.order_sort)
+ order by IF(fc.sort != NULL or fc.sort != '', fc.sort, pl.order_sort)
</select>
+
+ <select id="selectPrintAllMp">
+ select *
+ from ((select fc.id,
+ fc.order_id,
+ fc.process_id,
+ o.customer_name,
+ o.project,
+ ogd.technology_number,
+ ogd.glass_address,
+ 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,
+ 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 != ""
+ GROUP BY order_id, process_id, technology_number, process
+ order by order_id, process_id, length(technology_number)
+ </select>
+
+ <insert id="printAddSortMp">
+ insert into flow_card_sort (process_id, order_number, technology_number, process, sort, create_time)
+ values (#{processId}, #{orderNumber}, #{technologyNumber}, #{process}, #{sort}, now())
+ </insert>
+ <select id="printAddSortCountMp">
+ select count(*)
+ from flow_card_sort
+ where process_id = #{processId}
+ and order_number = #{orderNumber}
+ and technology_number = #{technologyNumber}
+ and process = #{process}
+ </select>
+ <update id="printUpdateSortMp">
+ update flow_card_sort
+ set sort = #{sort}
+ where process_id = #{processId}
+ and order_number = #{orderNumber}
+ 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,
+ fc.technology_number as qrcode
+ 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>
+
+ <select id="selectPrintDetailsMp">
+ select fc.id,
+ fc.order_id,
+ fc.process_id,
+ o.customer_name,
+ o.project,
+ /*ogd.technology_number,*/
+ ogd.glass_address,
+ (fc.quantity) as quantity,
+ round((ogd.child_width * ogd.child_height * fc.quantity / 1000000), 2) 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,
+ JSON_UNQUOTE(JSON_EXTRACT(od.other_columns, '$.S01')) AS glassNumber,
+ od.order_number
+ 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, od.order_number
+ order by fc.process_id, od.order_number
+ </select>
+
+ <select id="selectPrintDetailsMp1">
+ select fc.id,
+ fc.order_id,
+ fc.process_id,
+ o.customer_name,
+ o.project,
+ ogd.technology_number,
+ ogd.glass_address,
+ (fc.quantity) as quantity,
+ round((ogd.child_width * ogd.child_height * fc.quantity / 1000000), 2) 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,
+ JSON_UNQUOTE(JSON_EXTRACT(od.other_columns, '$.S01')) AS glassNumber,
+ od.order_number
+ 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, od.order_number,fc.technology_number
+ order by fc.process_id, od.order_number,fc.technology_number
+ </select>
+
+ <select id="getPrintCustomDataDetails">
+ select o.order_id as orderId,
+ project,
+ customer_id as customerId,
+ o.customer_name as customerName,
+ order_type as orderType,
+ order_classify as orderClassify,
+ batch,
+ o.icon,
+ pack_type as packType,
+ delivery_date as deliveryDate,
+ al_type as alType,
+ money,
+ contract_id as contractId,
+ customer_batch customerBatch,
+ contacts,
+ delivery_address as deliveryAddress,
+ od.processing_note as processingNote,
+ width,
+ height,
+ fc.quantity,
+ od.order_number as orderNumber,
+ fc.technology_number as technologyNumber,
+ od.building_number as buildingNumber,
+ od.product_name as productName,
+ od.edging_type as edgingType,
+ od.remarks,
+ c.customer_abbreviation as customerAbbreviation,
+ 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,
+ od.bend_radius as bendRadius,
+ od.other_columns,
+ ogd.glass_child as glassChild,
+ ogd.glass_address as glassAddress,
+ JSON_UNQUOTE(JSON_EXTRACT(pd.separation, '$.color')) AS color,
+ '鏂囨湰' as custom1,
+ '鏂囨湰' as custom2,
+ '鏂囨湰' as custom3,
+ '鏂囨湰' as custom4,
+ '鏂囨湰' as custom5,
+ od.quantity
+ 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 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.order_number = #{orderNumber}
+ group by od.order_number, width, height
+ order by fc.process_id
+ </select>
+
+ <select id="getPrintCustomDataProjectNo">
+ select
+ o.order_id as orderId,
+ project,
+ customer_id as customerId,
+ o.customer_name as customerName,
+ order_type as orderType,
+ order_classify as orderClassify,
+ batch,
+ o.icon,
+ pack_type as packType,
+ delivery_date as deliveryDate,
+ al_type as alType,
+ money,
+ contract_id as contractId,
+ customer_batch customerBatch,
+ contacts,
+ delivery_address as deliveryAddress,
+ od.processing_note as processingNote,
+ od.width,
+ od.height,
+ fc.quantity,
+ od.order_number as orderNumber,
+ fc.technology_number as technologyNumber,
+ od.building_number as buildingNumber,
+ od.product_name as productName,
+ od.edging_type as edgingType,
+ od.remarks,
+ c.customer_abbreviation as customerAbbreviation,
+ 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,
+ od.bend_radius as bendRadius,
+ od.other_columns,
+ JSON_UNQUOTE(JSON_EXTRACT(pd.separation, '$.color')) AS color,
+ '鏂囨湰' as custom1,
+ '鏂囨湰' as custom2,
+ '鏂囨湰' as custom3,
+ '鏂囨湰' as custom4,
+ '鏂囨湰' as custom5
+ from optimize_detail as opt
+ left join flow_card as fc on opt.project_no=fc.project_no and opt.process_id=fc.process_id and opt.layer=fc.technology_number and opt.order_sort=fc.order_number
+ left join sd.order as o on o.order_id=fc.order_id
+ left join sd.order_detail as od on fc.order_id = od.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 and
+ pd.glass_sort = fc.technology_number
+ where opt.project_no=#{projectNo}
+ order by opt.stock_id,opt.polys_id
+ </select>
+
+ <select id="selectUserMp">
+ select role_id
+ from erp_user_info.`user` as u
+ left join erp_user_info.user_role as ur on u.id = ur.user_id
+ where u.login_name = #{userId}
+ </select>
+
+ <select id="selectSortTableMp">
+ select fcs.sort,
+ process_id,
+ fcs.order_number,
+ fcs.technology_number,
+ JSON_UNQUOTE(JSON_EXTRACT(od.other_columns, '$.S01')) AS glassNumber,
+ fcs.process
+ from flow_card_sort as fcs
+ left join sd.order_detail as od
+ on od.order_id = left(fcs.process_id, 10) and od.order_number = fcs.order_number
+ where LEFT(fcs.process_id, 10) = #{orderId}
+ GROUP BY process_id,
+ fcs.order_number,
+ fcs.technology_number,
+ fcs.process
+ ORDER BY fcs.sort,process_id,
+ fcs.order_number,
+ fcs.technology_number
+ </select>
+
+ <select id="countFlowCard">
+ select count(distinct process_id) from flow_card where order_id = #{orderId}
+ </select>
+
+ <select id="remakList">
+ SELECT
+ ifnull(JSON_UNQUOTE(JSON_EXTRACT(other_columns, '$.S01')),'') AS S01,
+ ifnull(JSON_UNQUOTE(JSON_EXTRACT(other_columns, '$.S04')),'') AS S02,
+ ifnull(JSON_UNQUOTE(JSON_EXTRACT(other_columns, '$.S05')),'') AS S03,
+ ifnull(JSON_UNQUOTE(JSON_EXTRACT(other_columns, '$.S06')),'') AS S04,
+ ifnull(JSON_UNQUOTE(JSON_EXTRACT(other_columns, '$.S07')),'') AS S05
+ FROM flow_card as fc left join sd.order_detail as od on fc.order_id = od.order_id
+ and fc.order_number = od.order_number
+ WHERE fc.process_id=#{processId}
+ GROUP BY fc.order_number
+ </select>
+
+ <select id="selectMaxFlowCard">
+ select ifnull((select fc.process_id
+ from sd.order_detail as od
+ left join sd.order_glass_detail 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.production_id = #{productionId}
+ GROUP BY od.order_number
+ order by fc.process_id desc LIMIT 1),'') as process_id
+ </select>
+
+ <select id="selectFlowCardMerge">
+ select *,GROUP_CONCAT(DISTINCT fc.technology_number) as count1,count(DISTINCT fc.technology_number) as count2
+ 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 = ogd.order_id and od.order_number = ogd.order_number
+ where fc.process_id = #{processId}
+ GROUP BY fc.order_id, fc.process_id, ogd.glass_child
+ </select>
+
+ <update id="updateFlowCardMerge">
+ update pp.flow_card fc set fc.merge=#{index}
+ where fc.process_id = #{processId} and fc.technology_number in
+ <foreach item="technologyNumber" collection="technologyNumbers" open="(" separator="," close=")">
+ #{technologyNumber}
+ </foreach>
+ </update>
+
+ <delete id="deleteflowCardSort">
+ delete from flow_card_sort where process_id = #{processId}
+ </delete>
+
+ <select id="getPrintProjectDetailsMp">
+ SELECT opd.project_no,opd.stock_id,opl.glass_count FROM optimize_detail as opd left join optimize_layout as opl on opl.project_no=opd.project_no and opl.stock_id=opd.stock_id
+ where opd.project_no=#{projectNo}
+ GROUP BY opd.stock_id
+ ORDER BY opd.stock_id
+ </select>
+
+ <select id="getPrintCustomDataProjectDetail">
+ select
+ o.order_id as orderId,
+ project,
+ customer_id as customerId,
+ o.customer_name as customerName,
+ order_type as orderType,
+ order_classify as orderClassify,
+ batch,
+ o.icon,
+ pack_type as packType,
+ delivery_date as deliveryDate,
+ al_type as alType,
+ money,
+ contract_id as contractId,
+ customer_batch customerBatch,
+ contacts,
+ delivery_address as deliveryAddress,
+ od.processing_note as processingNote,
+ od.width,
+ od.height,
+ fc.quantity,
+ od.order_number as orderNumber,
+ fc.technology_number as technologyNumber,
+ od.building_number as buildingNumber,
+ od.product_name as productName,
+ od.edging_type as edgingType,
+ od.remarks,
+ c.customer_abbreviation as customerAbbreviation,
+ 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,
+ od.bend_radius as bendRadius,
+ od.other_columns,
+ JSON_UNQUOTE(JSON_EXTRACT(pd.separation, '$.color')) AS color,
+ '鏂囨湰' as custom1,
+ '鏂囨湰' as custom2,
+ '鏂囨湰' as custom3,
+ '鏂囨湰' as custom4,
+ '鏂囨湰' as custom5
+ from optimize_detail as opt
+ left join flow_card as fc on opt.project_no=fc.project_no and opt.process_id=fc.process_id and opt.layer=fc.technology_number and opt.order_sort=fc.order_number
+ left join sd.order as o on o.order_id=fc.order_id
+ left join sd.order_detail as od on fc.order_id = od.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 and
+ pd.glass_sort = fc.technology_number
+ where opt.project_no=#{projectNo} and opt.stock_id=#{stockId}
+ order by opt.stock_id,opt.polys_id
+ </select>
+
</mapper>
\ No newline at end of file
--
Gitblit v1.8.0