| | |
| | | |
| | | <select id="invoiceLedgerSalesAccount" resultType="com.ruoyi.sales.dto.InvoiceLedgerDto"> |
| | | SELECT |
| | | T1.customer_id AS id, |
| | | T1.customer_name, |
| | | SUM(T1.contract_amount) AS invoice_total, |
| | | IFNULL(SUM(T2.receipt_payment_amount), 0) AS receipt_payment_amount, |
| | | IFNULL(SUM(T1.contract_amount) - IFNULL(SUM(T2.receipt_payment_amount), 0), 0) AS unReceipt_payment_amount |
| | | FROM ( |
| | | SELECT id,customer_id, customer_name, SUM(contract_amount) contract_amount |
| | | FROM sales_ledger |
| | | GROUP BY customer_id, customer_name |
| | | ) T1 |
| | | LEFT JOIN ( |
| | | SELECT sales_ledger_id, SUM(receipt_payment_amount) receipt_payment_amount |
| | | FROM receipt_payment |
| | | GROUP BY sales_ledger_id |
| | | ) T2 ON T1.id = T2.sales_ledger_id |
| | | <where> |
| | | <if test="invoiceLedgerDto.searchText != null and invoiceLedgerDto.searchText != '' "> |
| | | T1.customer_name LIKE CONCAT('%',#{invoiceLedgerDto.searchText},'%') |
| | | </if> |
| | | </where> |
| | | GROUP BY T1.customer_id, T1.customer_name |
| | | T1.customer_id AS id, |
| | | T1.customer_name, |
| | | T1.invoice_total, |
| | | IFNULL(T2.receipt_payment_amount, 0) AS receipt_payment_amount, |
| | | IFNULL(T2.unReceipt_payment_amount, 0) AS unReceipt_payment_amount |
| | | FROM ( |
| | | SELECT |
| | | customer_id, |
| | | customer_name, |
| | | SUM(contract_amount) AS invoice_total |
| | | FROM sales_ledger |
| | | GROUP BY customer_id, customer_name |
| | | ) T1 |
| | | LEFT JOIN ( |
| | | SELECT |
| | | sl.customer_id, |
| | | SUM(IFNULL(slp.shipped_quantity, 0) * IFNULL(slp.tax_inclusive_unit_price, 0)) AS receipt_payment_amount, |
| | | SUM((IFNULL(slp.stocked_quantity, 0) - IFNULL(slp.shipped_quantity, 0)) * IFNULL(slp.tax_inclusive_unit_price, 0)) AS unReceipt_payment_amount |
| | | FROM sales_ledger sl |
| | | JOIN sales_ledger_product slp ON sl.id = slp.sales_ledger_id AND slp.type = 1 |
| | | GROUP BY sl.customer_id |
| | | ) T2 ON T1.customer_id = T2.customer_id |
| | | <where> |
| | | <if test="invoiceLedgerDto.searchText != null and invoiceLedgerDto.searchText != '' "> |
| | | T1.customer_name LIKE CONCAT('%',#{invoiceLedgerDto.searchText},'%') |
| | | </if> |
| | | </where> |
| | | </select> |
| | | |
| | | <select id="invoiceLedgerProductInfo" resultType="com.ruoyi.sales.dto.InvoiceRegistrationProductDto"> |