From 63ccaee5545740122a9d58983aa75d9da9de7530 Mon Sep 17 00:00:00 2001 From: chenrui <1187576398@qq.com> Date: 星期一, 26 五月 2025 13:46:11 +0800 Subject: [PATCH] 回款登记功能修改 --- src/main/resources/mapper/sales/ReceiptPaymentMapper.xml | 123 ++++++++++++++++++++++++++++++++++++++++- 1 files changed, 120 insertions(+), 3 deletions(-) diff --git a/src/main/resources/mapper/sales/ReceiptPaymentMapper.xml b/src/main/resources/mapper/sales/ReceiptPaymentMapper.xml index 8490cba..8d185da 100644 --- a/src/main/resources/mapper/sales/ReceiptPaymentMapper.xml +++ b/src/main/resources/mapper/sales/ReceiptPaymentMapper.xml @@ -3,7 +3,36 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="com.ruoyi.sales.mapper.ReceiptPaymentMapper"> - <select id="invoiceLedgerPage" resultType="com.ruoyi.sales.dto.ReceiptPaymentDto"> + <select id="receiptPaymentListPage" resultType="com.ruoyi.sales.dto.ReceiptPaymentDto"> + SELECT + T4.customer_id, + IFNULL(T5.invoice_total,0) AS invoice_total, + T1.receipt_payment_amount, + T1.receipt_payment_date + 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 T4.id = T3.sales_ledger_id + LEFT JOIN ( + SELECT + T3.customer_id, + SUM( invoice_total ) AS invoice_total + FROM + invoice_ledger T1 + LEFT JOIN invoice_registration_product T2 ON T1.invoice_registration_product_id = T2.id + LEFT JOIN sales_ledger T3 ON T3.id = T2.sales_ledger_id + GROUP BY T3.customer_id + ) T5 ON T5.customer_id = T4.customer_id + <where> + <if test="receiptPaymentDto.customerId != null"> + AND T4.customer_id = #{receiptPaymentDto.customerId} + </if> + </where> + ORDER BY T1.receipt_payment_date ASC + </select> + + <select id="receiptPaymentInfo" resultType="com.ruoyi.sales.dto.ReceiptPaymentDto"> SELECT T1.id , T1.sales_ledger_id , @@ -20,9 +49,97 @@ T1.create_user , T1.update_time , T1.update_user , - T1.tenant_id , + T1.tenant_id, + T1.invoice_ledger_id, + T3.customer_contract_no, + T2.customer_name FROM receipt_payment T1 - LEFT JOIN customer T2 ON T1.customer_id = T2.id + LEFT JOIN customer T2 ON T1.customer_id = T2.id + LEFT JOIN sales_ledger T3 ON T1.sales_ledger_id = T3.id + WHERE T1.id = #{id} + </select> + + <select id="bindInvoiceNoRegPage" resultType="com.ruoyi.sales.dto.ReceiptPaymentDto"> + SELECT + T1.id , + T1.invoice_no , + T1.invoice_total , + T1.invoice_person , + T1.invoice_date , + T1.create_time , + T1.create_user , + T1.update_time , + T1.update_user , + T1.tenant_id , + T2.tax_rate, + T3.sales_contract_no, + T3.customer_contract_no, + T3.customer_name, + T4.invoiceFileName, + T5.product_category, + IFNULL(T6.receipt_payment_amount_total ,0) AS receipt_payment_amount_total, + (T1.invoice_total - IFNULL(T6.receipt_payment_amount_total ,0)) AS no_receipt_amount + FROM invoice_ledger T1 + LEFT JOIN invoice_registration_product T2 ON T2.id = T1.invoice_registration_product_id + LEFT JOIN sales_ledger T3 ON T3.id = T2.sales_ledger_id + LEFT JOIN ( + SELECT + invoice_ledger_id, + GROUP_CONCAT( name ORDER BY id ASC SEPARATOR ' | ') AS invoiceFileName + FROM invoice_ledger_file GROUP BY invoice_ledger_id + ) T4 ON T4.invoice_ledger_id = T1.id + LEFT JOIN sales_ledger_product T5 ON T2.sales_ledger_product_id = T5.id + LEFT JOIN ( + SELECT SUM(receipt_payment_amount) AS receipt_payment_amount_total,invoice_ledger_id FROM receipt_payment GROUP BY invoice_ledger_id + ) T6 ON T1.id = T6.invoice_ledger_id + ORDER BY T2.create_time DESC + </select> + + <select id="invoiceInfo" resultType="com.ruoyi.sales.dto.InvoiceLedgerDto"> + SELECT + T1.id, + T1.invoice_no, + T1.invoice_total , + T2.tax_rate, + T3.customer_name, + T3.sales_contract_no + FROM + invoice_ledger T1 + LEFT JOIN + invoice_registration_product T2 ON T1.invoice_registration_product_id = T2.id + LEFT JOIN sales_ledger T3 ON T3.id = T2.sales_ledger_id + WHERE T1.id = #{id} + </select> + + <select id="getReceiptAmount" resultType="java.math.BigDecimal"> + SELECT + SUM( receipt_payment_amount ) AS total_amount + FROM + ( + SELECT + T1.receipt_payment_amount + 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 T4.id = T3.sales_ledger_id + LEFT JOIN ( + SELECT + T3.customer_id, + SUM( invoice_total ) AS invoice_total + FROM + invoice_ledger T1 + LEFT JOIN invoice_registration_product T2 ON T1.invoice_registration_product_id = T2.id + LEFT JOIN sales_ledger T3 ON T3.id = T2.sales_ledger_id + GROUP BY + T3.customer_id + ) T5 ON T5.customer_id = T4.customer_id + WHERE + T4.customer_id = #{customerId} + + ORDER BY + T1.receipt_payment_date ASC + LIMIT #{total} ) AS limited_rows </select> </mapper> \ No newline at end of file -- Gitblit v1.9.3