feat: sync current progress (P0 hardening + P1 observability + deploy docs/systemd)
This commit is contained in:
85
PRD.md
Normal file
85
PRD.md
Normal file
@@ -0,0 +1,85 @@
|
||||
# PRD - Asset Tracker (MVP)
|
||||
|
||||
## 1. 项目目标
|
||||
|
||||
构建单用户个人资产管理系统,统一记录现实资产和网络资产,提供资产统计与到期提醒能力。
|
||||
|
||||
## 2. MVP 功能边界
|
||||
|
||||
### 2.1 In Scope
|
||||
|
||||
1. 资产分类管理
|
||||
2. 资产新增、查询
|
||||
3. 仪表盘汇总:
|
||||
- 总资产(按记录金额直接累加)
|
||||
- 分类占比
|
||||
- 未来30天到期资产清单
|
||||
4. 定时提醒扫描:
|
||||
- 每小时扫描一次未来 30/7/1 天到期资产
|
||||
- 首版先日志输出提醒事件
|
||||
|
||||
### 2.2 Out of Scope
|
||||
|
||||
- 多用户协作
|
||||
- 自动估值源接入(股票/币价 API)
|
||||
- 复杂权限系统
|
||||
- 导入导出与财务报表
|
||||
|
||||
## 3. 用户故事
|
||||
|
||||
1. 作为用户,我希望快速记录资产,了解当前资产分布。
|
||||
2. 作为用户,我希望在关键资产到期前得到提醒,减少忘记续费风险。
|
||||
3. 作为用户,我希望看到未来30天到期资产列表,做提前规划。
|
||||
|
||||
## 4. 核心流程
|
||||
|
||||
### 4.1 新增资产
|
||||
- 选择/创建分类
|
||||
- 输入资产基础信息(名称、数量、单价、币种、到期时间)
|
||||
- 系统保存并可在列表中查看
|
||||
|
||||
### 4.2 资产列表
|
||||
- 查看所有有效资产
|
||||
- 支持按分类过滤(MVP 可选,先预留参数)
|
||||
|
||||
### 4.3 到期提醒扫描
|
||||
- cron 每小时触发
|
||||
- 扫描未来30天内到期资产
|
||||
- 输出提醒日志(含资产名、到期日期、剩余天数)
|
||||
|
||||
## 5. 数据模型(MVP)
|
||||
|
||||
### categories
|
||||
- id
|
||||
- name
|
||||
- type (`real` / `digital`)
|
||||
- color
|
||||
- created_at
|
||||
- updated_at
|
||||
|
||||
### assets
|
||||
- id
|
||||
- name
|
||||
- category_id
|
||||
- quantity
|
||||
- unit_price
|
||||
- total_value
|
||||
- currency
|
||||
- expiry_date(可空)
|
||||
- note
|
||||
- status (`active` / `inactive`)
|
||||
- created_at
|
||||
- updated_at
|
||||
|
||||
## 6. 非功能需求
|
||||
|
||||
1. 可部署性:单二进制 + SQLite
|
||||
2. 可维护性:分层结构(api/service简化为handler+repo)
|
||||
3. 可扩展性:预留 reminders 表与通知通道模块
|
||||
|
||||
## 7. 验收标准
|
||||
|
||||
- 能通过 API 创建分类和资产
|
||||
- 能通过 API 获取资产列表和仪表盘汇总
|
||||
- 服务启动后 cron 每小时运行提醒扫描并输出日志
|
||||
- OpenAPI 文档与实现字段一致
|
||||
Reference in New Issue
Block a user