From 28cf22aaff7f092256db2ad6df699e17426f62ea Mon Sep 17 00:00:00 2001
From: chenhj <1263187585@qq.com>
Date: 星期四, 30 四月 2026 16:34:27 +0800
Subject: [PATCH] Merge branch 'dev_New_pro' of http://114.132.189.42:9002/r/product-inventory-management-after into dev_New_pro

---
 src/main/resources/mapper/account/AccountIncomeMapper.xml |   43 +++++++++++++++++++++++++++++++++++++++++--
 1 files changed, 41 insertions(+), 2 deletions(-)

diff --git a/src/main/resources/mapper/account/AccountIncomeMapper.xml b/src/main/resources/mapper/account/AccountIncomeMapper.xml
index 7400904..9becd41 100644
--- a/src/main/resources/mapper/account/AccountIncomeMapper.xml
+++ b/src/main/resources/mapper/account/AccountIncomeMapper.xml
@@ -11,13 +11,39 @@
         <if test="accountIncome.entryDateStart != null and accountIncome.entryDateStart != '' ">
             AND income_date &gt;= DATE_FORMAT(#{accountIncome.entryDateStart},'%Y-%m-%d')
         </if>
+        <if test="accountIncome.customerName != null and accountIncome.customerName != '' ">
+            AND customer_name like CONCAT('%',#{accountIncome.customerName},'%')
+        </if>
+
+        <if test="accountIncome.invoiceNumber != null and accountIncome.invoiceNumber != '' ">
+            AND invoice_number like CONCAT('%',#{accountIncome.invoiceNumber},'%')
+        </if>
         <if test="accountIncome.entryDateEnd != null and accountIncome.entryDateEnd != '' ">
             AND income_date &lt;= DATE_FORMAT(#{accountIncome.entryDateEnd},'%Y-%m-%d')
         </if>
         <if test="accountIncome.incomeType != null and accountIncome.incomeType != '' ">
             AND income_type = #{accountIncome.incomeType}
         </if>
-        <if test="accountIncome.incomeMethod != null and accountIncome.incomeMethod != '' ">
+        <if test="accountIncome.incomeMethodLabel != null and accountIncome.incomeMethodLabel != ''">
+            AND (
+            (
+            business_type = 1
+            AND income_method in
+            <foreach collection="accountIncome.receiptPaymentMethodList" item="method" open="(" separator="," close=")">
+                #{method}
+            </foreach>
+            )
+            OR
+            (
+            business_type is null
+            AND income_method in
+            <foreach collection="accountIncome.paymentMethodList" item="method" open="(" separator="," close=")">
+                #{method}
+            </foreach>
+            )
+            )
+        </if>
+        <if test="(accountIncome.incomeMethodLabel == null or accountIncome.incomeMethodLabel == '') and accountIncome.incomeMethod != null and accountIncome.incomeMethod != '' ">
             AND income_method = #{accountIncome.incomeMethod}
         </if>
     </select>
@@ -54,7 +80,7 @@
         <if test="dateQueryDto.entryDateEnd != null and dateQueryDto.entryDateEnd != '' ">
             AND income_date &lt;= DATE_FORMAT(#{dateQueryDto.entryDateEnd},'%Y-%m-%d')
         </if>
-        group by income_type
+        GROUP BY sdd.dict_label, ai.income_type
     </select>
     <select id="report1" resultType="java.math.BigDecimal">
         SELECT
@@ -69,4 +95,17 @@
             AND income_date &lt;= DATE_FORMAT(#{dateQueryDto.entryDateEnd},'%Y-%m-%d')
         </if>
     </select>
+
+    <select id="selectIncomeStats"
+            resultType="com.ruoyi.home.dto.IncomeExpenseAnalysisDto">
+        SELECT DATE_FORMAT(income_date, #{dateFormat}) AS dateStr,
+               IFNULL(SUM(income_money), 0)            AS amount
+        FROM account_income
+        WHERE income_date BETWEEN #{startDate} AND #{endDate}
+#           AND business_type = 1
+        GROUP BY dateStr
+        ORDER BY dateStr
+
+    </select>
+
 </mapper>

--
Gitblit v1.9.3