From 9bb07cede2c66972526ee3ace524991570c1a31c Mon Sep 17 00:00:00 2001
From: 云 <2163098428@qq.com>
Date: 星期二, 26 五月 2026 17:07:37 +0800
Subject: [PATCH] fix(account): 修复出库金额计算中的除零错误

---
 src/main/resources/mapper/basic/CustomerMapper.xml                          |    4 ++--
 src/main/resources/mapper/stock/StockOutRecordMapper.xml                    |    2 +-
 src/main/resources/mapper/account/sales/AccountSalesCollectionMapper.xml    |    2 +-
 src/main/resources/mapper/account/sales/AccountInvoiceApplicationMapper.xml |    2 +-
 4 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/src/main/resources/mapper/account/sales/AccountInvoiceApplicationMapper.xml b/src/main/resources/mapper/account/sales/AccountInvoiceApplicationMapper.xml
index 842e94c..05c014c 100644
--- a/src/main/resources/mapper/account/sales/AccountInvoiceApplicationMapper.xml
+++ b/src/main/resources/mapper/account/sales/AccountInvoiceApplicationMapper.xml
@@ -36,7 +36,7 @@
         p.product_name,
         pm.model as specification_model,
         slp.tax_rate,
-        sor.stock_out_num * slp.tax_inclusive_unit_price as outboundAmount,
+        sor.stock_out_num * slp.tax_inclusive_unit_price / IFNULL(NULLIF(slp.single_quantity, 0), 1) as outboundAmount,
         s.shipping_no,
         sl.sales_contract_no
         FROM stock_out_record sor
diff --git a/src/main/resources/mapper/account/sales/AccountSalesCollectionMapper.xml b/src/main/resources/mapper/account/sales/AccountSalesCollectionMapper.xml
index 4ad55d4..90e8618 100644
--- a/src/main/resources/mapper/account/sales/AccountSalesCollectionMapper.xml
+++ b/src/main/resources/mapper/account/sales/AccountSalesCollectionMapper.xml
@@ -65,7 +65,7 @@
         p.product_name,
         pm.model as specification_model,
         slp.tax_rate,
-        sor.stock_out_num * slp.tax_inclusive_unit_price as outboundAmount,
+        sor.stock_out_num * slp.tax_inclusive_unit_price / IFNULL(NULLIF(slp.single_quantity, 0), 1) as outboundAmount,
         s.shipping_no,
         sl.sales_contract_no
         FROM stock_out_record sor
diff --git a/src/main/resources/mapper/basic/CustomerMapper.xml b/src/main/resources/mapper/basic/CustomerMapper.xml
index 8117c66..25b98fa 100644
--- a/src/main/resources/mapper/basic/CustomerMapper.xml
+++ b/src/main/resources/mapper/basic/CustomerMapper.xml
@@ -118,7 +118,7 @@
         left join (
             SELECT
                 sl.customer_id,
-                sum(sor.stock_out_num * slp.tax_inclusive_unit_price) as outboundAmount
+                sum(sor.stock_out_num * slp.tax_inclusive_unit_price / IFNULL(NULLIF(slp.single_quantity, 0), 1)) as outboundAmount
             FROM stock_out_record sor
             LEFT join shipping_info s on sor.record_id = s.id
             LEFT JOIN sales_ledger sl ON s.sales_ledger_id = sl.id
@@ -169,7 +169,7 @@
         left join (
             SELECT
                 sl.id,
-                sum(sor.stock_out_num * slp.tax_inclusive_unit_price) as outboundAmount
+                sum(sor.stock_out_num * slp.tax_inclusive_unit_price / IFNULL(NULLIF(slp.single_quantity, 0), 1)) as outboundAmount
             FROM stock_out_record sor
                      left join shipping_info s on sor.record_id = s.id
                      LEFT JOIN sales_ledger sl ON s.sales_ledger_id = sl.id
diff --git a/src/main/resources/mapper/stock/StockOutRecordMapper.xml b/src/main/resources/mapper/stock/StockOutRecordMapper.xml
index ad5976f..43a20c4 100644
--- a/src/main/resources/mapper/stock/StockOutRecordMapper.xml
+++ b/src/main/resources/mapper/stock/StockOutRecordMapper.xml
@@ -101,7 +101,7 @@
         p.product_name,
         pm.model as specification_model,
         slp.tax_rate,
-        sor.stock_out_num * slp.tax_inclusive_unit_price as outboundAmount,
+        sor.stock_out_num * slp.tax_inclusive_unit_price / IFNULL(NULLIF(slp.single_quantity, 0), 1) as outboundAmount,
         s.shipping_no,
         sl.sales_contract_no
         FROM stock_out_record sor

--
Gitblit v1.9.3