添加智能分类功能,支持获取未分类账单数量和列表;实现AI分类逻辑;更新相关API和前端视图
This commit is contained in:
@@ -100,3 +100,63 @@ export const getTransactionsByDate = (date) => {
|
||||
|
||||
// 注意:分类相关的API已迁移到 transactionCategory.js
|
||||
// 请使用 getCategoryTree 等新接口
|
||||
|
||||
/**
|
||||
* 获取未分类的账单数量
|
||||
* @returns {Promise<{success: boolean, data: number}>}
|
||||
*/
|
||||
export const getUnclassifiedCount = () => {
|
||||
return request({
|
||||
url: '/TransactionRecord/GetUnclassifiedCount',
|
||||
method: 'get'
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取未分类的账单列表
|
||||
* @param {number} pageSize - 每页数量,默认10条
|
||||
* @returns {Promise<{success: boolean, data: Array}>}
|
||||
*/
|
||||
export const getUnclassified = (pageSize = 10) => {
|
||||
return request({
|
||||
url: '/TransactionRecord/GetUnclassified',
|
||||
method: 'get',
|
||||
params: { pageSize }
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* 智能分类 - 使用AI对账单进行分类(EventSource流式响应)
|
||||
* @param {number} pageSize - 每次分类的账单数量
|
||||
* @returns {EventSource} 返回EventSource对象用于接收流式数据
|
||||
*/
|
||||
export const smartClassify = (pageSize = 10) => {
|
||||
const baseURL = import.meta.env.VITE_API_BASE_URL || 'http://localhost:5000'
|
||||
const token = localStorage.getItem('token')
|
||||
const url = `${baseURL}/api/TransactionRecord/SmartClassify`
|
||||
|
||||
return fetch(url, {
|
||||
method: 'POST',
|
||||
headers: {
|
||||
'Content-Type': 'application/json',
|
||||
'Authorization': `Bearer ${token}`
|
||||
},
|
||||
body: JSON.stringify({ pageSize })
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* 批量更新账单分类
|
||||
* @param {Array} items - 要更新的账单分类数据数组
|
||||
* @param {number} items[].id - 账单ID
|
||||
* @param {string} items[].classify - 一级分类
|
||||
* @param {string} items[].subClassify - 子分类
|
||||
* @returns {Promise<{success: boolean, message: string}>}
|
||||
*/
|
||||
export const batchUpdateClassify = (items) => {
|
||||
return request({
|
||||
url: '/TransactionRecord/BatchUpdateClassify',
|
||||
method: 'post',
|
||||
data: items
|
||||
})
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user