From da0033b9cff199a86442e2dcf31003d2a46ae754 Mon Sep 17 00:00:00 2001
From: gongchunyi <deslre0381@gmail.com>
Date: 星期六, 20 六月 2026 16:23:11 +0800
Subject: [PATCH] fix: 工序产出分析传参字段名错误

---
 src/main/resources/mapper/basic/CustomerMapper.xml |   88 ++++++++++++++++++++++++--------------------
 1 files changed, 48 insertions(+), 40 deletions(-)

diff --git a/src/main/resources/mapper/basic/CustomerMapper.xml b/src/main/resources/mapper/basic/CustomerMapper.xml
index 99a5a28..46b7bf7 100644
--- a/src/main/resources/mapper/basic/CustomerMapper.xml
+++ b/src/main/resources/mapper/basic/CustomerMapper.xml
@@ -33,11 +33,11 @@
                 and customer_type = #{c.customerType}
             </if>
             <!-- 鍏捣鏌ヨ锛歵ype = 1锛堝叕娴峰鎴凤級-->
-            <if test="c.type != null and c.type == 1">
+            <!--<if test="c.type != null and c.type == 1">
                 and type = #{c.type}
-            </if>
+            </if>-->
             <!-- 绉佹捣鏌ヨ锛歵ype = 0锛堢娴峰鎴凤級鎴栬�� type = 1锛堝叕娴峰鎴凤級涓斿凡琚垎閰嶏紝骞朵笖鏄嚜宸遍鐢ㄣ�佽嚜宸卞垱寤烘垨鑰呭叡浜粰鑷繁鐨勫鎴� -->
-            <if test="c.type != null and c.type == 0">
+            <!--<if test="c.type != null and c.type == 0">
                 and (
                     (type = #{c.type} or (type = 1 and is_assigned = 1))
                     and (
@@ -50,8 +50,9 @@
                         )
                     )
                 )
-            </if>
+            </if>-->
         </where>
+        order by maintenance_time desc
     </select>
 
     <select id="list" resultType="com.ruoyi.basic.vo.CustomerVo">
@@ -87,11 +88,11 @@
                 and customer_type = #{c.customerType}
             </if>
             <!-- 鍏捣鏌ヨ锛歵ype = 1锛堝叕娴峰鎴凤級-->
-            <if test="c.type != null and c.type == 1">
+            <!--<if test="c.type != null and c.type == 1">
                 and type = #{c.type}
-            </if>
+            </if>-->
             <!-- 绉佹捣鏌ヨ锛歵ype = 0锛堢娴峰鎴凤級鎴栬�� type = 1锛堝叕娴峰鎴凤級涓斿凡琚垎閰嶏紝骞朵笖鏄嚜宸遍鐢ㄣ�佽嚜宸卞垱寤烘垨鑰呭叡浜粰鑷繁鐨勫鎴� -->
-            <if test="c.type != null and c.type == 0">
+            <!--<if test="c.type != null and c.type == 0">
                 and (
                     (type = #{c.type} or (type = 1 and is_assigned = 1))
                     and (
@@ -104,30 +105,15 @@
                         )
                     )
                 )
-            </if>
+            </if>-->
         </where>
     </select>
 
     <select id="customewTransactions" resultType="com.ruoyi.sales.vo.CustomerTransactionsVo">
         select T1.customer_id,
                c.customer_name,
-               T1.contractAmounts,
-               IFNULL(T3.outboundAmount, 0) AS shippedAmount,
-               GREATEST(T1.contractAmounts - IFNULL(T3.outboundAmount, 0), 0) AS unshippedAmount
+               T1.contractAmounts
         from (select customer_id, sum(contract_amount) as contractAmounts from sales_ledger group by customer_id) T1
-        left join (
-            SELECT
-                sl.customer_id,
-                sum(sor.stock_out_num * slp.tax_inclusive_unit_price) as outboundAmount
-            FROM stock_out_record sor
-            LEFT join shipping_info s on sor.record_id = s.id
-            LEFT JOIN sales_ledger sl ON s.sales_ledger_id = sl.id
-            LEFT JOIN sales_ledger_product slp ON s.sales_ledger_product_id = slp.id
-            WHERE sor.record_type='13'
-                and sor.approval_status=1
-                and slp.type = 1
-            group by sl.customer_id
-        ) T3 on T3.customer_id=T1.customer_id
         left join customer c on T1.customer_id = c.id
         <where>
             <if test="customerName!=null and customerName!=''">
@@ -141,23 +127,45 @@
         select sl.id salesLedgerId,
                sl.sales_contract_no,
                sl.execution_date,
-               sl.contract_amount,
-               IFNULL(T2.outboundAmount, 0) AS shippedAmount,
-               GREATEST(sl.contract_amount - IFNULL(T2.outboundAmount, 0), 0) AS unshippedAmount
+               sl.contract_amount
         from sales_ledger sl
-        left join (
-            SELECT
-                sl.id,
-                sum(sor.stock_out_num * slp.tax_inclusive_unit_price) as outboundAmount
-            FROM stock_out_record sor
-                     left join shipping_info s on sor.record_id = s.id
-                     LEFT JOIN sales_ledger sl ON s.sales_ledger_id = sl.id
-                     LEFT JOIN sales_ledger_product slp ON s.sales_ledger_product_id = slp.id
-            WHERE sor.record_type='13'
-              and sor.approval_status=1
-              and slp.type = 1
-            group by  sl.id
-        )T2 on T2.id = sl.id
         where sl.customer_id = #{customerId}
+        order by sl.execution_date
+    </select>
+
+    <select id="getShippedAmountByCustomerIds" resultType="java.util.Map">
+        SELECT
+            sl.customer_id as customerId,
+            sum(sor.stock_out_num * slp.tax_inclusive_unit_price) as outboundAmount
+        FROM stock_out_record sor
+        LEFT join shipping_info s on sor.record_id = s.id
+        LEFT JOIN sales_ledger sl ON s.sales_ledger_id = sl.id
+        LEFT JOIN sales_ledger_product slp ON s.sales_ledger_product_id = slp.id
+        WHERE sor.record_type='13'
+            and sor.approval_status=1
+            and slp.type = 1
+            and sl.customer_id IN
+            <foreach collection="customerIds" item="customerId" open="(" separator="," close=")">
+                #{customerId}
+            </foreach>
+        group by sl.customer_id
+    </select>
+
+    <select id="getShippedAmountBySalesLedgerIds" resultType="java.util.Map">
+        SELECT
+            sl.id as salesLedgerId,
+            sum(sor.stock_out_num * slp.tax_inclusive_unit_price) as outboundAmount
+        FROM stock_out_record sor
+        LEFT join shipping_info s on sor.record_id = s.id
+        LEFT JOIN sales_ledger sl ON s.sales_ledger_id = sl.id
+        LEFT JOIN sales_ledger_product slp ON s.sales_ledger_product_id = slp.id
+        WHERE sor.record_type='13'
+            and sor.approval_status=1
+            and slp.type = 1
+            and sl.id IN
+            <foreach collection="salesLedgerIds" item="id" open="(" separator="," close=")">
+                #{id}
+            </foreach>
+        group by sl.id
     </select>
 </mapper>

--
Gitblit v1.9.3