From d2885d323c9a75e62e49b7cb5ba48165e0e489bf Mon Sep 17 00:00:00 2001
From: liyong <18434998025@163.com>
Date: 星期四, 19 六月 2025 16:51:44 +0800
Subject: [PATCH] 2025-06-19 参数修改
---
src/main/resources/mapper/sales/ReceiptPaymentMapper.xml | 161 +++++++++++++++++++++++++++++++++++++++--------------
1 files changed, 118 insertions(+), 43 deletions(-)
diff --git a/src/main/resources/mapper/sales/ReceiptPaymentMapper.xml b/src/main/resources/mapper/sales/ReceiptPaymentMapper.xml
index 4ca0202..6f7a62d 100644
--- a/src/main/resources/mapper/sales/ReceiptPaymentMapper.xml
+++ b/src/main/resources/mapper/sales/ReceiptPaymentMapper.xml
@@ -64,6 +64,7 @@
T1.id ,
T1.invoice_no ,
T1.invoice_total ,
+ T3.project_name,
T1.invoice_person ,
T1.invoice_date ,
T1.create_time ,
@@ -172,7 +173,8 @@
T1.receipt_payment_amount,
T1.receipt_payment_type,
T1.registrant,
- T1.create_time
+ T1.create_time,
+ T4.project_name
FROM
receipt_payment T1
LEFT JOIN
@@ -184,55 +186,128 @@
<if test="params.searchText != null and params.searchText != '' ">
T5.customer_name LIKE CONCAT('%',#{params.searchText},'%')
</if>
+ <if test="params.receiptPaymentDateStart != null and params.receiptPaymentDateStart != '' ">
+ AND T1.receipt_payment_date >= date_format(#{params.receiptPaymentDateStart},'%Y-%m-%d')
+ </if>
+ <if test="params.receiptPaymentDateEnd != null and params.receiptPaymentDateEnd != '' ">
+ AND T1.receipt_payment_date <= date_format(#{params.receiptPaymentDateEnd}, '%Y-%m-%d')
+ </if>
</where>
ORDER BY T1.receipt_payment_date DESC
</select>
+
+
+
+<!-- SELECT-->
+<!-- *-->
+<!-- FROM-->
+<!-- (-->
+<!-- SELECT-->
+<!-- receipt_payment_amount AS receiptAmount,-->
+<!-- receipt_payment_date AS happenTime,-->
+<!-- 0 AS type,-->
+<!-- 0 AS invoiceAmount-->
+<!-- FROM-->
+<!-- receipt_payment-->
+<!-- WHERE-->
+<!-- invoice_ledger_id IN (-->
+<!-- SELECT-->
+<!-- id-->
+<!-- FROM-->
+<!-- invoice_ledger-->
+<!-- WHERE-->
+<!-- invoice_registration_product_id IN (-->
+<!-- SELECT-->
+<!-- id-->
+<!-- FROM-->
+<!-- invoice_registration_product-->
+<!-- WHERE-->
+<!-- sales_ledger_id IN ( SELECT id FROM sales_ledger WHERE customer_id = #{customerId} ))) UNION-->
+<!-- SELECT-->
+<!-- 0 AS receiptAmount,-->
+<!-- invoice_date AS happenTime,-->
+<!-- 1 AS type,-->
+<!-- invoice_total AS invoiceAmount-->
+<!-- FROM-->
+<!-- invoice_ledger-->
+<!-- WHERE-->
+<!-- invoice_registration_product_id IN (-->
+<!-- SELECT-->
+<!-- id-->
+<!-- FROM-->
+<!-- invoice_registration_product-->
+<!-- WHERE-->
+<!-- sales_ledger_id IN ( SELECT id FROM sales_ledger WHERE customer_id = #{customerId} ))-->
+<!-- AND invoice_date IS NOT NULL-->
+<!-- ) T1-->
+<!-- ORDER BY-->
+<!-- T1.happenTime ASC-->
+
+
<select id="customerInteractions" resultType="com.ruoyi.sales.dto.CustomerInteractionDto">
SELECT
- *
+ rp.receipt_payment_amount AS receiptAmount,
+ rp.receipt_payment_date AS happenTime,
+ 0 AS type,
+ 0 AS invoiceAmount
FROM
- (
- SELECT
- receipt_payment_amount AS receiptAmount,
- receipt_payment_date AS happenTime,
- 0 AS type,
- 0 AS invoiceAmount
- FROM
- receipt_payment
- WHERE
- invoice_ledger_id IN (
- SELECT
- id
- FROM
- invoice_ledger
- WHERE
- invoice_registration_product_id IN (
- SELECT
- id
- FROM
- invoice_registration_product
- WHERE
- sales_ledger_id IN ( SELECT id FROM sales_ledger WHERE customer_id = #{customerId} ))) UNION
- SELECT
- 0 AS receiptAmount,
- invoice_date AS happenTime,
- 1 AS type,
- invoice_total AS invoiceAmount
- FROM
- invoice_ledger
- WHERE
- invoice_registration_product_id IN (
- SELECT
- id
- FROM
- invoice_registration_product
- WHERE
- sales_ledger_id IN ( SELECT id FROM sales_ledger WHERE customer_id = #{customerId} ))
- AND invoice_date IS NOT NULL
- ) T1
- ORDER BY
- T1.happenTime ASC
+ receipt_payment rp
+ WHERE EXISTS (
+ SELECT 1
+ FROM invoice_ledger il
+ JOIN invoice_registration_product irp ON il.invoice_registration_product_id = irp.id
+ JOIN sales_ledger sl ON irp.sales_ledger_id = sl.id
+ WHERE sl.customer_id = #{customerId}
+ AND rp.invoice_ledger_id = il.id
+ )
+
+ UNION ALL
+
+ SELECT
+ 0 AS receiptAmount,
+ il.invoice_date AS happenTime,
+ 1 AS type,
+ il.invoice_total AS invoiceAmount
+ FROM
+ invoice_ledger il
+ JOIN invoice_registration_product irp ON il.invoice_registration_product_id = irp.id
+ JOIN sales_ledger sl ON irp.sales_ledger_id = sl.id
+ WHERE
+ sl.customer_id = #{customerId}
+ AND il.invoice_date IS NOT NULL
+
+ ORDER BY happenTime ASC;
+ </select>
+
+ <select id="receiptPaymentHistoryListNoPage" resultType="com.ruoyi.sales.dto.ReceiptPaymentDto">
+ SELECT
+ T1.id,
+ T1.receipt_payment_date,
+ T5.customer_name,
+ T1.receipt_payment_amount,
+ T1.receipt_payment_type,
+ T1.registrant,
+ T1.create_time
+ FROM
+ receipt_payment T1
+ LEFT JOIN
+ invoice_ledger T2 ON T1.invoice_ledger_id = T2.id
+ LEFT JOIN invoice_registration_product T3 ON T2.invoice_registration_product_id = T3.id
+ LEFT JOIN sales_ledger T4 ON T3.sales_ledger_id = T4.id
+ LEFT JOIN customer T5 ON T5.id = T4.customer_id
+ WHERE T1.invoice_ledger_id = #{params.invoiceLedgerId}
+ ORDER BY T1.receipt_payment_date DESC
+ </select>
+
+ <select id="receiptPaymentListByProdRegId" resultType="com.ruoyi.sales.pojo.ReceiptPayment">
+ SELECT
+ T1.*
+ FROM
+ receipt_payment T1
+ LEFT JOIN invoice_ledger T2 ON T1.invoice_ledger_id = T2.id
+ WHERE
+ T2.invoice_registration_product_id = #{invoiceRegistrationProductId}
</select>
</mapper>
\ No newline at end of file
--
Gitblit v1.9.3