From 3ac318e2f614e8c57a0a9a6d175d2909ba1dbc21 Mon Sep 17 00:00:00 2001
From: zss <zss@example.com>
Date: 星期四, 21 五月 2026 14:20:45 +0800
Subject: [PATCH] feat(purchase): 新增供应商往来及往来明细接口功能

---
 src/main/resources/mapper/purchase/PurchaseLedgerMapper.xml |   53 +++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 53 insertions(+), 0 deletions(-)

diff --git a/src/main/resources/mapper/purchase/PurchaseLedgerMapper.xml b/src/main/resources/mapper/purchase/PurchaseLedgerMapper.xml
index a99d356..ecdd1f3 100644
--- a/src/main/resources/mapper/purchase/PurchaseLedgerMapper.xml
+++ b/src/main/resources/mapper/purchase/PurchaseLedgerMapper.xml
@@ -16,6 +16,59 @@
         GROUP BY dateStr
     </select>
 
+    <select id="selectPurchaseLedgerListPage" resultType="com.ruoyi.purchase.dto.PurchaseLedgerDto">
+        SELECT
+        pl.id,
+        pl.purchase_contract_number,
+        pl.sales_contract_no,
+        pl.supplier_id,
+        pl.supplier_name,
+        pl.project_name,
+        pl.contract_amount,
+        pl.entry_date,
+        pl.execution_date,
+        pl.recorder_id,
+        pl.recorder_name,
+        pl.template_name,
+        pl.approve_user_ids,
+        sm.is_white,
+        pl.approval_status,
+        pl.payment_method,
+        pl.remarks
+        FROM purchase_ledger pl
+        LEFT JOIN supplier_manage sm ON pl.supplier_id = sm.id
+        <where>
+            <if test="c.purchaseContractNumber != null and c.purchaseContractNumber != ''">
+                AND pl.purchase_contract_number LIKE CONCAT('%', #{c.purchaseContractNumber}, '%')
+            </if>
+            <if test="c.approvalStatus != null and c.approvalStatus != ''">
+                AND pl.approval_status = #{c.approvalStatus}
+            </if>
+            <if test="c.supplierName != null and c.supplierName != ''">
+                AND pl.supplier_name LIKE CONCAT('%', #{c.supplierName}, '%')
+            </if>
+            <if test="c.salesContractNo != null and c.salesContractNo != ''">
+                AND pl.sales_contract_no LIKE CONCAT('%', #{c.salesContractNo}, '%')
+            </if>
+            <if test="c.projectName != null and c.projectName != ''">
+                AND pl.project_name LIKE CONCAT('%', #{c.projectName}, '%')
+            </if>
+            <if test="c.entryDateStart != null and c.entryDateStart != ''">
+                AND pl.entry_date &gt;= #{c.entryDateStart}
+            </if>
+            <if test="c.entryDateEnd != null and c.entryDateEnd != ''">
+                AND pl.entry_date &lt;= #{c.entryDateEnd}
+            </if>
+            <if test="c.supplierId != null">
+                AND pl.supplier_id = #{c.supplierId}
+            </if>
+            <if test="c.approvalStatus != null">
+                AND pl.approval_status = #{c.approvalStatus}
+            </if>
+        </where>
+        ORDER BY pl.entry_date DESC
+    </select>
+
     <select id="selectTotalPurchaseAmount" resultType="java.math.BigDecimal">
         SELECT IFNULL(SUM(contract_amount), 0)
         FROM purchase_ledger

--
Gitblit v1.9.3