From d7b2a85f3df48d65f78672d9e1de6be177e78759 Mon Sep 17 00:00:00 2001
From: 廖井涛 <2265517004@qq.com>
Date: 星期四, 11 七月 2024 10:57:35 +0800
Subject: [PATCH] 修改返工数据查询
---
north-glass-erp/src/main/resources/mapper/pp/FolwCard.xml | 92 ++++++++++++++++++++++++++++++++++++++++++++--
1 files changed, 88 insertions(+), 4 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 df699b9..7ebb414 100644
--- a/north-glass-erp/src/main/resources/mapper/pp/FolwCard.xml
+++ b/north-glass-erp/src/main/resources/mapper/pp/FolwCard.xml
@@ -63,6 +63,7 @@
sum(c.compute_gross_area) as compute_gross_area,
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
group by process_Id,order_number) as a left join sd.`order` as b on a.order_Id=b.order_id
@@ -93,7 +94,9 @@
<if test="flowCard.layoutStatus != null and flowCard.layoutStatus != '' and flowCard.layoutStatus == '宸叉帓鐗�'">
and a.layout_status regexp 2
</if>
-
+ <if test="flowCard.order.customerName != null and flowCard.order.customerName!= ''">
+ and b.customer_name regexp #{flowCard.order.customerName}
+ </if>
group by a.process_Id
ORDER BY a.id desc
limit #{offset},#{pageSize};
@@ -495,6 +498,17 @@
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 fc.technology_number = #{technologyNumber}
group by fc.process_id, fc.technology_number
@@ -507,12 +521,17 @@
round(ogd.total_area, 2) as total_area,
od.perimeter,
od.bend_radius,
- concat(od.processing_note,od.remarks) as remarks
+ 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
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.product_detail as pd on pd.prod_id=od.product_id and pd.glass_sort=ogd.technology_number
where fc.process_id = #{processId}
and fc.technology_number = #{technologyNumber}
group by fc.process_id, fc.order_number
@@ -551,6 +570,7 @@
od.width,
od.height,
ogd.glass_child,
+ ogd.process,
e.type_name,
opd.stock_id,
od.quantity,
@@ -560,7 +580,7 @@
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
+ 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
where opd.project_no = #{projectNo}
@@ -577,6 +597,7 @@
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,
@@ -788,7 +809,70 @@
<update id="updatePrintStateMp">
update pp.flow_card
- set print_status = #{printState}
+ set print_status = print_status+1
where process_id = #{processId} and technology_number = #{technologyNumber}
</update>
+
+ <select id="printFlowCardOrderSortMp">
+ SELECT fc.process_id,
+ fc.order_number,
+ fc.technology_number,
+ ogd.glass_address,
+ ogd.child_width,
+ ogd.child_height,
+ fc.quantity,
+ ROUND(ogd.child_width * ogd.child_height * fc.quantity / 1000000, 2) as area,
+ fc.sort
+ 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
+ where fc.order_id=#{orderId}
+ order by IF(fc.sort != NULL || fc.sort != '', fc.sort, fc.technology_number)
+ </select>
+
+ <update id="printOrderSortMp">
+ update flow_card
+ set sort = #{sort}
+ where process_id = #{processId}
+ and order_number = #{orderNumber}
+ and technology_number = #{technologyNumber}
+ </update>
+
+ <select id="getPrimaryListMerge">
+ select o.customer_name,
+ o.project,
+ ogd.process,
+ od.edging_type,
+ ogdc.concatenated_glass_child 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
+ 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}) and ogdc.concatenated_glass_child is NOT null
+ group by fc.process_id, fc.technology_number
+ </select>
</mapper>
\ No newline at end of file
--
Gitblit v1.8.0