From 5cba61176f9f66c4ecb3a0fafe9b07077fb1dccc Mon Sep 17 00:00:00 2001
From: chenlu <1320612696@qq.com>
Date: 星期二, 23 四月 2024 19:50:11 +0800
Subject: [PATCH] 报工补片返工修改
---
north-glass-erp/target/classes/mapper/pp/ReportingWork.xml | 27 ++++++++++++++++++++++++---
north-glass-erp/src/main/resources/mapper/pp/ReportingWork.xml | 27 ++++++++++++++++++++++++---
2 files changed, 48 insertions(+), 6 deletions(-)
diff --git a/north-glass-erp/src/main/resources/mapper/pp/ReportingWork.xml b/north-glass-erp/src/main/resources/mapper/pp/ReportingWork.xml
index 52d167b..9689a44 100644
--- a/north-glass-erp/src/main/resources/mapper/pp/ReportingWork.xml
+++ b/north-glass-erp/src/main/resources/mapper/pp/ReportingWork.xml
@@ -146,7 +146,6 @@
AND odpd.order_number = fc.order_number
AND odpd.technology_number = fc.technology_number
and odpd.process_id = fc.process_id
-
WHERE
fc.process_id = #{processIdStr}
AND fc.technology_number = #{technologyStr}
@@ -165,8 +164,12 @@
ogd.child_width,
ogd.child_height,
od.shape,
- odpds.reporting_work_num -odpd.reporting_work_num -odpd.broken_num as quantity,
- odpds.reporting_work_num -odpd.reporting_work_num -odpd.broken_num as completedQuantity,
+ if((odpds.reporting_work_num_count + ifnull(c.patchNumSum,0) -odpd.reporting_work_num_count -odpd.broken_num ) < 0,
+ 0,
+ odpds.reporting_work_num_count + ifnull(c.patchNumSum,0) -odpd.reporting_work_num_count -odpd.broken_num) as quantity,
+ if((odpds.reporting_work_num_count + ifnull(c.patchNumSum,0) -odpd.reporting_work_num_count -odpd.broken_num) < 0,
+ 0,
+ odpds.reporting_work_num_count + ifnull(c.patchNumSum,0) -odpd.reporting_work_num_count -odpd.broken_num) as completedQuantity,
odpd.reporting_work_num as completed,
odpd.broken_num as onceBroken,
ogd.`group`,
@@ -199,6 +202,24 @@
and odpd.process_id = fc.process_id
left join sd.order_process_detail as odpds
ON odpds.id = odpd.id-1
+ left join
+ (SELECT
+ sum(rw.rework_num) as 'patchNumSum',
+ rw.process_id,rw.order_sort,rw.technology_number,
+ rwk.this_process
+ from
+ rework as rw
+ LEFT JOIN
+ reporting_work as rwk
+ on rw.reporting_work_id =rwk.reporting_work_id
+ where rwk.this_process=#{process}
+ and rw.review_status=1
+ and rw.process_id = #{processIdStr}
+ GROUP BY rw.process_id,rw.order_sort,rw.technology_number) as c
+ on c.process_id = fc.process_id
+ and c.order_sort = fc.order_number
+ and c.technology_number = fc.technology_number
+
WHERE
fc.process_id = #{processIdStr}
<if test="process != '涓┖' and process != '澶硅兌' and process != '鍖呰'">
diff --git a/north-glass-erp/target/classes/mapper/pp/ReportingWork.xml b/north-glass-erp/target/classes/mapper/pp/ReportingWork.xml
index 52d167b..9689a44 100644
--- a/north-glass-erp/target/classes/mapper/pp/ReportingWork.xml
+++ b/north-glass-erp/target/classes/mapper/pp/ReportingWork.xml
@@ -146,7 +146,6 @@
AND odpd.order_number = fc.order_number
AND odpd.technology_number = fc.technology_number
and odpd.process_id = fc.process_id
-
WHERE
fc.process_id = #{processIdStr}
AND fc.technology_number = #{technologyStr}
@@ -165,8 +164,12 @@
ogd.child_width,
ogd.child_height,
od.shape,
- odpds.reporting_work_num -odpd.reporting_work_num -odpd.broken_num as quantity,
- odpds.reporting_work_num -odpd.reporting_work_num -odpd.broken_num as completedQuantity,
+ if((odpds.reporting_work_num_count + ifnull(c.patchNumSum,0) -odpd.reporting_work_num_count -odpd.broken_num ) < 0,
+ 0,
+ odpds.reporting_work_num_count + ifnull(c.patchNumSum,0) -odpd.reporting_work_num_count -odpd.broken_num) as quantity,
+ if((odpds.reporting_work_num_count + ifnull(c.patchNumSum,0) -odpd.reporting_work_num_count -odpd.broken_num) < 0,
+ 0,
+ odpds.reporting_work_num_count + ifnull(c.patchNumSum,0) -odpd.reporting_work_num_count -odpd.broken_num) as completedQuantity,
odpd.reporting_work_num as completed,
odpd.broken_num as onceBroken,
ogd.`group`,
@@ -199,6 +202,24 @@
and odpd.process_id = fc.process_id
left join sd.order_process_detail as odpds
ON odpds.id = odpd.id-1
+ left join
+ (SELECT
+ sum(rw.rework_num) as 'patchNumSum',
+ rw.process_id,rw.order_sort,rw.technology_number,
+ rwk.this_process
+ from
+ rework as rw
+ LEFT JOIN
+ reporting_work as rwk
+ on rw.reporting_work_id =rwk.reporting_work_id
+ where rwk.this_process=#{process}
+ and rw.review_status=1
+ and rw.process_id = #{processIdStr}
+ GROUP BY rw.process_id,rw.order_sort,rw.technology_number) as c
+ on c.process_id = fc.process_id
+ and c.order_sort = fc.order_number
+ and c.technology_number = fc.technology_number
+
WHERE
fc.process_id = #{processIdStr}
<if test="process != '涓┖' and process != '澶硅兌' and process != '鍖呰'">
--
Gitblit v1.8.0