From 4d99e718536ac77dff26dde8da7a59cdc9b52de8 Mon Sep 17 00:00:00 2001
From: liding <756868258@qq.com>
Date: 星期三, 20 五月 2026 10:13:57 +0800
Subject: [PATCH] fix:1.生产报工优化
---
src/main/resources/mapper/quality/QualityUnqualifiedMapper.xml | 70 +++++++++++++++++++++++++---------
1 files changed, 51 insertions(+), 19 deletions(-)
diff --git a/src/main/resources/mapper/quality/QualityUnqualifiedMapper.xml b/src/main/resources/mapper/quality/QualityUnqualifiedMapper.xml
index 5bda4f6..ec00fa0 100644
--- a/src/main/resources/mapper/quality/QualityUnqualifiedMapper.xml
+++ b/src/main/resources/mapper/quality/QualityUnqualifiedMapper.xml
@@ -16,16 +16,15 @@
qu.deal_result,
qu.deal_name,
qu.deal_time,
+ qu.quarantine_lifted,
+ qu.model,
+ pm.material_code as materialCode,
CASE
- WHEN qu.model = pm.id THEN pm.model
- ELSE qu.model
- END AS model,
- CASE
- WHEN qu.model = pm.id THEN true
+ WHEN qu.inspect_id is null THEN true
ELSE false
END AS method
FROM quality_unqualified qu
- LEFT JOIN product_model pm ON qu.model = pm.id
+ LEFT JOIN product_model pm ON qu.model = pm.model and qu.product_id = pm.product_id
where
1=1
<if test="qualityUnqualified.inspectType != null ">
@@ -41,13 +40,16 @@
AND check_time >= DATE_FORMAT(#{qualityUnqualified.entryDateStart},'%Y-%m-%d')
</if>
<if test="qualityUnqualified.entryDateEnd != null and qualityUnqualified.entryDateEnd != '' ">
- AND check_time <= DATE_FORMAT(#{qualityUnqualified.entryDateEnd},'%Y-%m-%d')
+ AND check_time <= DATE_FORMAT(#{qualityUnqualified.entryDateEnd},'%Y-%m-%d')
</if>
</select>
+
<select id="qualityUnqualifiedExport" resultType="com.ruoyi.quality.pojo.QualityUnqualified">
SELECT
- *
- FROM quality_unqualified
+ qu.*,
+ pm.material_code as materialCode
+ FROM quality_unqualified qu
+ LEFT JOIN product_model pm ON qu.model = pm.model
where
1=1
<if test="qualityUnqualified.inspectType != null">
@@ -60,6 +62,7 @@
AND product_name = #{qualityUnqualified.productName}
</if>
</select>
+
<select id="getUnqualified" resultType="com.ruoyi.quality.pojo.QualityUnqualified">
SELECT
qu.id,
@@ -75,25 +78,54 @@
qu.deal_result,
qu.deal_name,
qu.deal_time,
+ qi.process,
+ qu.model,
+ pm.material_code as materialCode,
CASE
- WHEN qu.model = pm.id THEN pm.model
- ELSE qu.model
- END AS model,
- CASE
- WHEN qu.model = pm.id THEN true
+ WHEN qu.inspect_id is null THEN true
ELSE false
END AS method
FROM quality_unqualified qu
- LEFT JOIN product_model pm ON qu.model = pm.id
+ LEFT JOIN product_model pm ON qu.model = pm.model AND pm.product_id = qu.product_id
+ LEFT JOIN quality_inspect qi ON qu.inspect_id = qi.id
where
1=1
- and qu.id = #{id}
+ and qu.id = #{id}
</select>
+
<select id="getModelId" resultType="java.lang.Long">
select pm.id
from product_model pm
- left join product p on pm.product_id=p.id
- where pm.model=#{model}
- and p.product_name=#{productName}
+ left join product p on pm.product_id = p.id
+ where pm.model = #{model}
+ and p.product_name = #{productName}
+ </select>
+
+ <select id="selectUnqualifiedByProductOrderAndProcessNames" resultType="com.ruoyi.quality.pojo.QualityUnqualified">
+ SELECT DISTINCT qu.*
+ FROM quality_unqualified qu
+ JOIN quality_inspect qi ON qu.inspect_id = qi.id
+ JOIN production_product_main ppm ON qi.product_main_id = ppm.id
+ JOIN product_work_order pwo ON ppm.work_order_id = pwo.id
+ WHERE qi.process IN
+ <foreach collection="processNames" item="processName" open="(" separator="," close=")">
+ #{processName}
+ </foreach>
+ AND pwo.product_order_id = #{productOrderId}
+ AND qu.deal_result = '闅旂'
+ AND qu.quarantine_lifted = false
+ </select>
+
+ <select id="selectUnqualifiedWithProductionOrder" resultType="com.ruoyi.quality.pojo.QualityUnqualified">
+ SELECT
+ po.id as productOrderId,
+ po.nps_no as productOrderNpsNo
+ FROM quality_unqualified qu
+ LEFT JOIN quality_inspect qi ON qu.inspect_id = qi.id
+ LEFT JOIN production_product_main ppm ON qi.product_main_id = ppm.id
+ LEFT JOIN product_work_order pwo ON ppm.work_order_id = pwo.id
+ LEFT JOIN product_order po ON pwo.product_order_id = po.id
+ WHERE po.id IS NOT NULL
+ GROUP BY po.id
</select>
</mapper>
--
Gitblit v1.9.3