P0-1: 分类拖拽排序 - category-manage 添加拖拽 UI P1-1: 反馈回复展示 - 新增 GET /feedback/mine + 前端我的反馈Tab P1-2: 备份管理页面 - 新增下载端点 + backup-manage 页面 P2-1: 统计年度/周视图 - stats 支持 period 参数 + 前端维度切换器 P2-2: 数据导入 - 新增 POST /import 端点 + data-import 页面 P2-3: 数据导出服务端化 - 新增 GET /export 流式端点 P3-1: 健康检查展示 - health 移到 auth 前 + admin 状态卡片 P3-2~4: 交易标签系统 - tags CRUD + 交易关联 + 按标签筛选统计 后端: 新增 tag.ts/export.ts 路由, 改造 feedback/backup/transaction/stats 前端: 新增 DragSortList 组件, 3个新页面, 改造 7 个现有页面 QA 修复: 5个严重Bug + 4个潜在问题
33 lines
928 B
TypeScript
33 lines
928 B
TypeScript
import { request } from '@/utils/request'
|
|
import { API_BASE } from '@/config'
|
|
|
|
/** 导出参数 */
|
|
export interface ExportParams {
|
|
startDate: string
|
|
endDate: string
|
|
type?: 'expense' | 'income' | 'all'
|
|
format?: 'csv' | 'json'
|
|
}
|
|
|
|
/** 请求服务端导出(返回流) */
|
|
export function requestExport(params: ExportParams) {
|
|
return request<{ downloadUrl: string }>({
|
|
url: '/export',
|
|
data: { ...params, format: params.format || 'csv' }
|
|
})
|
|
}
|
|
|
|
/** 获取服务端导出下载 URL */
|
|
export function getExportUrl(params: ExportParams): string {
|
|
const query = new URLSearchParams()
|
|
query.set('startDate', params.startDate)
|
|
query.set('endDate', params.endDate)
|
|
if (params.type) query.set('type', params.type)
|
|
if (params.format) query.set('format', params.format)
|
|
|
|
const token = uni.getStorageSync('xc:token')
|
|
if (token) query.set('token', token)
|
|
|
|
return `${API_BASE}/export?${query.toString()}`
|
|
}
|