From 5ee7ec8af78200fd2d6a515e53d3eca019e45332 Mon Sep 17 00:00:00 2001
From: zss <zss@example.com>
Date: 星期二, 12 五月 2026 13:35:02 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/dev_New_pro' into dev_New_pro

---
 src/main/resources/mapper/sales/ShippingInfoMapper.xml |   40 ++++++++++++++++++++++++++++++++++++----
 1 files changed, 36 insertions(+), 4 deletions(-)

diff --git a/src/main/resources/mapper/sales/ShippingInfoMapper.xml b/src/main/resources/mapper/sales/ShippingInfoMapper.xml
index 89134d5..b0bf4b7 100644
--- a/src/main/resources/mapper/sales/ShippingInfoMapper.xml
+++ b/src/main/resources/mapper/sales/ShippingInfoMapper.xml
@@ -19,14 +19,17 @@
         s.update_user,
         s.tenant_id,
         sl.sales_contract_no,
-        slp.specification_model,
+        pm.model as specification_model,
+        pm.unit,
         p.product_name,
-        sl.customer_name
+        sl.customer_name,
+        sor.outbound_batches
         FROM shipping_info s
         LEFT JOIN sales_ledger sl ON s.sales_ledger_id = sl.id
-        LEFT JOIN sales_ledger_product slp ON s.sales_ledger_product_id = slp.id
+        LEFT JOIN sales_ledger_product slp ON s.sales_ledger_product_id = slp.id and slp.type = 1
         left join product_model pm on slp.product_model_id = pm.id
         left join product p on pm.product_id = p.id
+        left join stock_out_record sor on sor.record_id= s.id and sor.record_type='13' and sor.approval_status=1
         WHERE 1=1
         <if test="req.salesContractNo != null and req.salesContractNo != ''">
             AND sl.sales_contract_no LIKE CONCAT('%',#{req.salesContractNo},'%')
@@ -58,4 +61,33 @@
         FROM shipping_info s
                  LEFT JOIN sales_ledger sl ON s.sales_ledger_id = sl.id
     </select>
-</mapper>
\ No newline at end of file
+    <select id="getReturnManagementDtoById" resultType="com.ruoyi.sales.dto.SalesLedgerProductDto">
+        SELECT
+        slp.*,
+        si.shipping_no,
+        GREATEST(slp.quantity - COALESCE(rs.total_return_num, 0), 0) AS un_quantity,
+        COALESCE(rs.total_return_num, 0) AS total_return_num
+        FROM shipping_info si
+        LEFT JOIN sales_ledger_product slp ON si.sales_ledger_product_id = slp.id and slp.type = 1
+        LEFT JOIN (
+        SELECT
+        return_sales_ledger_product_id,
+        SUM(num) AS total_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
+        WHERE 1=1
+        GROUP BY return_sales_ledger_product_id
+        ) rs ON rs.return_sales_ledger_product_id = slp.id
+        <where>
+            <if test="shippingId != null">
+                si.id = #{shippingId}
+            </if>
+        </where>
+    </select>
+    <select id="getShippingInfoByCustomerName" resultType="com.ruoyi.sales.pojo.ShippingInfo">
+        select * from shipping_info si
+        left join sales_ledger sl on si.sales_ledger_id = sl.id
+        where  sl.customer_name = #{customerName}
+    </select>
+</mapper>

--
Gitblit v1.9.3