From b4cd374493cfbc1a2155b32341a1ac368f1a8da2 Mon Sep 17 00:00:00 2001
From: gongchunyi <deslre0381@gmail.com>
Date: 星期四, 03 九月 2026 14:54:33 +0800
Subject: [PATCH] fix: 排序规则修改

---
 src/main/resources/mapper/quality/QualityUnqualifiedMapper.xml |   25 +++++++++++++------------
 1 files changed, 13 insertions(+), 12 deletions(-)

diff --git a/src/main/resources/mapper/quality/QualityUnqualifiedMapper.xml b/src/main/resources/mapper/quality/QualityUnqualifiedMapper.xml
index 5bda4f6..fd87e03 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.product_model_id,
+        COALESCE(pm.model, pm_legacy.model, qu.model) AS model,
         CASE
-        WHEN qu.model = pm.id THEN pm.model
-        ELSE qu.model
-        END AS model,
-        CASE
-        WHEN qu.model = pm.id THEN true
+        WHEN pm_legacy.id IS NOT 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.product_model_id = pm.id
+        LEFT JOIN product_model pm_legacy ON qu.product_model_id IS NULL AND pm_legacy.id = CAST(qu.model AS UNSIGNED) AND qu.model REGEXP '^[0-9]+$'
         where
         1=1
         <if test="qualityUnqualified.inspectType != null ">
@@ -43,7 +42,9 @@
         <if test="qualityUnqualified.entryDateEnd != null and qualityUnqualified.entryDateEnd != '' ">
             AND  check_time &lt;= DATE_FORMAT(#{qualityUnqualified.entryDateEnd},'%Y-%m-%d')
         </if>
+        order by qu.check_time desc
     </select>
+
     <select id="qualityUnqualifiedExport" resultType="com.ruoyi.quality.pojo.QualityUnqualified">
         SELECT
         *
@@ -63,6 +64,7 @@
     <select id="getUnqualified" resultType="com.ruoyi.quality.pojo.QualityUnqualified">
         SELECT
             qu.id,
+            qu.inspect_id,
             qu.inspect_type,
             qu.inspect_state,
             qu.check_time,
@@ -75,16 +77,15 @@
             qu.deal_result,
             qu.deal_name,
             qu.deal_time,
+            qu.product_model_id,
+            COALESCE(pm.model, pm_legacy.model, qu.model) AS model,
             CASE
-                WHEN qu.model = pm.id THEN pm.model
-                ELSE qu.model
-                END AS model,
-            CASE
-                WHEN qu.model = pm.id THEN true
+                WHEN pm_legacy.id IS NOT 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.product_model_id = pm.id
+                 LEFT JOIN product_model pm_legacy ON qu.product_model_id IS NULL AND pm_legacy.id = CAST(qu.model AS UNSIGNED) AND qu.model REGEXP '^[0-9]+$'
         where
             1=1
         and qu.id = #{id}

--
Gitblit v1.9.3