From 72671bbfdac9fcdbdcd7c67265fce4539a7ec365 Mon Sep 17 00:00:00 2001
From: chenlu <1320612696@qq.com>
Date: 星期五, 05 七月 2024 18:19:51 +0800
Subject: [PATCH] 修改流程卡界面编号显示错误问题,将流程卡合并打印工艺流程显示合并产品相关,修改打印排序弹出打开方式
---
north-glass-erp/src/main/resources/mapper/pp/ReportingWork.xml | 138 +++++++++++++++++++++++++++++++++-------------
1 files changed, 99 insertions(+), 39 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 2e3409b..367700e 100644
--- a/north-glass-erp/src/main/resources/mapper/pp/ReportingWork.xml
+++ b/north-glass-erp/src/main/resources/mapper/pp/ReportingWork.xml
@@ -125,9 +125,9 @@
fc.quantity AS quantity_card,
ogd.child_width,
ogd.child_height,
- od.shape,
- fc.quantity -odpd.reporting_work_num -odpd.broken_num + ifnull(c.patchNumSum,0) as quantity,
- fc.quantity -odpd.reporting_work_num -odpd.broken_num + ifnull(c.patchNumSum,0) as completedQuantity,
+ if(od.shape=1,'鏅舰',if(od.shape=2,'寮傚舰','')) as shape,
+ fc.quantity -odpd.reporting_work_num -odpd.broken_num as quantity,
+ fc.quantity -odpd.reporting_work_num -odpd.broken_num as completedQuantity,
odpd.reporting_work_num as completed,
odpd.broken_num as onceBroken,
if(fc.quantity -odpd.reporting_work_num = 0 ,true,false) as saveFlag -- 鍒ゆ柇鏄惁宸茬粡瀹屾垚锛屽凡缁忓畬鎴愪笉搴忓彿鍜屽悓搴忓彿鏁伴噺鐩稿悓鎵嶈兘鎻愪氦
@@ -146,13 +146,6 @@
AND odpd.order_number = fc.order_number
AND odpd.technology_number = fc.technology_number
and odpd.process_id = fc.process_id
- left join
- (select sum(patch_num) as patchNumSum,order_sort,technology_number,process_id
- from patch_log
- group by reporting_work_id,order_sort,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}
AND fc.technology_number = #{technologyStr}
@@ -170,9 +163,13 @@
fc.quantity AS quantity_card,
ogd.child_width,
ogd.child_height,
- od.shape,
- odpds.reporting_work_num -odpd.reporting_work_num -odpd.broken_num + ifnull(c.patchNumSum,0) as quantity,
- odpds.reporting_work_num -odpd.reporting_work_num -odpd.broken_num + ifnull(c.patchNumSum,0) as completedQuantity,
+ if(od.shape=1,'鏅舰',if(od.shape=2,'寮傚舰','')) as shape,
+ 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`,
@@ -206,12 +203,23 @@
left join sd.order_process_detail as odpds
ON odpds.id = odpd.id-1
left join
- (select sum(patch_num) as patchNumSum,order_sort,technology_number,process_id
- from patch_log
- group by reporting_work_id,order_sort,technology_number) as c
+ (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 != '鍖呰'">
@@ -302,7 +310,10 @@
</select>
<select id="selectGlassProcessNum" resultType="java.lang.Integer">
select
- d.reporting_work_num-b.reporting_work_num-b.broken_num+ifnull(c.patchNumSum,0)
+ if((d.reporting_work_num_count+ifnull(c.reworkNumSum,0)-b.reporting_work_num_count-b.broken_num)< 0,
+ 0,
+ (d.reporting_work_num_count+ifnull(c.reworkNumSum,0)-b.reporting_work_num_count-b.broken_num)
+ )
from flow_card as a
left join sd.order_process_detail as b
on
@@ -313,13 +324,22 @@
and b.process_id = a.process_id
left join sd.order_process_detail as d
on d.id=b.id-1
- left join (select sum(patch_num) as patchNumSum,order_sort,technology_number,process_id
- from patch_log
- group by reporting_work_id,order_sort,technology_number) as c
- on
- c.process_id = a.process_id
- and c.order_sort = a.order_number
- and c.technology_number = a.technology_number
+ left join (SELECT
+ sum(rw.rework_num) as 'reworkNumSum',
+ 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=#{thisProcess}
+ and rw.review_status=1
+ and rw.process_id = SUBSTR(#{processId} from 1 for 14)
+ GROUP BY rw.process_id,rw.order_sort,rw.technology_number) as c
+ on c.process_id = a.process_id
+ and c.order_sort = a.order_number
+ and c.technology_number = a.technology_number
where
a.process_id=SUBSTR(#{processId} from 1 for 14)
@@ -339,7 +359,7 @@
and b.process_id = a.process_id
left join (select sum(patch_num) as patchNumSum,order_sort,technology_number,process_id
from patch_log
- group by reporting_work_id,order_sort,technology_number) as c
+ group by order_sort,technology_number) as c
on
c.process_id = a.process_id
and c.order_sort = a.order_number
@@ -362,11 +382,13 @@
c.quantity as quantity_card,
d.child_width,
d.child_height,
- e.shape,
- a.completed_quantity+a.breakage_quantity as 'quantity', -- 鍙姤宸ユ暟
- a.completed_quantity as 'completedQuantity', -- 瀹屽伐鏁�
- a.breakage_quantity as 'breakageQuantity', -- 鐮存崯鏁�
- f.completed_quantity as thisQuantitySum ,-- 鏈伐搴忓畬宸ュ拰
+ if(e.shape=1,'鏅舰',if(e.shape=2,'寮傚舰','')) as shape,
+ if(ifnull(a.completed_quantity+a.breakage_quantity,0)=0,
+ c.quantity-ifnull(a.completed_quantity+a.breakage_quantity,0),
+ ifnull(a.completed_quantity+a.breakage_quantity,0)) as 'quantity', -- 鍙姤宸ユ暟
+ ifnull(a.completed_quantity,0) as 'completedQuantity', -- 瀹屽伐鏁�
+ ifnull(a.breakage_quantity,0) as 'breakageQuantity', -- 鐮存崯鏁�
+ ifnull(f.completed_quantity,0) as thisQuantitySum ,-- 鏈伐搴忓畬宸ュ拰
if(c.quantity-f.completed_quantity = 0 ,true,false) as saveFlag,
<if test="nextProcess != null and nextProcess != ''"> -- 闈炴渶鍚庝竴閬撳伐搴�
ifnull(g.completed_quantity,0) as nextQuantitySum, -- 鍚庡伐搴忓凡瀹屾垚
@@ -391,13 +413,16 @@
as minQuantity -- 淇敼鏈�灏忔暟
</if>
-- e.thisQuantitySum
- from
- reporting_work_detail as a
- left join reporting_work as b
- on a.reporting_work_id = b.reporting_work_id
- left join flow_card as c
- on c.process_id = b.process_id
- and c.technology_number = a.technology_number
+ from reporting_work as b
+
+ right join flow_card as c
+ on c.process_id = b.process_id
+
+ right join reporting_work_detail as a
+ on a.reporting_work_id = b.reporting_work_id
+ and c.order_number=a.order_number
+ and c.technology_number = a.technology_number
+
left join sd.order_glass_detail as d
on d.order_id = c.order_id
and c.order_number = d.order_number
@@ -441,7 +466,8 @@
and g.order_number = a.order_number
and g.technology_number = a.technology_number
</if>
- where a.reporting_work_id = #{reportingWorkId}
+ where b.reporting_work_id = #{reportingWorkId}
+ GROUP BY c.order_number,c.technology_number
</select>
<select id="selectReportingWorkMp" resultMap="reportingWorkMap">
select rw.reporting_work_id,
@@ -504,6 +530,24 @@
where rw.reviewed_state != 2
and rw.reporting_work_time between #{selectTime1} and #{selectTime2} and position(#{orderId} in rw.order_id)
and rw.reviewed_state!=-1
+ <if test="reportingWork.reportingWorkId != null and reportingWork.reportingWorkId != ''">
+ and rw.reporting_work_id regexp #{reportingWork.reportingWorkId}
+ </if>
+ <if test="reportingWork.orderId != null and reportingWork.orderId != ''">
+ and o.order_id regexp #{reportingWork.orderId}
+ </if>
+ <if test="reportingWork.processId != null and reportingWork.processId != ''">
+ and rw.process_id regexp #{reportingWork.processId}
+ </if>
+ <if test="reportingWork.order.project != null and reportingWork.order.project != ''">
+ and o.project regexp #{reportingWork.order.project}
+ </if>
+ <if test="reportingWork.order.batch != null and reportingWork.order.batch != ''">
+ and o.batch regexp #{reportingWork.order.batch}
+ </if>
+ <if test="reportingWork.thisProcess != null and reportingWork.thisProcess != ''">
+ and rw.this_process regexp #{reportingWork.thisProcess}
+ </if>
ORDER BY rw.reporting_work_id desc
limit #{offset},#{pageSize};
</select>
@@ -554,7 +598,6 @@
select process
from sd.order_process_detail
where process_id = #{processId}
- and order_number = 1
and technology_number = 1
order by id desc
LIMIT 1
@@ -638,6 +681,18 @@
and position(#{processId} in rw.process_id)
and position(#{state} in dd.quality_ins_status)
and rw.reviewed_state!=-1
+ <if test="reportingWork.reportingWorkId != null and reportingWork.reportingWorkId != ''">
+ and rw.reporting_work_id regexp #{reportingWork.reportingWorkId}
+ </if>
+ <if test="reportingWork.processId != null and reportingWork.processId != ''">
+ and rw.process_id regexp #{reportingWork.processId}
+ </if>
+ <if test="reportingWork.order.project != null and reportingWork.order.project != ''">
+ and o.project regexp #{reportingWork.order.project}
+ </if>
+ <if test="reportingWork.order.customerName != null and reportingWork.order.customerName != ''">
+ and o.customer_name regexp #{reportingWork.order.customerName}
+ </if>
ORDER BY rw.reporting_work_id desc
limit #{offset},#{pageSize};
</select>
@@ -686,4 +741,9 @@
GROUP BY rwd.order_number, ogd.glass_child, rwd.technology_number, dd.id
ORDER BY rwd.order_number
</select>
+
+ <select id="selectLayerByReportingWorkId">
+ select REPLACE(GROUP_CONCAT(DISTINCT rwd.technology_number),',','') from reporting_work_detail as rwd
+ where rwd.reporting_work_id=#{reportingWorkId}
+ </select>
</mapper>
\ No newline at end of file
--
Gitblit v1.8.0