From 26f5c141829cecd1c1987b6f104e144336e407ff Mon Sep 17 00:00:00 2001
From: buhuazhen <hua100783@gmail.com>
Date: 星期五, 29 五月 2026 16:20:04 +0800
Subject: [PATCH] feat: 库存管理出库 显示对应信息

---
 src/main/resources/mapper/stock/StockOutRecordMapper.xml |   30 ++++++++++++++++++++++++++++--
 1 files changed, 28 insertions(+), 2 deletions(-)

diff --git a/src/main/resources/mapper/stock/StockOutRecordMapper.xml b/src/main/resources/mapper/stock/StockOutRecordMapper.xml
index a441de9..9222529 100644
--- a/src/main/resources/mapper/stock/StockOutRecordMapper.xml
+++ b/src/main/resources/mapper/stock/StockOutRecordMapper.xml
@@ -23,11 +23,24 @@
         p.product_name as productName,
         pm.model,
         pm.unit,
-        u.nick_name as createBy
+        u.nick_name as createBy,
+        CASE sor.record_type
+            WHEN '3' THEN ppm.product_no
+            WHEN '8' THEN sl.sales_contract_no
+            WHEN '9' THEN pr.no
+            WHEN '13' THEN si.shipping_no
+            WHEN '1' THEN sor.remark
+            WHEN '10' THEN sor.remark
+            ELSE NULL
+        END as sourceNo
         FROM stock_out_record as sor
         LEFT JOIN product_model as pm on sor.product_model_id = pm.id
         LEFT JOIN product as p on pm.product_id = p.id
         LEFT JOIN sys_user as u on sor.create_user = u.user_id
+        LEFT JOIN production_product_main as ppm on sor.record_type = '3' and sor.record_id = ppm.id
+        LEFT JOIN sales_ledger as sl on sor.record_type = '8' and sor.record_id = sl.id
+        LEFT JOIN purchase_return_orders as pr on sor.record_type = '9' and sor.record_id = pr.id
+        LEFT JOIN shipping_info as si on sor.record_type = '13' and sor.record_id = si.id
         <where>
             <if test="params.timeStr != null and params.timeStr != ''">
                 and sor.create_time like concat('%',#{params.timeStr},'%')
@@ -50,11 +63,24 @@
         p.product_name as productName,
         pm.model,
         pm.unit,
-        u.nick_name as createBy
+        u.nick_name as createBy,
+        CASE sor.record_type
+            WHEN '3' THEN ppm.product_no
+            WHEN '8' THEN sl.sales_contract_no
+            WHEN '9' THEN pr.no
+            WHEN '13' THEN si.shipping_no
+            WHEN '1' THEN sor.remark
+            WHEN '10' THEN sor.remark
+            ELSE NULL
+        END as sourceNo
         FROM stock_out_record as sor
         LEFT JOIN product_model as pm on sor.product_model_id = pm.id
         LEFT JOIN product as p on pm.product_id = p.id
         LEFT JOIN sys_user as u on sor.create_user = u.user_id
+        LEFT JOIN production_product_main as ppm on sor.record_type = '3' and sor.record_id = ppm.id
+        LEFT JOIN sales_ledger as sl on sor.record_type = '8' and sor.record_id = sl.id
+        LEFT JOIN purchase_return_orders as pr on sor.record_type = '9' and sor.record_id = pr.id
+        LEFT JOIN shipping_info as si on sor.record_type = '13' and sor.record_id = si.id
         <where>
             <if test="params.timeStr != null and params.timeStr != ''">
                 and sor.create_time like concat('%',#{params.timeStr},'%')

--
Gitblit v1.9.3