From 684e4306a08feeae188070f264148e6765da8dcf Mon Sep 17 00:00:00 2001
From: 云 <2163098428@qq.com>
Date: 星期日, 20 九月 2026 19:25:15 +0800
Subject: [PATCH] feat(account): 更新往来付款回款流水表及接口
---
src/main/resources/mapper/basic/SupplierManageMapper.xml | 51 ++++++++++++++-------------------------------------
1 files changed, 14 insertions(+), 37 deletions(-)
diff --git a/src/main/resources/mapper/basic/SupplierManageMapper.xml b/src/main/resources/mapper/basic/SupplierManageMapper.xml
index 299274c..bcadd9e 100644
--- a/src/main/resources/mapper/basic/SupplierManageMapper.xml
+++ b/src/main/resources/mapper/basic/SupplierManageMapper.xml
@@ -74,26 +74,12 @@
sm.supplier_name,
T1.contractAmounts,
IFNULL(T2.paymentAmount, 0) AS paymentAmount,
- IFNULL(T3.InboundAmount, 0) - IFNULL(T4.returnAmount, 0) AS payableAmount
+ IFNULL(T5.paymentRecordAmount, 0) AS paymentRecordAmount,
+ T1.contractAmounts - IFNULL(T2.paymentAmount, 0) - IFNULL(T4.returnAmount, 0) AS payableAmount,
+ IFNULL(T4.returnAmount, 0) AS returnAmount
from (select supplier_id, sum(contract_amount) as contractAmounts from purchase_ledger group by supplier_id) T1
left join (select supplier_id, sum(payment_amount) as paymentAmount from account_purchase_payment group by supplier_id) T2 on T1.supplier_id = T2.supplier_id
- left join (
- SELECT
- pl.supplier_id,
- sum(sir.stock_in_num * slp.tax_inclusive_unit_price) AS InboundAmount
- FROM stock_in_record sir
- -- 10 绫诲瀷鎵嶅叧鑱旇川妫�琛�
- LEFT JOIN quality_inspect qi ON sir.record_type = 10 AND sir.record_id = qi.id
- -- 鍔ㄦ�佸叧鑱旈噰璐紙鑷姩閫傞厤 7 鍜� 10锛�
- LEFT JOIN purchase_ledger pl
- ON pl.id = IF(sir.record_type = 7, sir.record_id, qi.purchase_ledger_id)
- -- 浜у搧鍏宠仈涓嶅姩
- LEFT JOIN sales_ledger_product slp ON pl.id = slp.sales_ledger_id
- -- 鏉′欢
- WHERE sir.approval_status = 1 AND slp.type = 2
- AND sir.record_type IN ('7','10')
- group by pl.supplier_id
- ) T3 on T3.supplier_id=T1.supplier_id
+ left join (select party_id, sum(amount) as paymentRecordAmount from payment_record where party_type = 2 and direction = 2 group by party_id) T5 on T5.party_id = T1.supplier_id
left join (
select
supplier_id,
@@ -114,9 +100,11 @@
select pl.id purchaseLedgerId,
pl.purchase_contract_number,
pl.execution_date,
- pl.contract_amount,
+ pl.contract_amount AS contract_amount,
IFNULL(T1.paymentAmount, 0) AS paymentAmount,
- IFNULL(T2.InboundAmount, 0) - IFNULL(T3.returnAmount, 0) AS payableAmount
+ IFNULL(T5.paymentRecordAmount, 0) AS paymentRecordAmount,
+ pl.contract_amount - IFNULL(T1.paymentAmount, 0) - IFNULL(T3.returnAmount, 0) AS payableAmount,
+ IFNULL(T3.returnAmount, 0) AS returnAmount
from purchase_ledger pl
left join (
select
@@ -135,29 +123,18 @@
group by pl.id
)T1 on T1.id = pl.id
left join (
- SELECT
- pl.id,
- sum(sir.stock_in_num * slp.tax_inclusive_unit_price) AS InboundAmount
- FROM stock_in_record sir
- -- 10 绫诲瀷鎵嶅叧鑱旇川妫�琛�
- LEFT JOIN quality_inspect qi ON sir.record_type = 10 AND sir.record_id = qi.id
- -- 鍔ㄦ�佸叧鑱旈噰璐紙鑷姩閫傞厤 7 鍜� 10锛�
- LEFT JOIN purchase_ledger pl
- ON pl.id = IF(sir.record_type = 7, sir.record_id, qi.purchase_ledger_id)
- -- 浜у搧鍏宠仈涓嶅姩
- LEFT JOIN sales_ledger_product slp ON pl.id = slp.sales_ledger_id
- -- 鏉′欢
- WHERE sir.approval_status = 1 AND slp.type = 2
- AND sir.record_type IN ('7','10')
- group by pl.id
- )T2 on T2.id = pl.id
- left join (
select pl.id,
sum(pro.total_amount) as returnAmount
from purchase_return_orders pro
left join purchase_ledger pl on pro.purchase_ledger_id = pl.id
group by pl.id
)T3 on T3.id = pl.id
+ left join (
+ select party_id, sum(amount) as paymentRecordAmount
+ from payment_record
+ where party_type = 2 and direction = 2
+ group by party_id
+ )T5 on T5.party_id = pl.supplier_id
where pl.supplier_id = #{supplierId}
order by pl.id desc
</select>
--
Gitblit v1.9.3