From 6d95aca9fae0c748c32ec7697971012097cf9504 Mon Sep 17 00:00:00 2001
From: liyong <18434998025@163.com>
Date: 星期二, 28 四月 2026 16:13:54 +0800
Subject: [PATCH] feat(sales): 更新销售报价单查询逻辑以支持客户名称合并

---
 src/main/resources/mapper/sales/SalesQuotationMapper.xml |   32 ++++++++++++++++++++++++++++++--
 1 files changed, 30 insertions(+), 2 deletions(-)

diff --git a/src/main/resources/mapper/sales/SalesQuotationMapper.xml b/src/main/resources/mapper/sales/SalesQuotationMapper.xml
index 1e358ca..b245637 100644
--- a/src/main/resources/mapper/sales/SalesQuotationMapper.xml
+++ b/src/main/resources/mapper/sales/SalesQuotationMapper.xml
@@ -4,10 +4,37 @@
         "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 <mapper namespace="com.ruoyi.sales.mapper.SalesQuotationMapper">
     <select id="listPage" resultType="com.ruoyi.sales.dto.SalesQuotationDto">
-        SELECT t1.*,
-               t2.approve_user_ids
+        SELECT t1.id,
+        t1.quotation_no,
+        COALESCE(merged_customer.customer_name, t1.customer) AS customer,
+        t1.salesperson,
+        t1.quotation_date,
+        t1.valid_date,
+        t1.payment_method,
+        t1.delivery_period,
+        t1.status,
+        t1.total_amount,
+        t1.remark,
+        t1.create_time,
+        t1.update_time,
+        t1.create_user,
+        t1.update_user,
+        t1.tenant_id,
+        t1.dept_id,
+        t2.approve_user_ids
         FROM sales_quotation t1
         LEFT JOIN approve_process t2 ON t1.quotation_no = t2.approve_reason and t2.approve_type = 6
+        LEFT JOIN (
+        SELECT cpp.id, cpp.type, cpp.customer_id,
+        CASE
+        WHEN cpp.type = 0 THEN cp.customer_name
+        WHEN cpp.type = 1 THEN c.customer_name
+        ELSE NULL
+        END AS customer_name
+        FROM customer_private_pool cpp
+        LEFT JOIN customer_private cp ON cpp.type = 0 AND cpp.customer_id = cp.id
+        LEFT JOIN customer c ON cpp.type = 1 AND cpp.customer_id = c.id
+        ) merged_customer ON t1.customer = merged_customer.id
         WHERE 1=1
         <if test="salesQuotationDto.quotationNo != null and salesQuotationDto.quotationNo != '' ">
             AND t1.quotation_no LIKE CONCAT('%',#{salesQuotationDto.quotationNo},'%')
@@ -19,4 +46,5 @@
             AND t1.status = #{salesQuotationDto.status}
         </if>
     </select>
+
 </mapper>
\ No newline at end of file

--
Gitblit v1.9.3