From c27a685ed122e3f2934eba2c3d77bc2e1312a4cf Mon Sep 17 00:00:00 2001
From: 你好啊 <1536384743@qq.com>
Date: 星期五, 09 八月 2024 11:19:41 +0800
Subject: [PATCH] 修改当传入数据为空时,该=改null 为0
---
north-glass-erp/src/main/resources/mapper/pp/FolwCard.xml | 171 +++++++++++++++++++++++++++++++++++++++++++++++++++++---
1 files changed, 160 insertions(+), 11 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..edb8a16 100644
--- a/north-glass-erp/src/main/resources/mapper/pp/FolwCard.xml
+++ b/north-glass-erp/src/main/resources/mapper/pp/FolwCard.xml
@@ -472,13 +472,15 @@
<select id="selectPrintMp">
select *
- from ((select fc.id,
+ from (
+
+ (select fc.id,
fc.order_id,
fc.process_id,
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,
@@ -503,10 +505,10 @@
process AS processed_part
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
@@ -593,7 +595,7 @@
order by fc.process_id)) AS combined_results
where process is not null
and process != ""
-
+ GROUP BY order_id,process_id,technology_number,process
</select>
<select id="getPrimaryList">
@@ -753,14 +755,18 @@
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
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}
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)
</select>
@@ -995,11 +1001,13 @@
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)
</select>
@@ -1110,10 +1118,12 @@
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 || fcs.sort != '', fcs.sort, fc.order_number)
</select>
<select id="getPrimaryListMergeRefund">
@@ -1465,10 +1475,12 @@
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}
+ and position(fc.technology_number in #{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)
+ order by IF(fcs.sort != NULL || fcs.sort != '', fcs.sort, fc.order_number)
</select>
<select id="selectPrintNotMp">
@@ -1678,4 +1690,141 @@
group by od.order_number, width, height
order by IF(fc.sort != NULL || 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(od.quantity) as quantity,
+ sum(ogd.total_area) 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
+ </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>
</mapper>
\ No newline at end of file
--
Gitblit v1.8.0