From d1cee577fddcc8fde276c1dd1ff3f444d7e8b82c Mon Sep 17 00:00:00 2001
From: chenlu <1320612696@qq.com>
Date: 星期四, 23 五月 2024 10:25:52 +0800
Subject: [PATCH] 添加复选框筛选功能,修改筛选后翻页显示错误问题
---
north-glass-erp/src/main/resources/mapper/pp/ReportingWork.xml | 91 ++++++++++++++++++++++++++++++++++-----------
1 files changed, 69 insertions(+), 22 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 9689a44..e59aff1 100644
--- a/north-glass-erp/src/main/resources/mapper/pp/ReportingWork.xml
+++ b/north-glass-erp/src/main/resources/mapper/pp/ReportingWork.xml
@@ -310,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
@@ -321,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)
@@ -347,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
@@ -371,10 +383,12 @@
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(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, -- 鍚庡伐搴忓凡瀹屾垚
@@ -399,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
+
+ left 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
@@ -449,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,
@@ -512,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>
@@ -562,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
@@ -646,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>
--
Gitblit v1.8.0