From 6f888b234148d1a4dbd1e6c28a8d9ed85ebfda09 Mon Sep 17 00:00:00 2001
From: yaowanxin <3588231647@qq.com>
Date: 星期四, 29 一月 2026 18:11:26 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/dev_New' into dev_New

---
 src/main/resources/mapper/account/AccountExpenseMapper.xml |   22 ++++++++++++++++++++++
 1 files changed, 22 insertions(+), 0 deletions(-)

diff --git a/src/main/resources/mapper/account/AccountExpenseMapper.xml b/src/main/resources/mapper/account/AccountExpenseMapper.xml
index 3b37674..1a8d34b 100644
--- a/src/main/resources/mapper/account/AccountExpenseMapper.xml
+++ b/src/main/resources/mapper/account/AccountExpenseMapper.xml
@@ -70,4 +70,26 @@
         </if>
     </select>
 
+    <select id="selectAccountExpenseStats" resultType="com.ruoyi.home.dto.IncomeExpenseAnalysisDto">
+        SELECT DATE_FORMAT(expense_date, #{dateFormat}) as dateStr, IFNULL(SUM(expense_money), 0) as amount
+        FROM account_expense
+        WHERE expense_date BETWEEN #{startDate} AND #{endDate}
+        GROUP BY dateStr
+    </select>
+
+    <select id="selectExpenseComposition" resultType="com.ruoyi.dto.MapDto">
+        SELECT sdd.dict_label as name, CAST(IFNULL(SUM(ae.expense_money), 0) AS CHAR) as value
+        FROM account_expense ae
+        LEFT JOIN sys_dict_data sdd ON ae.expense_type = sdd.dict_value AND sdd.dict_type = 'expense_types'
+        <where>
+            <if test="startDate != null and startDate != ''">
+                AND ae.expense_date &gt;= #{startDate}
+            </if>
+            <if test="endDate != null and endDate != ''">
+                AND ae.expense_date &lt;= #{endDate}
+            </if>
+        </where>
+        GROUP BY ae.expense_type, sdd.dict_label
+    </select>
+
 </mapper>

--
Gitblit v1.9.3