feat: 用户级偏好配置与外观设置,枚举统一抽取与账单类型后端下发

- 新增用户偏好表 t_user_preference 与进程内缓存,账单来源统计默认值由全局改为按用户存储(/api/setting)
- 新增外观设置:不计入统计记录支持删除线与灰色标签两种展示样式
- 抽取 ChannelType / TransactionType / StatisticsScope 枚举,替换各处硬编码的渠道、类型与统计口径
- BillType 内聚各来源扩展名,新增 /transaction/import/types 接口,前端改为按后端下发渲染
- 仪表盘趋势图支持点击柱子跳转收支记录并带入筛选条件
- 布局内容区按路由记忆滚动位置;已登录访问登录/注册页自动跳转
This commit is contained in:
2026-09-21 10:51:15 +08:00
parent 2976b85967
commit 1f520f4376
46 changed files with 1565 additions and 284 deletions
+22
View File
@@ -0,0 +1,22 @@
// 用户设置接口:当前登录用户的账单来源统计默认值与「不计入统计」展示样式
import request from './request'
/** 查询当前用户按账单来源的「计入统计」默认值(key 为账单来源编码) */
export function getBillSourceIncludeInStats() {
return request.get('/setting/bill-source-include-in-stats')
}
/** 更新当前用户按账单来源的「计入统计」默认值 */
export function updateBillSourceIncludeInStats(defaults: Record<string, boolean>) {
return request.put('/setting/bill-source-include-in-stats', { defaults })
}
/** 查询当前用户「不计入统计」记录的展示样式(strikethrough / muted) */
export function getExcludedDisplayStyle() {
return request.get('/setting/excluded-display-style')
}
/** 更新当前用户「不计入统计」记录的展示样式 */
export function updateExcludedDisplayStyle(style: string) {
return request.put('/setting/excluded-display-style', { style })
}