pet-ai/第一版本功能拆分详细说明.md

420 lines
11 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.

# 宠物管家小程序第一版本功能拆分详细说明
## 1. 功能模块总览
### 1.1 核心功能模块
1. **用户系统** - 微信登录、用户信息管理
2. **宠物档案管理** - 宠物信息录入、展示、编辑
3. **日常记录系统** - 多类型记录的添加、查看、管理
4. **记账统计功能** - 消费记录、统计分析、图表展示
5. **分享权限管理** - 记录分享设置、隐私控制
6. **家庭共养功能** - 家庭创建、成员邀请、权限管理
7. **AI助手基础版** - 简单对话、知识查询、智能提醒
8. **领养专区** - 发布领养、浏览申请、沟通管理
## 2. 详细功能拆分
### 2.1 用户系统
#### 2.1.1 微信登录
**功能描述**:用户通过微信授权登录小程序
**具体实现**
- 调用微信小程序登录API获取code
- 后端通过code换取openid和session_key
- 生成JWT token返回给前端
- 前端存储token用于后续API调用
**页面设计**
- 登录页面:显示微信登录按钮
- 授权页面:获取用户基本信息授权
**数据字段**
- openid微信用户唯一标识
- nickname用户昵称
- avatar用户头像
- phone手机号可选
#### 2.1.2 用户信息管理
**功能描述**:用户可以查看和编辑个人信息
**具体实现**
- 个人中心页面展示用户信息
- 支持修改昵称、头像、手机号
- 头像支持拍照或从相册选择
### 2.2 宠物档案管理
#### 2.2.1 宠物信息录入
**功能描述**:用户可以添加宠物的基本信息
**必填字段**
- 宠物名字:文本输入
- 品种:下拉选择或文本输入
- 性别:单选(公/母)
- 生日:日期选择器
- 到家日期:日期选择器
**可选字段**
- 体重数字输入单位kg
- 毛色:文本输入
- 性格标签:多选标签
- 特殊说明:文本输入
- 头像:图片上传
**自动计算字段**
- 年龄:根据生日自动计算
- 陪伴天数:根据到家日期自动计算
- 星座:根据生日自动计算
#### 2.2.2 宠物信息展示
**首页宠物卡片**
- 宠物头像(圆形)
- 宠物名字
- 年龄和陪伴天数
- 快捷操作按钮(添加记录、查看详情)
**宠物详情页**
- 完整的宠物信息展示
- 编辑按钮
- 最近记录列表
- 统计数据概览
#### 2.2.3 多宠物管理
**功能描述**:支持用户管理多只宠物
**具体实现**
- 宠物列表页面
- 宠物切换功能
- 每只宠物独立的记录和统计
### 2.3 日常记录系统
#### 2.3.1 记录分类定义
**随手记**
- 内容:文字描述
- 图片可选最多9张
- 时间:默认当前时间,可修改
**大事记**
- 预设选项:绝育、第一次吃奶、第一次吃猫粮、第一次用猫砂、第一次搞破坏、第一次出门、第一次发情、生日、到家
- 自定义:用户可以添加自定义大事记
- 内容:文字描述
- 图片:可选
- 时间:必填
**日常记录**
- 体重数值输入kg+ 备注
- 尿便:次数 + 状态描述 + 图片
- 饮食:食物类型 + 分量 + 时间 + 图片
- 喝水水量ml+ 时间
- 记账:金额 + 类别 + 备注
**健康记录**
- 喂保健品:保健品名称 + 剂量 + 时间
- 驱虫:驱虫药名称 + 时间 + 下次提醒
- 疫苗:疫苗类型 + 时间 + 下次提醒
- 抗体水平:检测结果 + 时间
- 体检:体检项目 + 结果 + 图片
- 看病:症状 + 诊断 + 治疗方案 + 费用
- 给药:药品名称 + 剂量 + 频次 + 时间
- 住院:入院时间 + 出院时间 + 原因 + 费用
- 手术:手术类型 + 时间 + 费用 + 恢复情况
**洗护记录**
- 洗澡:时间 + 使用产品 + 图片
- 剪指甲:时间 + 备注
- 洗耳朵:时间 + 使用产品
- 刷牙:时间 + 使用产品
- 梳毛:时间 + 备注
- 剃脚毛:时间 + 备注
- 美容:时间 + 项目 + 费用 + 图片
- 挤肛门腺:时间 + 备注
- 擦眼屎:时间 + 备注
**清洁记录**
- 消毒:消毒区域 + 使用产品 + 时间
- 清洁:清洁项目 + 时间
- 换猫砂:时间 + 猫砂类型
- 洗猫砂盆:时间 + 清洁产品
- 洗食盆:时间
- 洗水盆:时间
- 洗玩具:时间 + 清洁方式
- 洗笼子:时间 + 清洁产品
- 换滤芯:设备名称 + 时间
- 换干燥剂:时间 + 位置
**自定义类型**
- 用户可以创建自定义记录类型
- 自定义字段配置
- 保存为模板供后续使用
#### 2.3.2 记录添加流程
1. 选择宠物(如果有多只)
2. 选择记录类型
3. 填写记录内容
4. 上传图片(可选)
5. 设置分享权限
6. 保存记录
#### 2.3.3 记录展示和管理
**时间线展示**
- 按时间倒序显示所有记录
- 不同类型用不同图标和颜色区分
- 支持下拉刷新和上拉加载
**分类筛选**
- 按记录类型筛选
- 按时间范围筛选
- 按宠物筛选(多宠物情况)
**记录详情**
- 完整的记录信息展示
- 图片查看(支持放大)
- 编辑和删除功能
### 2.4 记账统计功能
#### 2.4.1 消费记录
**记录字段**
- 金额:数字输入(精确到分)
- 类别:食物、医疗、用品、服务、其他
- 备注:文字描述
- 关联宠物:选择宠物(支持多选)
- 时间:默认当前时间,可修改
**快捷记录**
- 常用金额快捷按钮
- 常用类别快捷选择
- 语音输入金额
#### 2.4.2 统计分析
**宠物维度统计**
- 可以切换查看不同宠物的消费
- 支持查看所有宠物的总消费
**时间维度统计**
- 按月份统计:当月消费总额和分类占比
- 按年份统计:全年消费趋势
- 自定义时间范围统计
**图表展示**
- 柱状图:月度消费趋势
- 饼图:消费类别占比
- 折线图:消费变化趋势
#### 2.4.3 数据导出
- 支持导出Excel格式的消费记录
- 按时间范围和宠物筛选导出
- 包含详细的消费明细和统计汇总
### 2.5 分享权限管理
#### 2.5.1 分享设置
**三种分享模式**
- 公开:所有用户可见
- 仅家人:只有家庭成员可见
- 私有:只有自己可见
**设置方式**
- 添加记录时设置
- 记录详情页修改
- 批量修改多条记录
#### 2.5.2 默认设置
- 用户可以设置默认的分享权限
- 新记录自动使用默认设置
- 可以为不同类型的记录设置不同的默认权限
### 2.6 家庭共养功能
#### 2.6.1 家庭创建
**创建流程**
1. 用户点击创建家庭
2. 填写家庭名称
3. 选择要共享的宠物
4. 生成邀请码
**家庭信息**
- 家庭名称
- 创建时间
- 成员数量
- 共享宠物列表
#### 2.6.2 成员邀请
**邀请方式**
- 邀请码分享生成6位数字邀请码
- 微信直接邀请:通过微信分享邀请链接
**邀请流程**
1. 家庭主人发送邀请
2. 被邀请人点击链接或输入邀请码
3. 确认加入家庭
4. 设置成员权限
#### 2.6.3 权限管理
**角色定义**
- 主人:所有权限,可以邀请成员、设置权限、删除家庭
- 家人:可以查看和添加记录,不能删除其他人的记录
- 观察者:只能查看记录,不能添加或修改
**权限细分**
- 查看记录:所有角色都有
- 添加记录:主人和家人
- 编辑记录:只能编辑自己添加的记录
- 删除记录:只能删除自己添加的记录
- 管理宠物:只有主人可以
#### 2.6.4 消息推送
**推送场景**
- 新成员加入家庭
- 重要健康记录(生病、疫苗、体检等)
- 紧急情况记录
**推送方式**
- 微信小程序模板消息
- 站内消息通知
### 2.7 AI助手基础版
#### 2.7.1 基础对话功能
**对话界面**
- 聊天气泡样式
- 支持文字输入
- 显示AI回复
**知识问答**
- 宠物生病:常见疾病症状和处理建议
- 宠物训练:基础训练方法和技巧
- 宠物喂养:不同年龄段的喂养指导
- 紧急情况:紧急情况的处理步骤
#### 2.7.2 智能提醒功能
**语义识别**
- 识别时间表达明天、下周、9点等
- 识别任务内容:疫苗、体检、喂药等
- 生成结构化提醒
**提醒管理**
- 自动生成提醒记录
- 设置推送时间
- 提醒后询问完成状态
- 更新任务状态
#### 2.7.3 对话历史
**历史记录**
- 保存所有对话内容
- 按日期分组显示
- 支持搜索历史对话
**分页加载**
- 每页显示20条对话
- 支持上拉加载更多
- 新对话自动滚动到底部
#### 2.7.4 每日总结
**总结功能**
- 每天晚上自动总结当天对话
- 识别重要信息(健康问题、异常情况)
- 生成关注提醒
**主动关怀**
- 如果提到宠物生病,第二天主动询问情况
- 定期询问宠物状况
- 提供个性化建议
### 2.8 领养专区
#### 2.8.1 发布领养信息
**宠物信息**
- 基本信息:名字、性别、种类、年龄
- 健康状况:绝育、疫苗、驱虫、疾病情况
- 性格描述:文字描述宠物性格和习惯
- 图片上传最多9张宠物照片
**领养要求**
- 基础要求:年龄、居住条件、经济能力
- 特殊要求:养宠经验、是否同意绝育等
- 筛选问题:自定义问题列表
**发布设置**
- 有效期:可设置领养信息的有效期
- 联系方式:手机号或微信号
- 地区:选择所在城市和区域
#### 2.8.2 浏览和筛选
**列表展示**
- 宠物照片和基本信息
- 发布时间和地区
- 快速筛选标签
**筛选功能**
- 地区筛选:按省市区筛选
- 类型筛选:按宠物种类筛选
- 条件筛选:按年龄、性别、绝育状态筛选
**搜索功能**
- 关键词搜索
- 按品种搜索
- 按发布者搜索
#### 2.8.3 申请和沟通
**申请流程**
1. 查看领养详情
2. 填写申请信息
3. 回答筛选问题
4. 提交申请
5. 等待审核
**申请信息**
- 个人基本信息
- 养宠经验描述
- 居住环境说明
- 承诺和保证
**沟通功能**
- 简单的聊天界面
- 支持文字和图片
- 消息推送通知
#### 2.8.4 管理和审核
**发布者管理**
- 查看所有申请
- 筛选合适的申请者
- 与申请者沟通
- 选择最终领养者
**管理员审核**
- 审核发布的领养信息
- 处理举报和投诉
- 维护平台秩序
**状态管理**
- 发布中、已暂停、已完成
- 申请中、已通过、已拒绝
- 自动状态更新
## 3. 技术实现要点
### 3.1 数据存储
- 使用MongoDB存储所有数据
- 图片存储在腾讯云COS
- Redis缓存热点数据
### 3.2 API设计
- RESTful API设计
- JWT token认证
- 统一的错误处理和返回格式
### 3.3 性能优化
- 图片压缩和懒加载
- 分页加载减少数据量
- 缓存常用数据
### 3.4 安全考虑
- 用户数据加密存储
- API接口权限验证
- 图片内容安全检查
---
**文档版本**v1.0
**创建日期**2025年1月
**负责人**:开发团队