201 lines
5.1 KiB
Markdown
201 lines
5.1 KiB
Markdown
# 模块功能文档
|
||
|
||
## 一、聊天
|
||
|
||
家庭群聊模块,支持 WebSocket 实时通讯。
|
||
|
||
### 消息类型
|
||
|
||
| 类型 | 说明 |
|
||
|------|------|
|
||
| 文字 | 普通文本消息 |
|
||
| 图片 | 支持拍照/相册上传 |
|
||
| 文件 | 附件上传 |
|
||
| 系统消息 | 由 `useModuleChatNotifier` 自动生成的操作通知 |
|
||
|
||
### 附件
|
||
|
||
- 聊天附件存入 `b_chat_file`,关联消息 ID
|
||
- 加载消息时按 `target_id` 批量查询附件
|
||
|
||
### 操作记录
|
||
|
||
各子模块的增/改/删操作通过 `useModuleChatNotifier` 自动推送一条系统消息到聊天中,格式如「张三 创建了任务 倒垃圾」。
|
||
|
||
---
|
||
|
||
## 二、记账
|
||
|
||
家庭记账模块,记录日常收支。
|
||
|
||
### 核心功能
|
||
|
||
| 功能 | 说明 |
|
||
|------|------|
|
||
| 记账 | 支出/收入,关联分类,支持备注 |
|
||
| 分类管理 | 支出/收入分类,支持自定义图标 |
|
||
| 筛选 | 按日期范围、分类、关键词筛选 |
|
||
| 统计 | 支出/收入/结余汇总,按月/日分组展示 |
|
||
| 编辑/删除 | 长按账单弹出菜单 |
|
||
|
||
### 自动记账
|
||
|
||
| 功能 | 说明 |
|
||
|------|------|
|
||
| 规则设置 | 长按账单 →「自动记账」→ 选择重复频率 |
|
||
| 频率 | 每天 / 每周(选周几) / 每月 / 每季度 / 每年 |
|
||
| 自动执行 | 进入首页自动检查规则,根据 `last_run` 补回漏掉的记录 |
|
||
|
||
### 分类图标
|
||
|
||
- 使用自定义 IconFont 组件(`IconFinance*`)
|
||
- 支出/收入各有一套图标
|
||
|
||
---
|
||
|
||
## 三、衣服搭配
|
||
|
||
家庭成员的衣服管理和穿搭组合。
|
||
|
||
### 衣服管理
|
||
|
||
| 功能 | 说明 |
|
||
|------|------|
|
||
| 新增/编辑 | 名称、图片、品牌、备注 |
|
||
| 分类 | 自定义分类(如上衣、裤子) |
|
||
| 标签 | 父子结构标签(颜色 + 名称) |
|
||
| 所属 | 标注衣服属于哪个成员 |
|
||
| 排序 | 拖拽排序 |
|
||
|
||
### 搭配
|
||
|
||
| 功能 | 说明 |
|
||
|------|------|
|
||
| 画布编辑 | 从衣橱选择衣服,拖拽/缩放排列 |
|
||
| 层级 | 置顶/置底 |
|
||
| 封面 | 自动截图生成搭配封面 |
|
||
| 分类/标签/所属 | 同衣服 |
|
||
| 筛选 | 选衣服时支持分类、标签、所属过滤 |
|
||
|
||
---
|
||
|
||
## 四、餐食
|
||
|
||
家庭菜品库与餐食安排。
|
||
|
||
### 菜品库
|
||
|
||
| 功能 | 说明 |
|
||
|------|------|
|
||
| 菜品管理 | 名称、图片、分类、烹饪时间、难度 |
|
||
| 食材 | 每条菜品可添加多个食材(名称+数量+单位) |
|
||
| 步骤 | 烹饪步骤(文字+图片) |
|
||
| 标签 | 父子结构标签 |
|
||
|
||
### 餐食安排
|
||
|
||
| 功能 | 说明 |
|
||
|------|------|
|
||
| 创建菜单 | 选择日期 + 餐段(早餐/午餐/晚餐) |
|
||
| 添加菜品 | 从菜品库添加,支持搜索+分类/标签筛选 |
|
||
| 确认/完成 | 菜单确认后不可修改,完成后锁定 |
|
||
| 做饭人 | 指定或选择做饭成员 |
|
||
| 时间轴 | 记录所有操作:创建、加菜、移除、备注、设置做饭人 |
|
||
|
||
---
|
||
|
||
## 五、家庭待办
|
||
|
||
家庭任务分配与跟踪。
|
||
|
||
### 任务管理
|
||
|
||
| 功能 | 说明 |
|
||
|------|------|
|
||
| 创建 | 名称、描述、优先级(普通/重要/紧急) |
|
||
| 指派 | 指定负责人,或留空待认领 |
|
||
| 认领/拒绝 | 成员主动认领或拒绝任务 |
|
||
| 转交 | 任务转给其他成员 |
|
||
| 截止时间 | 可选,超时自动显示为「已超时」 |
|
||
| 重复 | 每天/每周/每月自动创建下一个实例 |
|
||
| 提醒 | 本地通知提醒 |
|
||
| 备注 | 评论区 |
|
||
|
||
### 评分
|
||
|
||
| 功能 | 说明 |
|
||
|------|------|
|
||
| 五星评分 | 任务完成后其他人打分 |
|
||
| 评语 | 附带文字评价 |
|
||
| 一人一评 | 每人每任务只能评一次 |
|
||
| 平均分 | 任务列表和详情展示平均分 |
|
||
|
||
### 完成
|
||
|
||
| 功能 | 说明 |
|
||
|------|------|
|
||
| 完成备注 | 完成任务时可填备注 |
|
||
| 附件 | 完成任务时可上传图片 |
|
||
|
||
### 时间轴
|
||
|
||
详情页展示任务完整生命周期:创建→指派→认领→完成→评价,含头像和时间。
|
||
|
||
---
|
||
|
||
## 六、购物清单 🚧 待做
|
||
|
||
家庭共享购物清单,买了就勾掉并自动记账。
|
||
|
||
### 计划功能
|
||
|
||
| 功能 | 说明 |
|
||
|------|------|
|
||
| 清单管理 | 创建多个清单(如「周末采购」「宜家」) |
|
||
| 条目 | 物品名称、数量、分类 |
|
||
| 勾选完成 | 勾掉后可选联动记账(金额+分类) |
|
||
| 多人协作 | 家人看到同一清单,各自勾选 |
|
||
| 模板 | 常用清单保存为模板 |
|
||
|
||
---
|
||
|
||
## 七、家庭相册 🚧 待做
|
||
|
||
家人照片共享与浏览。
|
||
|
||
### 计划功能
|
||
|
||
| 功能 | 说明 |
|
||
|------|------|
|
||
| 上传 | 拍照/相册上传 |
|
||
| 时间线 | 按日期分组浏览 |
|
||
| 标签 | 人物/场景/事件标签 |
|
||
| 共享 | 全家可见,通过 `family_id` 隔离 |
|
||
|
||
---
|
||
|
||
## 八、纪念日
|
||
|
||
生日、纪念日提醒。
|
||
|
||
### 计划功能
|
||
|
||
| 功能 | 说明 |
|
||
|------|------|
|
||
| 添加 | 名称、日期、类型(生日/纪念日/自定义) |
|
||
| 提醒 | 复用 todo 的本地通知机制,提前提醒 |
|
||
| 倒计时 | 首页展示最近的纪念日倒计时 |
|
||
| 祝福 | 纪念日当天自动推送到聊天 |
|
||
|
||
---
|
||
|
||
## 通用功能
|
||
|
||
| 功能 | 说明 |
|
||
|------|------|
|
||
| 家庭/空间 | 多家庭隔离,通过 `family_id` 过滤 |
|
||
| 家庭成员 | 邀请码加入,角色管理 |
|
||
| 聊天通知 | 操作自动推送到家庭聊天 |
|
||
| 文件上传 | S3 存储,统一 `s3UploadFileApi` |
|
||
| 通用数据 API | 5 个接口:`loadData` / `loadDataPage` / `loadDataBySql` / `saveData` / `getUniqueId` |
|