From 7104751e2f26872d4891d01d42ee88cf19715d01 Mon Sep 17 00:00:00 2001
From: guoyujie <guoyujie@ng.com>
Date: 星期二, 08 七月 2025 17:46:01 +0800
Subject: [PATCH] Merge branch 'master' of http://bore.pub:10439/r/ERP_override
---
north-glass-erp/src/main/resources/mapper/pp/FolwCard.xml | 252 +++++++++++++++++++++++++++++++++++++++++++++++--
1 files changed, 238 insertions(+), 14 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 cf1d6e7..f3aca7b 100644
--- a/north-glass-erp/src/main/resources/mapper/pp/FolwCard.xml
+++ b/north-glass-erp/src/main/resources/mapper/pp/FolwCard.xml
@@ -62,11 +62,11 @@
c.product_name,
b.project,
sum(a.quantity) as quantity,
- sum(a.quantity) * sum(c.area) as compute_gross_area,
+ sum(a.quantity) * c.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,
+ layout_status as layout_status,
a.merge,
a.rack,
b.batch
@@ -213,7 +213,7 @@
ogd.production_id,
od.product_id,
od.product_name,
- ROUND(SUM(od.quantity) - IFNULL(SUM(fc.quantity) / fc.layers_number, 0)) AS quantity,
+ ROUND(SUM(od.quantity) - IFNULL(SUM(fc.quantity), 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
@@ -614,10 +614,11 @@
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
+ SUBSTRING(process, LOCATE(bd.basic_name, process)) AS processed_part
from sd.order_glass_detail as ogds
+ left join sd.basic_data as bd on bd.nickname='stepC'
where ogds.order_id = #{orderId}
- and LOCATE('澶硅兌', ogds.process) > 0
+ and LOCATE(bd.basic_name, 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}
@@ -652,13 +653,14 @@
GROUP_CONCAT(pds.glass_sort SEPARATOR '') AS technology_number,
ogds.glass_child,
GROUP_CONCAT(ogds.glass_child SEPARATOR '+') AS concatenated_glass_child,
- SUBSTRING(ogds.process, LOCATE('涓┖', ogds.process)) AS processed_part
+ SUBSTRING(ogds.process, LOCATE(bd.basic_name, ogds.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
+ left join sd.basic_data as bd on bd.nickname='stepD'
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
@@ -781,7 +783,28 @@
where fc.process_id = #{processId}
and position(fc.technology_number in #{technologyNumber})
group by fc.process_id, fc.order_number
- order by IF(fcs.sort != NULL or fcs.sort != '', fcs.sort, fc.order_number)
+ <choose>
+ <!-- landingSequence != 1 鏃讹紝浼樺厛鎸� landing_sequence 鍊掑簭 -->
+ <when test="landingSequence != 1">
+ ORDER BY landing_sequence DESC
+ </when>
+ <!-- flashback = 1 鏃舵搴� -->
+ <when test="flashback == 1">
+ ORDER BY
+ CASE
+ WHEN fcs.sort IS NOT NULL AND fcs.sort <> '' THEN fcs.sort
+ ELSE fc.order_number
+ END ASC
+ </when>
+ <!-- flashback != 1 鏃跺�掑簭 -->
+ <otherwise>
+ ORDER BY
+ CASE
+ WHEN fcs.sort IS NOT NULL AND fcs.sort <> '' THEN fcs.sort
+ ELSE fc.order_number
+ END DESC
+ </otherwise>
+ </choose>
</select>
<select id="getDetailLists">
@@ -1453,7 +1476,28 @@
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(fcs.sort != NULL or fcs.sort != '', fcs.sort, fc.order_number)
+ <choose>
+ <!-- landingSequence != 1 鏃讹紝浼樺厛鎸� landing_sequence 鍊掑簭 -->
+ <when test="landingSequence != 1">
+ ORDER BY landing_sequence DESC
+ </when>
+ <!-- flashback = 1 鏃舵搴� -->
+ <when test="flashback == 1">
+ ORDER BY
+ CASE
+ WHEN fcs.sort IS NOT NULL AND fcs.sort <> '' THEN fcs.sort
+ ELSE fc.order_number
+ END ASC
+ </when>
+ <!-- flashback != 1 鏃跺�掑簭 -->
+ <otherwise>
+ ORDER BY
+ CASE
+ WHEN fcs.sort IS NOT NULL AND fcs.sort <> '' THEN fcs.sort
+ ELSE fc.order_number
+ END DESC
+ </otherwise>
+ </choose>
</select>
<select id="getDetailListMerge">
@@ -1485,7 +1529,28 @@
and fcs.process = #{process}
where fc.process_id = #{processId} and fc.`merge`=1
group by fc.process_id, fc.order_number
- order by IF(fcs.sort != NULL or fcs.sort != '', fcs.sort, fc.order_number)
+ <choose>
+ <!-- landingSequence != 1 鏃讹紝浼樺厛鎸� landing_sequence 鍊掑簭 -->
+ <when test="landingSequence != 1">
+ ORDER BY landing_sequence DESC
+ </when>
+ <!-- flashback = 1 鏃舵搴� -->
+ <when test="flashback == 1">
+ ORDER BY
+ CASE
+ WHEN fcs.sort IS NOT NULL AND fcs.sort <> '' THEN fcs.sort
+ ELSE fc.order_number
+ END ASC
+ </when>
+ <!-- flashback != 1 鏃跺�掑簭 -->
+ <otherwise>
+ ORDER BY
+ CASE
+ WHEN fcs.sort IS NOT NULL AND fcs.sort <> '' THEN fcs.sort
+ ELSE fc.order_number
+ END DESC
+ </otherwise>
+ </choose>
</select>
<select id="getDetailListLikes">
@@ -2194,10 +2259,11 @@
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
+ SUBSTRING(process, LOCATE(bd.basic_name, process)) AS processed_part
from sd.order_glass_detail as ogds
+ left join sd.basic_data as bd on bd.nickname='stepC'
where ogds.order_id = #{orderId}
- and LOCATE('澶硅兌', ogds.process) > 0
+ and LOCATE(bd.basic_name, 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}
@@ -2233,13 +2299,14 @@
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
+ SUBSTRING(pds.process, LOCATE(bd.basic_name, 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
+ left join sd.basic_data as bd on bd.nickname='stepD'
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
@@ -2367,7 +2434,13 @@
JSON_UNQUOTE(JSON_EXTRACT(od.other_columns, '$.S01')) AS glassNumber,
od.order_number,
ogd.child_width as width,
- ogd.child_height as height
+ ogd.child_height as height,
+ ifnull(JSON_UNQUOTE(JSON_EXTRACT(od.other_columns, '$.S01')),'') AS glassNumber,
+ JSON_UNQUOTE(JSON_EXTRACT(od.other_columns, '$.S01')) AS S01,
+ JSON_UNQUOTE(JSON_EXTRACT(od.other_columns, '$.S02')) AS S02,
+ JSON_UNQUOTE(JSON_EXTRACT(od.other_columns, '$.S03')) AS S03,
+ JSON_UNQUOTE(JSON_EXTRACT(od.other_columns, '$.S04')) AS S04,
+ JSON_UNQUOTE(JSON_EXTRACT(od.other_columns, '$.S05')) AS S05
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
@@ -2407,11 +2480,16 @@
' = ',#{printQuantity} ) as size,
CONCAT(
- od.order_number,') ',
+ od.order_number,') ',
TRIM(TRAILING '.' FROM TRIM(TRAILING '0' FROM CAST(width AS CHAR))),
' X ',
TRIM(TRAILING '.' FROM TRIM(TRAILING '0' FROM CAST(height AS CHAR))),
' = ',#{printQuantity} ) as numberSize,
+ CONCAT(
+ od.order_number,')',' ',
+ TRIM(TRAILING '.' FROM TRIM(TRAILING '0' FROM CAST(width AS CHAR))),
+ ' X ',
+ TRIM(TRAILING '.' FROM TRIM(TRAILING '0' FROM CAST(height AS CHAR)))) as numberSizeQuantity,
od.order_number as orderNumber,
fc.technology_number as technologyNumber,
od.building_number as buildingNumber,
@@ -2421,6 +2499,7 @@
c.customer_abbreviation as customerAbbreviation,
p.product_abbreviation as productAbbreviation,
fc.process_id as processId,
+ SUBSTRING(fc.process_id,12 ) as processIdAD ,/*-娴佺▼鍗$畝鍐�-*/
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,
@@ -3072,4 +3151,149 @@
update pp.flow_card fc set fc.merge=0
where fc.process_id = #{processId}
</update>
+
+ <select id="getProcessName">
+ select IFNULL(nickname,'') from sd.basic_data where basic_category='process' and basic_name=#{processSub}
+ </select>
+
+ <select id="getProcessNameList">
+ SELECT id,basic_name,IFNULL(nickname,"") as nickname FROM sd.`basic_data` where basic_category='process'
+ </select>
+
+ <select id="exportDateProcessMp">
+ select
+ a.order_Id,
+ a.process_Id,
+ c.product_id,
+ c.product_name,
+ b.project,
+ sum(a.quantity) as quantity,
+ sum(a.quantity) * c.area as compute_gross_area,
+ a.founder,
+ c.processing_note,
+ b.customer_name,
+ layout_status as layout_status,
+ a.merge,
+ a.rack,
+ b.batch
+ from (select id,order_id,process_id,order_number, quantity,founder,max(layout_status) as layout_status,create_time,max(merge) as merge,rack 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 date(a.create_time) >= #{date[0]}
+ and date(a.create_time) <= #{date[1]}
+ and b.create_order>0
+ group by a.process_Id
+ ORDER BY a.id desc
+ </select>
+
+ <select id="getSumQuantity">
+ select quantity from sd.`order` where order_id=#{orderId}
+ </select>
+
+ <select id="getDetailCompoundList">
+ select fc.order_number,
+ concat(IF(ROUND(ogd.child_width, 1) = FLOOR(ogd.child_width), FLOOR(ogd.child_width), ROUND(ogd.child_width, 1)), "*", IF(ROUND(child_height, 1) = FLOOR(child_height), FLOOR(child_height), ROUND(child_height, 1))) as child_width,
+ SUM(fc.quantity) as quantity,
+ round(SUM(ogd.total_area), 2) as total_area,
+ SUM(od.perimeter) as perimeter,
+ if(od.bend_radius!=null || od.bend_radius!='',od.bend_radius,if(od.shape=2,JSON_UNQUOTE(JSON_EXTRACT(od.other_columns, '$.S04')),'')) 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,
+ pd.separation,
+ #{compound} as technology_number,
+ IFNULL(JSON_UNQUOTE(JSON_EXTRACT(od.other_columns, '$.S02')),'') as mapNumber,
+ od.building_number
+ 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
+ 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 #{compound})
+ group by fc.process_id, fc.order_number
+ <choose>
+ <!-- landingSequence != 1 鏃讹紝浼樺厛鎸� landing_sequence 鍊掑簭 -->
+ <when test="landingSequence != 1">
+ ORDER BY landing_sequence DESC
+ </when>
+ <!-- flashback = 1 鏃舵搴� -->
+ <when test="flashback == 1">
+ ORDER BY
+ CASE
+ WHEN fcs.sort IS NOT NULL AND fcs.sort <> '' THEN fcs.sort
+ ELSE fc.order_number
+ END ASC
+ </when>
+ <!-- flashback != 1 鏃跺�掑簭 -->
+ <otherwise>
+ ORDER BY
+ CASE
+ WHEN fcs.sort IS NOT NULL AND fcs.sort <> '' THEN fcs.sort
+ ELSE fc.order_number
+ END DESC
+ </otherwise>
+ </choose>
+ </select>
+
+ <select id="getDetailListLikeCompound">
+ select fc.order_number,
+ concat(IF(ROUND(ogd.child_width, 1) = FLOOR(ogd.child_width), FLOOR(ogd.child_width), ROUND(ogd.child_width, 1)), "*", IF(ROUND(child_height, 1) = FLOOR(child_height), FLOOR(child_height), ROUND(child_height, 1))) as child_width,
+ sum(fc.quantity) as quantity,
+ round(sum(ogd.total_area), 2) as total_area,
+ sum(od.perimeter) as perimeter,
+ if(od.bend_radius!=null || od.bend_radius!='',od.bend_radius,if(od.shape=2,JSON_UNQUOTE(JSON_EXTRACT(od.other_columns, '$.S04')),'')) 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,
+ pd.separation,
+ #{compound} as technology_number,
+ IFNULL(JSON_UNQUOTE(JSON_EXTRACT(od.other_columns, '$.S02')),'') as mapNumber,
+ od.building_number
+ 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
+ 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 #{compound})
+ group by fc.process_id, fc.order_number
+ <choose>
+ <!-- landingSequence != 1 鏃讹紝浼樺厛鎸� landing_sequence 鍊掑簭 -->
+ <when test="landingSequence != 1">
+ ORDER BY landing_sequence DESC
+ </when>
+ <!-- flashback = 1 鏃舵搴� -->
+ <when test="flashback == 1">
+ ORDER BY
+ CASE
+ WHEN fcs.sort IS NOT NULL AND fcs.sort <> '' THEN fcs.sort
+ ELSE fc.order_number
+ END ASC
+ </when>
+ <!-- flashback != 1 鏃跺�掑簭 -->
+ <otherwise>
+ ORDER BY
+ CASE
+ WHEN fcs.sort IS NOT NULL AND fcs.sort <> '' THEN fcs.sort
+ ELSE fc.order_number
+ END DESC
+ </otherwise>
+ </choose>
+ </select>
</mapper>
\ No newline at end of file
--
Gitblit v1.8.0