Files
billai/CHANGELOG.md
2026-01-26 13:04:04 +08:00

4.8 KiB
Raw Blame History

更新日志

所有重要的更改都会记录在此文件中。

格式基于 Keep a Changelog 版本号遵循 语义化版本

[1.2.0] - 2026-01-25

新增

  • 账单删除功能 - 支持在账单详情抽屉中删除账单(软删除)
    • 删除按钮带二次确认,防止误操作
    • 删除后数据标记为 is_deleted,不真正从数据库删除
    • 已删除的账单在所有查询中自动过滤
    • 账单列表和复核页面都支持删除操作

技术改进

  • 后端 MongoDB 查询方法添加软删除过滤
  • 新增 DELETE /api/bills/:id 接口
  • BillDetailDrawer 组件新增 allowDeleteonDelete props

[1.2.1] - 2026-01-23

优化

  • 智能复核快捷确认 - 在复核列表每行添加快捷确认按钮
    • 无需打开详情页面即可确认分类正确
    • 点击确认按钮立即清除复核标记并从列表移除
    • 自动更新统计数据(总数、高优先级、低优先级计数)
    • 按钮支持加载状态显示,防止重复操作
    • 提升复核效率,支持快速批量确认

文档

  • AGENTS.md 更新 - 精简为 150 行,专为 AI 编程助手设计
    • 核心构建/测试/lint 命令说明
    • TypeScript、Go、Python 代码风格指南
    • 关键架构模式和文件位置

[1.1.0] - 2026-01-23

新增

  • ZIP 压缩包上传 - 支持上传加密的 ZIP 压缩包(微信/支付宝导出的原始格式)
    • 支持 AES 加密的 ZIP 文件,需输入解压密码
    • 自动将 xlsx 格式转换为 csv
    • 自动将 GBK 编码转换为 UTF-8
    • 前端添加密码输入框

修复

  • 支付宝扩展格式解析 - 修复从 ZIP 解压的支付宝账单(含 24 行元数据头)无法解析的问题
  • CSV 字段数不一致 - 修复支付宝 CSV 文件字段数不一致导致解析失败的问题
  • 中文文件名乱码 - 修复 ZIP 内 GBK 编码的中文文件名解压后乱码的问题

其他

  • 添加 AGENTS.md 项目开发指南文档

[1.0.7] - 2026-01-16

优化

  • 认证过期策略调整 - Token 过期/无效由后端统一判断,前端不再自行解析过期时间
    • 后端新增 JWT 鉴权中间件,统一返回 401 并携带错误码
    • 前端在收到 401 后清理登录状态并跳转到登录页

重构

  • 后端数据访问层收敛 - 账单相关服务统一通过 repository 访问 MongoDB减少多套数据层并存

[1.0.6] - 2026-01-08

修复

  • 数据分析页面总支出和大盘数据错误 - 修复数据分析页面与账单管理页面总支出不一致的问题
    • 原因:后端限制 page_size 最大为 100但前端请求了 10000导致只获取到部分数据
    • 解决:数据分析页面改为使用后端返回的聚合统计(total_expense而不是前端计算且关闭后端最大100的限制
    • 现在两个页面都使用相同的后端数据库聚合统计,确保数据一致性

[1.0.5] - 2026-01-08

优化

  • 支付宝时间格式解析 - 支持无前导零的日期格式
    • 自动标准化 2026/1/13 20:082026/01/13 20:08
    • 兼容支付宝账单的时间格式
  • Webhook 服务修复 - 移除未使用的 fmt 导入,修复编译错误

[1.0.4] - 2026-01-13

新增

  • Gitea Webhook 自动部署 - 推送代码后自动触发服务器拉取并重新部署
    • 独立的 webhook 服务Go 实现,端口 9000
    • HMAC-SHA256 签名验证,确保安全性
    • 仅处理 master/main 分支的推送
    • 零停机热更新部署
    • 自动清理旧镜像
    • 健康检查验证
  • 完整的部署配置文档 WEBHOOK_SETUP.md

优化

  • 部署脚本使用 docker-compose up -d --build --force-recreate 实现热更新
  • 部署时排除 webhook 容器自身,避免自杀问题
  • Dockerfile 添加国内镜像源配置,加速构建

[1.0.3] - 2026-01-13

新增

  • DateTimePicker 组件 - 使用 shadcn-ui 的 Calendar + Popover 替换原生 datetime-local 输入框
  • 收支类型动态分类 - 手动添加账单时,根据收支类型自动切换分类选项(支出/收入分类)

优化

  • 切换收支类型时自动清空已选分类,避免选择不匹配的分类
  • 收入模式下隐藏"支付方式"和"交易状态"输入框,简化表单
  • 调整手动添加账单表单布局为 1:1 两列,待提交列表宽度更合理

[1.0.2] - 2026-01-08

修复

  • 修复 Docker volume 映射路径与配置不一致导致上传文件无法持久化的问题

[1.0.1] - 2026-01-07

新增

  • 手动添加账单功能
  • 账单去重检查
  • MongoDB 数据持久化

[1.0.0] - 2026-01-01

新增

  • 初始版本发布
  • 支持微信/支付宝账单 CSV 导入
  • 智能分类推断
  • 可视化分析报表
  • Docker Compose 一键部署