rosercode
e49b6b7b81
feat: 新增定时账单导入提醒与通知直达导入页
...
- 新增通知配置、渠道、发送日志三张表(MySQL/SQLite 双建表脚本)及实体、Mapper、Service、Controller
- 支持邮箱(SMTP)与 Server 酱两种推送渠道,抽象 NotificationSender 工厂统一发送
- 新增 NotificationScheduler 定时任务,按每天/每周/每月周期检查并推送账单导入提醒
- 新增全局通知链接地址配置(/api/app/notification-url),随提醒一并下发
- 前端系统设置页新增「定时通知」面板,支持周期配置、渠道增删改测、立即发送与发送日志
- 新增 /bill-import 直达页,供提醒链接一键打开账单上传弹窗
- 登录支持 redirect 回跳,仅允许站内路径以防开放重定向
2026-09-18 16:47:09 +08:00
rosercode
c1f5d02564
feat: 支持数据库运行时配置与多数据库,重构设置页并完善打包
...
- 数据库支持 SQLite / MySQL 运行时配置与切换,未配置时仍可启动,配置后自动建表
- 新增默认分类与标签初始化,注册用户自动创建
- 新增注册开关(默认关闭,可在系统设置开启;无用户时允许创建首个账号)
- 合并数据库、注册与 AI 配置为「系统设置」页,拆分「模型使用情况」独立页面
- AI 一键设置支持新建分类与标签
- 前端构建产物打包进可执行 jar,后端增加 SPA 路由回退
- jar 更名为 finance-app,补全 Gradle Wrapper,移除 archive 任务
- 更新 DeepSeek 模型说明文案
2026-09-18 12:33:41 +08:00
rosercode
16e4c30456
feat: 前端新增日语多语言支持
...
- messages.ts 全量补充日文文案(です・ます 敬体),新增 locale.jaJP 语言名称
- index.ts 扩展 LocaleKey 与消息叶子校验,新增 ja-JP 语言包并支持浏览器 ja 自动识别
- LocaleSwitch 增加「日本語」切换项,App.vue 接入 Naive UI 日语组件与日期 locale
2026-09-18 10:17:30 +08:00
rosercode
a8ef91ed3d
feat: 扩展 AI 记账能力并优化收支记录交互
...
- AI 能力:新增分类 Emoji 推荐、标签颜色推荐、自然语言生成分类/标签、单条记录分类推荐
- AI 批量建议:按类型+支付方式+备注去重聚合后分批调用,支持分类/标签/两者范围并记忆偏好,结果可勾选应用
- 分类/标签管理:新增 EmojiPicker 与预设色板,支持 AI 一键推荐并在列表可视化
- 收支记录:新增序号列,标签筛选支持无标签,编辑记录时允许不设置分类
- 修复:账单导入未选择默认标签时生成空 IN 列表导致的 SQL 语法错误
- AI 未启用时隐藏所有 AI 入口与弹窗
2026-09-18 09:57:53 +08:00
rosercode
49c70a732d
feat: 接入 DeepSeek,新增 AI 分类建议、自然语言查询与智能记账
...
- 后端新增 AI 模块:DeepSeek 客户端、用户级配置表 t_ai_config、用量记录表 t_ai_usage
- 批量设置支持 AI 推荐分类与标签,并可一键应用
- 交易列表支持自然语言查询,解析为筛选条件确认后应用
- 支持自然语言记账,解析后预填新增表单
- 新增 AI 设置页:启用开关、API Key、接口地址、模型、连通性测试与用量统计
- 交易列表重排:AI 查询区、已激活筛选标签、备注与查询历史缓存
- 账单导入默认分类下拉补充分类图标
- 顶部用户入口改为下拉菜单(AI 设置 / 退出登录)
2026-09-17 18:26:03 +08:00
rosercode
10fa1b5e96
refactor: 后端包名迁移至 cn.rosercode.finance
...
- 使用 git mv 将包路径由 com.example.finance 迁移至 cn.rosercode.finance
- 主类 MyApplication 重命名为 FinanceApplication,测试类同步更名
- build.gradle 的 group 调整为 cn.rosercode
- 同步 application.yml、logback-spring.xml 中的包引用
- 测试账号密码移至 credentials.md 并加入忽略规则,README 移除该信息
- 更新 README 与 docs 中的包路径示例
2026-09-17 17:04:43 +08:00
rosercode
179e9b78ca
feat: 前端新增中英文多语言支持
...
- 引入 vue-i18n,新增 locales/messages.ts 以中英对照方式维护词条
- 新增 LocaleSwitch 组件,在登录/注册页与主布局顶部栏提供切换入口
- 语言持久化到 localStorage 并同步 <html lang>,Naive UI 组件语言联动
- 各视图、表格列、弹窗与提示文案全部接入国际化
- 修复 confirmImport 缺失的 tagIds 类型定义
2026-09-17 17:03:49 +08:00
rosercode
65c0d8c550
feat: 新增标签体系、微信账单导入与收支记录体验优化
...
- 标签:新增 t_tag / t_transaction_tag 表与标签 CRUD,支持交易打标签、按标签筛选、批量添加/移除标签、导入账单默认标签,新增标签管理页
- 账单导入:新增微信支付 xlsx 解析器(WechatBillParser),支持支付宝 / 微信按类型导入;解析行保存原始完整数据(raw_data)并可在列表查看
- 收支记录:排序移至顶部并改为服务端排序(交易时间 / 金额,记忆偏好);筛选条件收纳为「更多筛选」弹层;分类筛选显示图标;一键设置支持「计入统计」;导入预览支持关键字 / 类型 / 状态 / 金额筛选
- 数据库:init.sql 新增 raw_data 字段与标签表,新增 init_tags.sql 默认标签种子
- 其他:更新 README 测试账号
2026-09-17 16:47:26 +08:00
rosercode
1df6e23510
feat: 账单导入、统计维度扩展与收支记录增强
...
- 账单导入:新增支付宝账单解析/导入接口,按 external_no 去重;前端拖拽上传 + 预览确认弹窗
- 分类可选:category_id 允许为空,支持「未分类」筛选,新增按类型一键批量设置分类
- 备注隐藏:新增 remark_hidden 与切换接口,列表默认显示 ****** 并可单格查看/取消隐藏,导出同步隐藏
- 统计扩展:新增 /statistics/summary、/statistics/group,支持日/周/月/季/年/支付方式/分类/类型维度与时间范围过滤
- 收支记录:金额区间过滤、金额/交易时间列排序、分页快速跳转、本页收支结余汇总、交易时间列前置并合并创建时间提示
- 用户偏好:统计面板与列表的筛选条件持久化到 localStorage,进入自动还原
- 其他:新增默认分类种子脚本(含美容美发)、commons-csv 依赖、上传大小限制 10MB、Vite 监听 0.0.0.0
2026-09-17 13:19:59 +08:00