From 9f6a65e7f4b87b0e27e7d2949b4e42f40419b2ff Mon Sep 17 00:00:00 2001
From: gongchunyi <deslre0381@gmail.com>
Date: 星期日, 20 九月 2026 09:19:53 +0800
Subject: [PATCH] chore: 桓海电子配置文件

---
 src/main/resources/mapper/quality/QualityTestStandardMapper.xml |   50 ++++++++++++++++++++++++++++++++++++++++----------
 1 files changed, 40 insertions(+), 10 deletions(-)

diff --git a/src/main/resources/mapper/quality/QualityTestStandardMapper.xml b/src/main/resources/mapper/quality/QualityTestStandardMapper.xml
index 96448f5..b72b649 100644
--- a/src/main/resources/mapper/quality/QualityTestStandardMapper.xml
+++ b/src/main/resources/mapper/quality/QualityTestStandardMapper.xml
@@ -7,18 +7,48 @@
         FROM quality_test_standard
         where
         1=1
-        <if test="qualityTestStandard.productId != null and qualityTestStandard.productId != '' ">
-            AND product_id = #{qualityTestStandard.productId}
+        <if test="c.standardNo != null and c.standardNo != '' ">
+            AND standard_no like concat('%',#{c.standardNo},'%')
+        </if>
+        <if test="c.standardName != null and c.standardName != '' ">
+            AND standard_name like concat('%',#{c.standardName},'%')
+        </if>
+        <if test="c.state != null ">
+            AND state =#{c.state}
+        </if>
+        <if test="c.inspectType != null ">
+            AND inspect_type =#{c.inspectType}
         </if>
     </select>
-    <select id="qualityTestStandardList" resultType="com.ruoyi.quality.pojo.QualityTestStandard">
-        SELECT
-        *
-        FROM quality_test_standard
-        where
-        1=1
-        <if test="qualityTestStandard.productId != null and qualityTestStandard.productId != '' ">
-            AND product_id = #{qualityTestStandard.productId}
+    <select id="getQualityTestStandardByProductId" resultType="com.ruoyi.quality.dto.QualityTestStandardDto">
+        SELECT DISTINCT qts.*, pm.model as product_model
+        FROM quality_test_standard qts
+                 left join quality_test_standard_binding qtsb on qtsb.test_standard_id = qts.id
+                 left join technology_operation toper on qts.process_id = toper.id
+                 left join product_model pm on qtsb.product_model_id = pm.id
+        WHERE qts.inspect_type = #{inspectType}
+          AND (
+              qtsb.product_id = #{productId}
+              or qtsb.product_id in (
+                  WITH RECURSIVE product_parent AS (
+                      SELECT parent_id
+                      FROM product
+                      WHERE id = #{productId} AND parent_id IS NOT NULL
+                      UNION ALL
+                      SELECT p.parent_id
+                      FROM product p
+                      INNER JOIN product_parent pp ON p.id = pp.parent_id
+                      WHERE p.parent_id IS NOT NULL
+                  )
+                  SELECT parent_id FROM product_parent
+              )
+          )
+        <if test="productModelId != null">
+            and (qtsb.product_model_id is null or qtsb.product_model_id = #{productModelId})
         </if>
+        <if test="process!='' and process!=null">
+            and toper.name = #{process}
+        </if>
+        order by qtsb.product_model_id is not null, qts.id desc
     </select>
 </mapper>

--
Gitblit v1.9.3