Files
EmailBill/Web/src/api/statistics.js
孙诚 09393f8ee5
All checks were successful
Docker Build & Deploy / Build Docker Image (push) Successful in 20s
Docker Build & Deploy / Deploy to Production (push) Successful in 5s
新增:统计功能
2025-12-26 17:13:57 +08:00

91 lines
2.8 KiB
JavaScript
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
import request from './request'
/**
* 统计相关 API
* 注:统计接口定义在 TransactionRecordController 中
*/
/**
* 获取月度统计数据
* @param {Object} params - 查询参数
* @param {number} params.year - 年份
* @param {number} params.month - 月份
* @returns {Promise<{success: boolean, data: Object}>}
* @returns {Object} data.totalExpense - 总支出
* @returns {Object} data.totalIncome - 总收入
* @returns {Object} data.balance - 结余
* @returns {Object} data.expenseCount - 支出笔数
* @returns {Object} data.incomeCount - 收入笔数
* @returns {Object} data.totalCount - 总笔数
* @returns {Object} data.maxExpense - 最大单笔支出
* @returns {Object} data.maxIncome - 最大单笔收入
*/
export const getMonthlyStatistics = (params) => {
return request({
url: '/TransactionRecord/GetMonthlyStatistics',
method: 'get',
params
})
}
/**
* 获取分类统计数据
* @param {Object} params - 查询参数
* @param {number} params.year - 年份
* @param {number} params.month - 月份
* @param {number} params.type - 交易类型 (0:支出, 1:收入, 2:不计入收支)
* @returns {Promise<{success: boolean, data: Array}>}
* @returns {Array} data - 分类统计列表
* @returns {string} data[].classify - 分类名称
* @returns {number} data[].amount - 金额
* @returns {number} data[].percent - 百分比
* @returns {number} data[].count - 交易笔数
*/
export const getCategoryStatistics = (params) => {
return request({
url: '/TransactionRecord/GetCategoryStatistics',
method: 'get',
params
})
}
/**
* 获取趋势统计数据
* @param {Object} params - 查询参数
* @param {number} params.startYear - 开始年份
* @param {number} params.startMonth - 开始月份
* @param {number} [params.monthCount=6] - 月份数量默认6个月
* @returns {Promise<{success: boolean, data: Array}>}
* @returns {Array} data - 趋势统计列表
* @returns {number} data[].year - 年份
* @returns {number} data[].month - 月份
* @returns {number} data[].expense - 支出金额
* @returns {number} data[].income - 收入金额
*/
export const getTrendStatistics = (params) => {
return request({
url: '/TransactionRecord/GetTrendStatistics',
method: 'get',
params
})
}
/**
* 获取指定月份每天的消费统计
* @param {Object} params - 查询参数
* @param {number} params.year - 年份
* @param {number} params.month - 月份
* @returns {Promise<{success: boolean, data: Array}>}
* @returns {Array} data - 每日统计列表
* @returns {string} data[].date - 日期
* @returns {number} data[].count - 交易笔数
* @returns {number} data[].amount - 交易金额
*/
export const getDailyStatistics = (params) => {
return request({
url: '/TransactionRecord/GetDailyStatistics',
method: 'get',
params
})
}