From 0cc92828383014e38b770427353d09f693c5ee9d Mon Sep 17 00:00:00 2001
From: liyong <18434998025@163.com>
Date: 星期一, 27 四月 2026 13:26:16 +0800
Subject: [PATCH] fix(sales): 修复销售台账产品查询中供应商名称搜索条件重复问题

---
 src/main/resources/mapper/basic/ProductModelMapper.xml |   17 ++++++++++++++++-
 1 files changed, 16 insertions(+), 1 deletions(-)

diff --git a/src/main/resources/mapper/basic/ProductModelMapper.xml b/src/main/resources/mapper/basic/ProductModelMapper.xml
index 317f5d9..55d6e55 100644
--- a/src/main/resources/mapper/basic/ProductModelMapper.xml
+++ b/src/main/resources/mapper/basic/ProductModelMapper.xml
@@ -9,7 +9,6 @@
         <result column="product_id" property="productId" />
         <result column="model" property="model" />
         <result column="unit" property="unit" />
-        <result column="speculative_trading_name" property="speculativeTradingName" />
         <result column="tenant_id" property="tenantId" />
         <result column="product_name" property="productName" />
         <result column="product_id" property="productId" />
@@ -25,6 +24,22 @@
             <if test="c.productName != null and c.productName != ''">
                 and p.product_name  like  concat('%',#{c.productName},'%')
             </if>
+            <if test="c.topProductParentId != null and c.topProductParentId > 0">
+                and p.id in (
+                    WITH RECURSIVE product_tree AS (
+                        SELECT id
+                        FROM product
+                        WHERE id = #{c.topProductParentId}
+                        
+                        UNION ALL
+                        
+                        SELECT p.id
+                        FROM product p
+                        INNER JOIN product_tree pt ON p.parent_id = pt.id
+                    )
+                    select id from product_tree
+                )
+            </if>
         </where>
         order by  pm.id
     </select>

--
Gitblit v1.9.3