From 6c8973d78b04b1aa132dccbd478ba8abbcf2b6c1 Mon Sep 17 00:00:00 2001
From: liding <756868258@qq.com>
Date: 星期五, 25 四月 2025 09:10:21 +0800
Subject: [PATCH] 1.国产网分仪 2.可靠性计划成品计划

---
 inspect-server/src/main/resources/mapper/ReliabilityPlanProductItemMapper.xml |   43 +++++++++++++++++++++++++++++++++++++++----
 1 files changed, 39 insertions(+), 4 deletions(-)

diff --git a/inspect-server/src/main/resources/mapper/ReliabilityPlanProductItemMapper.xml b/inspect-server/src/main/resources/mapper/ReliabilityPlanProductItemMapper.xml
index b0eaee6..34c9049 100644
--- a/inspect-server/src/main/resources/mapper/ReliabilityPlanProductItemMapper.xml
+++ b/inspect-server/src/main/resources/mapper/ReliabilityPlanProductItemMapper.xml
@@ -23,16 +23,20 @@
                 sp.id
         ) SELECT
               sp.inspection_item AS inspectionItem,
-              sm.`code`,
-              sm.id
+              GROUP_CONCAT(DISTINCT sm.`code` SEPARATOR ',') AS standard,
+              sp.frequency
         FROM
             flattened_samples fs
                 JOIN structure_item_parameter sp ON fs.id = sp.id
                 JOIN reliability_plan_product rp ON JSON_OVERLAPS (fs.flattened_sample, JSON_ARRAY(rp.product_name))
                 LEFT JOIN standard_product_list spl ON spl.structure_item_parameter_id = sp.id
                 AND spl.model = rp.product_type
+                AND spl.state = 1
                 LEFT JOIN standard_method sm ON sm.id = spl.standard_method_list_id
-        WHERE rp.id = #{planId}
+        WHERE
+            rp.id = #{planId}
+        GROUP BY
+            sp.inspection_item, sp.frequency
     </select>
     <select id="codeList" resultType="java.util.Map">
         WITH flattened_samples AS (
@@ -56,5 +60,36 @@
                 LEFT JOIN standard_method sm ON sm.id = spl.standard_method_list_id
         WHERE rp.id = #{planId}
     </select>
-
+    <select id="materialItem" resultType="java.util.Map">
+        SELECT
+            sp.inspection_item AS inspectionItem
+        FROM
+            structure_item_parameter sp
+                CROSS JOIN JSON_TABLE (sp.sample, '$[*][*]' COLUMNS (VALUE VARCHAR (255) PATH '$')) AS jt
+                JOIN reliability_plan_material rp ON rp.material_name = jt.
+                VALUE
+                AND rp.id = #{planId}
+        GROUP BY
+            sp.id,
+            sp.inspection_item
+        UNION ALL
+        SELECT
+            inspection_item AS inspectionItem
+        FROM
+            structure_item_parameter
+        WHERE
+            sample IS NULL
+           OR sample = ''
+           OR sample = '[]'
+        ORDER BY
+            inspectionItem ASC;
+    </select>
+    <select id="materialCodeList" resultType="java.util.Map">
+        SELECT DISTINCT sm.`code` as standard, sm.id
+        FROM (SELECT material_name
+              FROM reliability_plan_material
+              WHERE id = #{planId}) rm
+                 JOIN standard_product_list spl ON spl.sample = rm.material_name AND spl.sample IS NOT NULL
+                 JOIN standard_method sm ON sm.id = spl.standard_method_list_id;
+    </select>
 </mapper>

--
Gitblit v1.9.3