Files
billai/TODO.md
2026-01-26 15:25:23 +08:00

122 lines
2.8 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# BillAI 开发计划
## 已完成功能
### 前端 (web)
- [x] 侧边栏导航布局
- [x] 上传账单页面
- [x] 智能复核页面
- [x] 账单管理页面(分页、筛选、响应式表格)
- [x] 数据分析页面(图表、统计)
- [x] 日期范围选择器 (DateRangePicker)
- [x] 主题切换(亮色/暗色/跟随系统)
- [x] 服务状态指示器(轮询检查)
- [x] 顶部导航栏(页面标题、状态指示)
- [x] shadcn-svelte UI 组件库集成
### 后端 (server)
- [x] 账单上传与解析
- [x] 智能分类Python 分析器)
- [x] 复核记录查询
- [x] 账单列表 API分页、筛选
- [x] 健康检查端点
- [x] MongoDB 数据存储
### 分析器 (analyzer)
- [x] 支付宝账单解析
- [x] 微信账单解析
- [x] 分类规则引擎
- [x] 重复记录检测
---
## 待实现功能
### 高优先级
- [ ] **Gitea Webhook 自动部署**
- Webhook 服务Go 实现)
- 监听端口 9000接收 Gitea POST 请求
- HMAC-SHA256 签名验证
- 仅处理 master/main 分支的 push 事件
- 执行部署脚本
- 部署脚本 (deploy.sh)
- `git pull origin master`
- `docker-compose up -d --build --remove-orphans`
- 自动清理旧镜像
- 健康检查验证
- docker-compose 配置
- webhook 服务定义
- 挂载 docker.sock 和项目目录
- 环境变量配置WEBHOOK_SECRET
- Gitea 仓库配置
- 添加 Webhook URL: `http://服务器IP:9000/webhook`
- 设置 Secret与服务端一致
- 选择 Push 事件,分支过滤 `refs/heads/master`
- [ ] **SSE 实时状态推送**
- 服务器实现 `/events` SSE 端点
- 前端使用 EventSource 接收状态
- 支持服务状态、任务进度等实时推送
- [ ] **服务异常页面提示**
- 服务离线时显示遮罩层
- 提示用户检查服务器状态
- 自动重试连接
### 中优先级
- [ ] **账单编辑功能**
- 在账单管理页面编辑记录
- 修改分类、备注等字段
- 保存到数据库
- [ ] **账单删除功能**
- 单条删除
- 批量删除
- 删除确认对话框
- [ ] **数据导出**
- 导出为 CSV
- 导出为 Excel
- 自定义导出字段
- [ ] **分类管理**
- 自定义分类
- 分类图标配置
- 分类规则编辑
### 低优先级
- [ ] **用户认证**
- 登录/注册
- 多用户支持
- 权限管理
- [ ] **数据备份**
- 自动备份
- 导入/导出备份
- [ ] **移动端适配**
- PWA 支持
- 触摸手势优化
- [ ] **AI 智能分析**
- 消费趋势预测
- 异常消费提醒
- 智能预算建议
---
## 技术债务
- [ ] 统一错误处理
- [ ] 添加单元测试
- [ ] API 文档Swagger
- [ ] 日志系统完善
- [ ] 性能优化(大数据量分页)
---
*最后更新: 2026-01-10*