From 47806d9e390ee00e1d29ad1da8c1aa908882a758 Mon Sep 17 00:00:00 2001
From: yuan <123@>
Date: 星期二, 11 八月 2026 14:43:59 +0800
Subject: [PATCH] 用河南鹤壁代码覆盖山西长治
---
src/main/resources/mapper/purchase/PurchaseLedgerMapper.xml | 69 +++++++++-------------------------
1 files changed, 19 insertions(+), 50 deletions(-)
diff --git a/src/main/resources/mapper/purchase/PurchaseLedgerMapper.xml b/src/main/resources/mapper/purchase/PurchaseLedgerMapper.xml
index 8b94eb7..ea98e2b 100644
--- a/src/main/resources/mapper/purchase/PurchaseLedgerMapper.xml
+++ b/src/main/resources/mapper/purchase/PurchaseLedgerMapper.xml
@@ -6,8 +6,7 @@
<update id="updateContractAmountById">
UPDATE purchase_ledger
- SET contract_amount = #{totalTaxInclusiveAmount},
- net_contract_amount = #{totalTaxInclusiveAmount}
+ SET contract_amount = #{totalTaxInclusiveAmount}
WHERE id = #{id}
</update>
<select id="selectPurchaseStats" resultType="com.ruoyi.home.dto.IncomeExpenseAnalysisDto">
@@ -28,7 +27,6 @@
pl.supplier_name,
pl.project_name,
pl.contract_amount,
- pl.net_contract_amount,
pl.entry_date,
pl.execution_date,
pl.recorder_id,
@@ -90,6 +88,23 @@
AND slp.sales_ledger_id = qi.purchase_ledger_id
AND slp.product_model_id = qi.product_model_id
WHERE sir.approval_status = 1
+
+ UNION ALL
+
+ SELECT slp.id AS sales_ledger_product_id,
+ sir.stock_in_num
+ FROM stock_in_record sir
+ INNER JOIN quality_unqualified qu
+ ON TRIM(sir.record_type) = '11'
+ AND sir.record_id = qu.id
+ INNER JOIN quality_inspect qi
+ ON qi.id = qu.inspect_id
+ INNER JOIN sales_ledger_product slp
+ ON slp.type = 2
+ AND slp.sales_ledger_id = qi.purchase_ledger_id
+ AND slp.product_model_id = qi.product_model_id
+ WHERE sir.approval_status = 1
+
) rel
GROUP BY rel.sales_ledger_product_id
) approved_qty ON approved_qty.sales_ledger_product_id = slp.id
@@ -122,12 +137,6 @@
<if test="c.supplierId != null">
AND pl.supplier_id = #{c.supplierId}
</if>
- <if test="c.ids != null and c.ids.size() > 0">
- AND pl.id IN
- <foreach collection="c.ids" item="id" open="(" separator="," close=")">
- #{id}
- </foreach>
- </if>
<if test="c.approvalStatus != null">
AND pl.approval_status = #{c.approvalStatus}
</if>
@@ -136,47 +145,7 @@
<if test="c.stockInStatus != null and c.stockInStatus != ''">
WHERE result.stock_in_status = #{c.stockInStatus}
</if>
- ORDER BY result.entry_date DESC
- </select>
-
- <select id="selectReturnablePurchaseLedgerList" resultType="com.ruoyi.purchase.pojo.PurchaseLedger">
- SELECT DISTINCT pl.*
- FROM purchase_ledger pl
- WHERE 1 = 1
- <if test="c.purchaseContractNumber != null and c.purchaseContractNumber != ''">
- AND pl.purchase_contract_number LIKE CONCAT('%', #{c.purchaseContractNumber}, '%')
- </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>
- AND EXISTS (
- SELECT 1
- FROM stock_in_record sir
- LEFT JOIN quality_inspect qi
- ON sir.record_type = '10'
- AND sir.record_id = qi.id
- LEFT JOIN sales_ledger_product slp
- ON slp.sales_ledger_id = pl.id
- AND slp.product_model_id = sir.product_model_id
- AND slp.type = 2
- LEFT JOIN (
- SELECT stock_in_record_id, SUM(return_quantity) AS total_return_num
- FROM purchase_return_order_products
- GROUP BY stock_in_record_id
- ) rs ON rs.stock_in_record_id = sir.id
- WHERE sir.approval_status = 1
- AND sir.record_type IN ('7','10')
- AND (
- (sir.record_type = '7' AND sir.record_id = pl.id)
- OR (sir.record_type = '10' AND qi.purchase_ledger_id = pl.id)
- )
- AND slp.id IS NOT NULL
- AND GREATEST(sir.stock_in_num - COALESCE(rs.total_return_num, 0), 0) > 0
- )
- ORDER BY pl.entry_date DESC
+ ORDER BY result.entry_date DESC, result.purchase_contract_number DESC
</select>
<select id="selectTotalPurchaseAmount" resultType="java.math.BigDecimal">
--
Gitblit v1.9.3