420 lines
11 KiB
Markdown
420 lines
11 KiB
Markdown
# 宠物管家小程序第一版本功能拆分详细说明
|
||
|
||
## 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月
|
||
**负责人**:开发团队
|