From 320e4367c61bfd2b2b98d68d556600c2a60fe64a Mon Sep 17 00:00:00 2001
From: zouyu <2723363702@qq.com>
Date: 星期四, 02 七月 2026 10:02:59 +0800
Subject: [PATCH] 销售台账:查看详情,退货数量与销售退货不一致问题修复

---
 src/main/resources/mapper/sales/ShippingInfoMapper.xml |   16 +++++++++++-----
 1 files changed, 11 insertions(+), 5 deletions(-)

diff --git a/src/main/resources/mapper/sales/ShippingInfoMapper.xml b/src/main/resources/mapper/sales/ShippingInfoMapper.xml
index fdd7306..8775933 100644
--- a/src/main/resources/mapper/sales/ShippingInfoMapper.xml
+++ b/src/main/resources/mapper/sales/ShippingInfoMapper.xml
@@ -67,17 +67,19 @@
                  LEFT JOIN sales_ledger sl ON s.sales_ledger_id = sl.id
     </select>
     <select id="getReturnManagementDtoById" resultType="com.ruoyi.procurementrecord.bean.vo.ShippingProductVo">
-        SELECT
+        SELECT distinct
             sor.id,
             slp.product_category,
             slp.specification_model,
             slp.unit,
+            slp.product_model_id,
             sor.outbound_batches,
             sor.stock_out_num,
             sor.batch_no,
             slp.tax_inclusive_unit_price,
             GREATEST(sor.stock_out_num - COALESCE(rs.total_return_num, 0), 0) AS un_quantity,
-            COALESCE(rs.total_return_num, 0) AS total_return_num
+            COALESCE(rs.return_num, 0) AS total_return_num,
+            COALESCE(rs.pending_return_num, 0) AS pending_return_num
         FROM shipping_info si
         LEFT JOIN shipping_product_detail spd ON spd.shipping_info_id = si.id
         LEFT JOIN stock_out_record sor ON sor.record_id = si.id and sor.record_type = '13'
@@ -85,7 +87,9 @@
         LEFT JOIN (
         SELECT
         stock_out_record_id,
-        SUM(num) AS total_return_num
+        SUM(num) AS total_return_num,
+        SUM( CASE WHEN rsp.STATUS = 0 THEN rsp.num ELSE 0 END ) AS pending_return_num ,
+        SUM( CASE WHEN rsp.STATUS = 1 THEN rsp.num ELSE 0 END ) AS return_num
         FROM return_sale_product rsp
         left join return_management rm on rm.id = rsp.return_management_id
         left join shipping_info si on si.id = rm.shipping_id
@@ -97,10 +101,12 @@
                 si.id = #{shippingId}
             </if>
         </where>
+        order by sor.id
     </select>
     <select id="getShippingInfoByCustomerName" resultType="com.ruoyi.sales.pojo.ShippingInfo">
-        select * from shipping_info si
+        select distinct si.* from shipping_info si
         left join sales_ledger sl on si.sales_ledger_id = sl.id
-        where  sl.customer_name = #{customerName}
+        inner join stock_out_record sor on sor.record_id = si.id and sor.record_type = '13' and sor.approval_status = 1
+        where sl.customer_name = #{customerName} and si.status = '瀹℃牳閫氳繃'
     </select>
 </mapper>

--
Gitblit v1.9.3