From 441dfbd1908affc1accc52006a2fe81a5067052d Mon Sep 17 00:00:00 2001
From: huminmin <mac@MacBook-Pro.local>
Date: 星期一, 22 六月 2026 09:28:09 +0800
Subject: [PATCH] 废品库存的批号如果有多个,则需要展示多个

---
 src/main/resources/mapper/sales/SalesLedgerMapper.xml |   38 +++++++++++++++++++++++++++-----------
 1 files changed, 27 insertions(+), 11 deletions(-)

diff --git a/src/main/resources/mapper/sales/SalesLedgerMapper.xml b/src/main/resources/mapper/sales/SalesLedgerMapper.xml
index 0240ec1..1e0748e 100644
--- a/src/main/resources/mapper/sales/SalesLedgerMapper.xml
+++ b/src/main/resources/mapper/sales/SalesLedgerMapper.xml
@@ -42,7 +42,7 @@
         </where>
     </select>
 
-    <select id="selectSalesLedgerListPage" resultType="com.ruoyi.sales.pojo.SalesLedger">
+    <select id="selectSalesLedgerListPage" resultType="com.ruoyi.sales.vo.SalesLedgerVo">
         SELECT T1.id,
         T1.sales_contract_no,
         T1.customer_contract_no,
@@ -62,8 +62,8 @@
         T1.payment_method,
         T1.delivery_date,
         DATEDIFF(T1.delivery_date, CURDATE()) AS delivery_days_diff,
-        IFNULL(shipping_status_counts.is_all_shipped, FALSE) AS is_fh,
-        IFNULL(production_exists.has_production, FALSE) AS has_production_record
+        COALESCE(T1.stock_type, 'qualified') AS stock_type,
+        IFNULL(shipping_status_counts.is_all_shipped, FALSE) AS is_fh
         FROM sales_ledger T1
         LEFT JOIN sys_user T2 ON T1.entry_person = T2.user_id
         LEFT JOIN (
@@ -75,13 +75,7 @@
         FROM shipping_info
         GROUP BY sales_ledger_id
         ) shipping_status_counts ON T1.id = shipping_status_counts.sales_ledger_id
-        LEFT JOIN (
-        SELECT DISTINCT po.sales_ledger_id,
-        TRUE AS has_production
-        FROM product_order po
-        INNER JOIN product_work_order wo ON wo.product_order_id = po.id
-        INNER JOIN production_product_main pm ON pm.work_order_id = wo.id
-        ) production_exists ON T1.id = production_exists.sales_ledger_id
+
         <where>
             <if test="salesLedgerDto.customerName != null and salesLedgerDto.customerName != '' ">
                 AND T1.customer_name LIKE CONCAT('%',#{salesLedgerDto.customerName},'%')
@@ -100,6 +94,10 @@
             </if>
             <if test="salesLedgerDto.entryDateEnd != null and salesLedgerDto.entryDateEnd != '' ">
                 AND T1.entry_date &lt;= DATE_FORMAT(#{salesLedgerDto.entryDateEnd},'%Y-%m-%d')
+            </if>
+
+            <if test="salesLedgerDto.stockType != null and salesLedgerDto.stockType != '' ">
+                AND COALESCE(T1.stock_type, 'qualified') = #{salesLedgerDto.stockType}
             </if>
         </where>
         order by T1.entry_date desc
@@ -128,5 +126,23 @@
         </if>
         order by sl.execution_date desc
     </select>
+    <select id="selectPurchaseReportVoPage" resultType="com.ruoyi.purchase.vo.PurchaseReportVo">
+        select sl.sales_contract_no customerContractNo,
+               c.customer_name,
+               sl.project_name,
+               sl.contract_amount contractAmount,
+               pl.contract_amount purchaseAmount,
+               sl.contract_amount-pl.contract_amount balance,
+               (sl.contract_amount-pl.contract_amount)/sl.contract_amount balanceRatio
+        from sales_ledger sl
+        left join purchase_ledger pl on sl.id = pl.sales_ledger_id
+        left join customer c on sl.customer_id = c.id
+        <where>
+            <if test="customerName != null and customerName != '' ">
+                and c.customer_name like concat('%',#{customerName},'%')
+            </if>
+        </where>
+        order by sl.entry_date desc
+    </select>
 
-</mapper>
\ No newline at end of file
+</mapper>

--
Gitblit v1.9.3