From 0e420d68f407fde240709ac1800da20b0bb99490 Mon Sep 17 00:00:00 2001
From: liding <756868258@qq.com>
Date: 星期二, 09 六月 2026 16:06:16 +0800
Subject: [PATCH] feat:反审核操作。可以对已审核的订单进行反审核,反审核的时候可以选择作废还是重新生成一条,并记录反审核描述。选择作废的话则不生成新增订单。选择重新生成的话则跳转到新增台账页面对反审核的销售产品进行编辑保存重新生成一条新增的订单。反审核的订单即使是发货了还是可以反审核,并且需要将对应的入库、出库、发货进行作废。
---
src/main/resources/mapper/purchase/PaymentRegistrationMapper.xml | 52 +++++++++++++++++++++++++++++++++++++---------------
1 files changed, 37 insertions(+), 15 deletions(-)
diff --git a/src/main/resources/mapper/purchase/PaymentRegistrationMapper.xml b/src/main/resources/mapper/purchase/PaymentRegistrationMapper.xml
index c5c007e..bd3339f 100644
--- a/src/main/resources/mapper/purchase/PaymentRegistrationMapper.xml
+++ b/src/main/resources/mapper/purchase/PaymentRegistrationMapper.xml
@@ -187,37 +187,59 @@
SELECT
T1.supplier_id,
T1.supplier_name,
- SUM(contract_amount) AS invoiceAmount,
- IFNULL( SUM(T2.current_payment_amount) , 0 ) AS paymentAmount,
- IFNULL((IFNULL(SUM(contract_amount),0) - IFNULL(SUM(T2.current_payment_amount),0)),0) AS payableAmount
- FROM purchase_ledger T1
- LEFT JOIN payment_registration T2 ON T1.id = T2.purchase_ledger_id
+ T1.invoiceAmount,
+ IFNULL(T2.paymentAmount, 0) AS paymentAmount,
+ (T1.invoiceAmount - IFNULL(T2.paymentAmount, 0)) AS payableAmount
+ FROM (
+ SELECT
+ supplier_id,
+ supplier_name,
+ SUM(contract_amount) AS invoiceAmount
+ FROM purchase_ledger
<where>
<if test="req.supplierName != null and req.supplierName != '' ">
- T1.supplier_name LIKE CONCAT ('%',#{req.supplierName},'%')
+ AND supplier_name LIKE CONCAT ('%',#{req.supplierName},'%')
</if>
</where>
- GROUP BY T1.supplier_name
+ GROUP BY supplier_id, supplier_name
+ ) T1
+ LEFT JOIN (
+ SELECT
+ supplier_id,
+ SUM(current_payment_amount) AS paymentAmount
+ FROM payment_registration
+ GROUP BY supplier_id
+ ) T2 ON T1.supplier_id = T2.supplier_id
</select>
<select id="supplierNameListPageDetails" resultType="com.ruoyi.purchase.dto.PaymentRegistrationDto">
SELECT
- T1.supplier_id,
- T1.supplier_name,
- SUM(contract_amount) AS invoiceAmount,
- IFNULL( SUM(T2.current_payment_amount) , 0 ) AS paymentAmount,
- IFNULL((IFNULL(SUM(contract_amount),0) - IFNULL(SUM(T2.current_payment_amount),0)),0) AS payableAmount,
+ T2.id,
T1.purchase_contract_number,
+ T1.contract_amount AS invoiceAmount,
+ IFNULL(T2.current_payment_amount, 0) AS paymentAmount,
+ IFNULL((
+ T1.contract_amount - IFNULL((
+ SELECT SUM(T3.current_payment_amount)
+ FROM payment_registration T3
+ WHERE T3.purchase_ledger_id = T1.id
+ AND (
+ T3.payment_date < T2.payment_date
+ OR (T3.payment_date = T2.payment_date AND T3.id <= T2.id)
+ )
+ ), 0)
+ ), 0) AS payableAmount,
T2.payment_date
FROM purchase_ledger T1
INNER JOIN payment_registration T2 ON T1.id = T2.purchase_ledger_id
<where>
T1.supplier_id = #{req.supplierId}
<if test="req.supplierName != null and req.supplierName != '' ">
- T1.supplier_name LIKE CONCAT ('%',#{req.supplierName},'%')
+ AND T1.supplier_name LIKE CONCAT ('%', #{req.supplierName}, '%')
</if>
</where>
- GROUP BY T1.purchase_contract_number,T2.payment_date
+ ORDER BY T2.payment_date ASC, T2.id ASC
+
</select>
-</mapper>
\ No newline at end of file
+</mapper>
--
Gitblit v1.9.3