828 lines
20 KiB
Plaintext
828 lines
20 KiB
Plaintext
|
|
========================================
|
|||
|
|
陪诊SAAS系统 - 项目需求文档
|
|||
|
|
========================================
|
|||
|
|
|
|||
|
|
一、项目概述
|
|||
|
|
-----------
|
|||
|
|
|
|||
|
|
1.1 项目背景
|
|||
|
|
随着医疗服务的不断发展和人口老龄化趋势,患者就医过程中需要专业陪诊服务的需求日益增长。陪诊SAAS系统旨在为患者提供便捷、专业的陪诊服务,同时为陪护人员提供工作平台,实现患者与陪护人员的精准匹配。
|
|||
|
|
|
|||
|
|
1.2 项目定位
|
|||
|
|
陪诊SAAS系统是一个多端协同的医疗陪诊服务平台,通过互联网技术连接患者、陪护人员和医院,提供线上预约、线下服务的O2O医疗陪诊服务。
|
|||
|
|
|
|||
|
|
1.3 系统架构
|
|||
|
|
系统采用前后端分离架构,包含以下三个端:
|
|||
|
|
- 后台管理系统(Java + Spring Boot + Vue)
|
|||
|
|
- 客户端微信小程序(患者端)
|
|||
|
|
- 陪护端Android应用(陪护人员端)
|
|||
|
|
|
|||
|
|
1.4 核心价值
|
|||
|
|
- 为患者提供便捷的陪诊服务预约渠道
|
|||
|
|
- 为陪护人员提供稳定的工作机会和收入来源
|
|||
|
|
- 优化医疗资源配置,提升就医体验
|
|||
|
|
- 建立标准化的陪诊服务流程
|
|||
|
|
|
|||
|
|
二、用户角色定义
|
|||
|
|
---------------
|
|||
|
|
|
|||
|
|
2.1 患者(客户端用户)
|
|||
|
|
- 角色描述:需要陪诊服务的患者或患者家属
|
|||
|
|
- 使用终端:微信小程序
|
|||
|
|
- 核心需求:
|
|||
|
|
* 浏览和选择陪诊服务类型
|
|||
|
|
* 选择医院和陪护人员
|
|||
|
|
* 下单并支付
|
|||
|
|
* 查看订单状态和服务进度
|
|||
|
|
* 评价服务
|
|||
|
|
* 申请退款
|
|||
|
|
|
|||
|
|
2.2 陪护人员(服务提供者)
|
|||
|
|
- 角色描述:提供陪诊服务的专业人员
|
|||
|
|
- 使用终端:Android应用
|
|||
|
|
- 核心需求:
|
|||
|
|
* 查看待接单订单
|
|||
|
|
* 接单/拒单
|
|||
|
|
* 查看已接订单详情
|
|||
|
|
* 开始服务、完成服务
|
|||
|
|
* 查看收入明细
|
|||
|
|
* 个人信息管理
|
|||
|
|
|
|||
|
|
2.3 系统管理员
|
|||
|
|
- 角色描述:平台运营管理人员
|
|||
|
|
- 使用终端:Web后台管理系统
|
|||
|
|
- 核心需求:
|
|||
|
|
* 用户管理(患者、陪护人员)
|
|||
|
|
* 订单管理(审核、分配、处理退款)
|
|||
|
|
* 医院信息管理
|
|||
|
|
* 服务类型和价格配置
|
|||
|
|
* 数据统计和报表
|
|||
|
|
* 系统参数配置
|
|||
|
|
|
|||
|
|
三、功能需求详述
|
|||
|
|
---------------
|
|||
|
|
|
|||
|
|
【3.1 客户端微信小程序功能需求】
|
|||
|
|
|
|||
|
|
3.1.1 用户注册与登录
|
|||
|
|
- 微信授权登录
|
|||
|
|
* 支持微信小程序一键登录
|
|||
|
|
* 获取用户微信信息(openid、手机号等)
|
|||
|
|
* 自动创建用户账号
|
|||
|
|
- 手机号登录
|
|||
|
|
* 短信验证码登录
|
|||
|
|
* 支持手机号快速注册
|
|||
|
|
- 用户信息完善
|
|||
|
|
* 绑定手机号
|
|||
|
|
* 设置昵称、头像
|
|||
|
|
* 实名认证(可选)
|
|||
|
|
|
|||
|
|
3.1.2 首页功能
|
|||
|
|
- 服务类型展示
|
|||
|
|
* 全程陪诊:200元/次
|
|||
|
|
- 服务内容:排队、预约、挂号、缴费、取药、记录医嘱
|
|||
|
|
* 诊前约号:20元/次
|
|||
|
|
- 服务内容:协助办理完成挂号
|
|||
|
|
* 取送结果:50元/次
|
|||
|
|
- 服务内容:包括给病人或者家属取检查报告化验单等
|
|||
|
|
* 代办问诊:100元/次
|
|||
|
|
- 服务内容:使用病人或者家属取检查报告化验单向医生问明情况
|
|||
|
|
- 医院列表展示
|
|||
|
|
* 显示合作医院信息
|
|||
|
|
* 支持按医院筛选服务
|
|||
|
|
- Banner轮播
|
|||
|
|
* 展示活动、公告等信息
|
|||
|
|
|
|||
|
|
3.1.3 陪诊服务下单
|
|||
|
|
- 服务类型选择
|
|||
|
|
* 选择陪诊服务类型(全程陪诊/诊前约号/取送结果/代办问诊)
|
|||
|
|
* 查看服务详情和价格
|
|||
|
|
- 医院选择
|
|||
|
|
* 从医院列表中选择目标医院
|
|||
|
|
* 支持搜索医院
|
|||
|
|
- 填写订单信息
|
|||
|
|
* 就诊人姓名
|
|||
|
|
* 就诊人联系电话(必填,格式验证)
|
|||
|
|
* 服务开始日期(必填)
|
|||
|
|
* 服务开始时间
|
|||
|
|
* 送达地址(取送结果服务需要)
|
|||
|
|
* 特殊要求/备注
|
|||
|
|
* 患者身份证号(可选)
|
|||
|
|
- 订单提交
|
|||
|
|
* 创建订单
|
|||
|
|
* 生成订单号
|
|||
|
|
* 跳转支付页面
|
|||
|
|
|
|||
|
|
3.1.4 订单管理
|
|||
|
|
- 订单列表
|
|||
|
|
* 全部订单
|
|||
|
|
* 待付款订单(status=1)
|
|||
|
|
* 待服务订单(status=2)
|
|||
|
|
* 服务中订单(status=3)
|
|||
|
|
* 已完成订单(status=4)
|
|||
|
|
* 已取消订单(status=-2)
|
|||
|
|
* 支持下拉刷新和上拉加载更多
|
|||
|
|
- 订单详情
|
|||
|
|
* 订单基本信息
|
|||
|
|
- 订单号
|
|||
|
|
- 服务类型
|
|||
|
|
- 医院名称
|
|||
|
|
- 服务时间
|
|||
|
|
- 订单金额
|
|||
|
|
- 订单状态
|
|||
|
|
* 就诊人信息
|
|||
|
|
- 姓名
|
|||
|
|
- 联系电话
|
|||
|
|
- 送达地址
|
|||
|
|
* 陪护人员信息(已接单后显示)
|
|||
|
|
- 姓名
|
|||
|
|
- 联系电话
|
|||
|
|
- 头像
|
|||
|
|
* 订单操作
|
|||
|
|
- 待付款:去支付、取消订单
|
|||
|
|
- 待服务:联系陪护、取消订单
|
|||
|
|
- 服务中:联系陪护、查看服务进度
|
|||
|
|
- 已完成:评价、申请退款
|
|||
|
|
- 已取消:删除订单
|
|||
|
|
|
|||
|
|
3.1.5 支付功能
|
|||
|
|
- 微信支付
|
|||
|
|
* 调用微信支付接口
|
|||
|
|
* 支持订单支付
|
|||
|
|
* 支付成功后更新订单状态
|
|||
|
|
- 支付结果
|
|||
|
|
* 支付成功页面
|
|||
|
|
* 支付失败提示
|
|||
|
|
* 支付取消处理
|
|||
|
|
|
|||
|
|
3.1.6 退款功能
|
|||
|
|
- 申请退款
|
|||
|
|
* 选择退款原因
|
|||
|
|
- 不喜欢/不想要
|
|||
|
|
- 商品信息与描述不符
|
|||
|
|
- 买多/买错/计划有变
|
|||
|
|
- 更换其他项目、购买了其他项目
|
|||
|
|
- 没有时间/个人原因
|
|||
|
|
- 其他原因
|
|||
|
|
* 上传退款凭证(图片)
|
|||
|
|
* 填写退款说明
|
|||
|
|
* 提交退款申请
|
|||
|
|
- 退款进度查询
|
|||
|
|
* 查看退款状态(申请退款/退款中/已退款/退款失败)
|
|||
|
|
* 查看退款金额
|
|||
|
|
* 查看退款原因
|
|||
|
|
|
|||
|
|
3.1.7 个人中心
|
|||
|
|
- 个人信息
|
|||
|
|
* 查看个人资料
|
|||
|
|
* 修改昵称、头像
|
|||
|
|
* 绑定/解绑手机号
|
|||
|
|
- 我的订单
|
|||
|
|
* 快速入口到订单列表
|
|||
|
|
- 我的钱包
|
|||
|
|
* 查看余额
|
|||
|
|
* 查看累计收益
|
|||
|
|
* 提现功能(如适用)
|
|||
|
|
- 设置
|
|||
|
|
* 关于我们
|
|||
|
|
* 隐私政策
|
|||
|
|
* 退出登录
|
|||
|
|
|
|||
|
|
3.1.8 其他功能
|
|||
|
|
- 消息通知
|
|||
|
|
* 订单状态变更通知
|
|||
|
|
* 系统公告
|
|||
|
|
- 客服功能
|
|||
|
|
* 在线客服(如配置)
|
|||
|
|
* 客服电话
|
|||
|
|
|
|||
|
|
【3.2 陪护端Android应用功能需求】
|
|||
|
|
|
|||
|
|
3.2.1 登录功能
|
|||
|
|
- 手机号登录
|
|||
|
|
* 验证码登录
|
|||
|
|
* 密码登录
|
|||
|
|
- 忘记密码
|
|||
|
|
* 通过手机号重置密码
|
|||
|
|
- 自动登录
|
|||
|
|
* 记住登录状态
|
|||
|
|
|
|||
|
|
3.2.2 首页功能
|
|||
|
|
- 待接订单列表
|
|||
|
|
* 显示待接单订单(status=0)
|
|||
|
|
* 订单基本信息展示
|
|||
|
|
- 服务类型
|
|||
|
|
- 医院名称
|
|||
|
|
- 服务时间
|
|||
|
|
- 订单金额
|
|||
|
|
- 就诊人联系电话
|
|||
|
|
* 接单/拒单操作
|
|||
|
|
- 已接订单列表
|
|||
|
|
* 显示已接单订单(status=1,2,3)
|
|||
|
|
* 订单状态筛选
|
|||
|
|
* 订单详情查看
|
|||
|
|
|
|||
|
|
3.2.3 订单管理
|
|||
|
|
- 订单详情
|
|||
|
|
* 订单基本信息
|
|||
|
|
* 患者信息
|
|||
|
|
- 姓名
|
|||
|
|
- 联系电话
|
|||
|
|
- 送达地址
|
|||
|
|
* 服务要求
|
|||
|
|
- 服务时间
|
|||
|
|
- 特殊要求/备注
|
|||
|
|
* 订单操作
|
|||
|
|
- 待接单:接单、拒单
|
|||
|
|
- 已接单:开始服务
|
|||
|
|
- 服务中:完成服务、联系患者
|
|||
|
|
- 已完成:查看详情
|
|||
|
|
|
|||
|
|
3.2.4 服务操作
|
|||
|
|
- 开始服务
|
|||
|
|
* 确认到达医院
|
|||
|
|
* 开始计时
|
|||
|
|
* 更新订单状态为"服务中"(status=3)
|
|||
|
|
- 服务进行中
|
|||
|
|
* 记录服务过程
|
|||
|
|
* 上传服务照片(可选)
|
|||
|
|
* 联系患者
|
|||
|
|
- 完成服务
|
|||
|
|
* 确认服务完成
|
|||
|
|
* 上传服务凭证
|
|||
|
|
* 更新订单状态为"已完成"(status=4)
|
|||
|
|
* 等待患者确认
|
|||
|
|
|
|||
|
|
3.2.5 收入管理
|
|||
|
|
- 收入明细
|
|||
|
|
* 查看历史收入记录
|
|||
|
|
* 按时间筛选
|
|||
|
|
* 收入统计(日/月/年)
|
|||
|
|
- 提现功能
|
|||
|
|
* 申请提现
|
|||
|
|
* 提现记录查询
|
|||
|
|
* 提现状态跟踪
|
|||
|
|
|
|||
|
|
3.2.6 个人中心
|
|||
|
|
- 个人信息
|
|||
|
|
* 查看个人资料
|
|||
|
|
* 修改个人信息
|
|||
|
|
* 上传头像
|
|||
|
|
- 实名认证
|
|||
|
|
* 上传身份证
|
|||
|
|
* 实名认证审核
|
|||
|
|
- 我的订单
|
|||
|
|
* 全部订单
|
|||
|
|
* 待接单
|
|||
|
|
* 服务中
|
|||
|
|
* 已完成
|
|||
|
|
- 设置
|
|||
|
|
* 修改密码
|
|||
|
|
* 消息通知设置
|
|||
|
|
* 关于我们
|
|||
|
|
* 退出登录
|
|||
|
|
|
|||
|
|
3.2.7 其他功能
|
|||
|
|
- 消息通知
|
|||
|
|
* 新订单提醒
|
|||
|
|
* 订单状态变更通知
|
|||
|
|
* 系统消息
|
|||
|
|
- 定位功能
|
|||
|
|
* 获取当前位置
|
|||
|
|
* 导航到医院(集成地图)
|
|||
|
|
|
|||
|
|
【3.3 后台管理系统功能需求】
|
|||
|
|
|
|||
|
|
3.3.1 用户管理
|
|||
|
|
- 患者管理
|
|||
|
|
* 患者列表查询
|
|||
|
|
* 患者信息查看/编辑
|
|||
|
|
* 患者订单统计
|
|||
|
|
* 患者状态管理(启用/禁用)
|
|||
|
|
- 陪护人员管理
|
|||
|
|
* 陪护人员列表查询
|
|||
|
|
* 陪护人员信息查看/编辑
|
|||
|
|
* 陪护人员认证审核
|
|||
|
|
* 陪护人员服务统计
|
|||
|
|
* 陪护人员状态管理(启用/禁用)
|
|||
|
|
* 陪护人员等级管理
|
|||
|
|
|
|||
|
|
3.3.2 订单管理
|
|||
|
|
- 订单列表
|
|||
|
|
* 全部订单查询
|
|||
|
|
* 按订单状态筛选
|
|||
|
|
* 按服务类型筛选
|
|||
|
|
* 按时间范围筛选
|
|||
|
|
* 按医院筛选
|
|||
|
|
* 订单搜索(订单号、患者姓名、手机号)
|
|||
|
|
- 订单详情
|
|||
|
|
* 查看订单完整信息
|
|||
|
|
* 订单状态修改
|
|||
|
|
* 订单金额调整
|
|||
|
|
* 订单备注
|
|||
|
|
- 订单操作
|
|||
|
|
* 手动分配订单
|
|||
|
|
* 取消订单
|
|||
|
|
* 退款审核
|
|||
|
|
* 订单结算
|
|||
|
|
- 订单统计
|
|||
|
|
* 订单数量统计
|
|||
|
|
* 订单金额统计
|
|||
|
|
* 订单状态分布
|
|||
|
|
* 服务类型统计
|
|||
|
|
|
|||
|
|
3.3.3 医院管理
|
|||
|
|
- 医院信息管理
|
|||
|
|
* 添加医院
|
|||
|
|
* 编辑医院信息
|
|||
|
|
* 删除医院
|
|||
|
|
* 医院状态管理
|
|||
|
|
- 医院信息字段
|
|||
|
|
* 医院名称
|
|||
|
|
* 医院地址
|
|||
|
|
* 联系电话
|
|||
|
|
* 医院等级
|
|||
|
|
* 医院简介
|
|||
|
|
* 医院图片
|
|||
|
|
|
|||
|
|
3.3.4 服务类型管理
|
|||
|
|
- 服务类型配置
|
|||
|
|
* 服务类型列表
|
|||
|
|
* 添加服务类型
|
|||
|
|
* 编辑服务类型
|
|||
|
|
* 删除服务类型
|
|||
|
|
- 价格管理
|
|||
|
|
* 服务价格设置
|
|||
|
|
* 价格调整
|
|||
|
|
* 价格历史记录
|
|||
|
|
|
|||
|
|
3.3.5 财务管理
|
|||
|
|
- 收入统计
|
|||
|
|
* 平台收入统计
|
|||
|
|
* 按时间统计
|
|||
|
|
* 按服务类型统计
|
|||
|
|
- 退款管理
|
|||
|
|
* 退款申请列表
|
|||
|
|
* 退款审核
|
|||
|
|
* 退款处理
|
|||
|
|
* 退款统计
|
|||
|
|
- 结算管理
|
|||
|
|
* 陪护人员结算
|
|||
|
|
* 结算记录
|
|||
|
|
* 结算统计
|
|||
|
|
|
|||
|
|
3.3.6 数据统计
|
|||
|
|
- 用户统计
|
|||
|
|
* 用户数量统计
|
|||
|
|
* 用户增长趋势
|
|||
|
|
* 用户活跃度
|
|||
|
|
- 订单统计
|
|||
|
|
* 订单量统计
|
|||
|
|
* 订单金额统计
|
|||
|
|
* 订单完成率
|
|||
|
|
- 服务统计
|
|||
|
|
* 服务类型分布
|
|||
|
|
* 医院服务量统计
|
|||
|
|
* 陪护人员服务量统计
|
|||
|
|
|
|||
|
|
3.3.7 系统配置
|
|||
|
|
- 参数配置
|
|||
|
|
* 系统参数设置
|
|||
|
|
* 业务参数配置
|
|||
|
|
- 字典管理
|
|||
|
|
* 数据字典维护
|
|||
|
|
- 通知公告
|
|||
|
|
* 发布系统公告
|
|||
|
|
* 公告管理
|
|||
|
|
|
|||
|
|
3.3.8 权限管理
|
|||
|
|
- 角色管理
|
|||
|
|
* 角色创建
|
|||
|
|
* 角色权限分配
|
|||
|
|
- 管理员管理
|
|||
|
|
* 管理员账号管理
|
|||
|
|
* 权限分配
|
|||
|
|
|
|||
|
|
四、业务流程
|
|||
|
|
-----------
|
|||
|
|
|
|||
|
|
4.1 陪诊服务完整流程
|
|||
|
|
|
|||
|
|
【流程1:患者下单流程】
|
|||
|
|
1. 患者打开微信小程序
|
|||
|
|
2. 选择服务类型(全程陪诊/诊前约号/取送结果/代办问诊)
|
|||
|
|
3. 选择目标医院
|
|||
|
|
4. 填写订单信息(就诊人信息、服务时间、特殊要求等)
|
|||
|
|
5. 提交订单,生成订单号
|
|||
|
|
6. 订单状态:待接单(status=0)
|
|||
|
|
7. 跳转支付页面
|
|||
|
|
8. 选择支付方式(微信支付)
|
|||
|
|
9. 完成支付
|
|||
|
|
10. 订单状态:已支付/待服务(status=2)
|
|||
|
|
|
|||
|
|
【流程2:陪护人员接单流程】
|
|||
|
|
1. 陪护人员打开Android应用
|
|||
|
|
2. 查看待接订单列表
|
|||
|
|
3. 查看订单详情(服务类型、医院、时间、患者信息)
|
|||
|
|
4. 选择接单或拒单
|
|||
|
|
5. 如果接单:
|
|||
|
|
- 订单状态:已接单(status=1)
|
|||
|
|
- 患者端收到接单通知
|
|||
|
|
6. 如果拒单:
|
|||
|
|
- 订单状态:拒绝接单(status=-1)
|
|||
|
|
- 订单重新进入待接单状态,等待其他陪护接单
|
|||
|
|
|
|||
|
|
【流程3:服务执行流程】
|
|||
|
|
1. 陪护人员到达医院
|
|||
|
|
2. 在应用中点击"开始服务"
|
|||
|
|
3. 订单状态:服务中(status=3)
|
|||
|
|
4. 患者端显示服务中状态
|
|||
|
|
5. 陪护人员执行服务内容
|
|||
|
|
6. 服务过程中可上传照片、联系患者
|
|||
|
|
7. 服务完成后,陪护人员点击"完成服务"
|
|||
|
|
8. 订单状态:已完成(status=4)
|
|||
|
|
9. 患者确认服务完成
|
|||
|
|
10. 患者可对服务进行评价
|
|||
|
|
|
|||
|
|
【流程4:退款流程】
|
|||
|
|
1. 患者申请退款
|
|||
|
|
2. 选择退款原因
|
|||
|
|
3. 上传退款凭证(如需要)
|
|||
|
|
4. 提交退款申请
|
|||
|
|
5. 订单状态:申请退款(status=5)
|
|||
|
|
6. 后台管理员审核退款申请
|
|||
|
|
7. 审核通过:
|
|||
|
|
- 订单状态:退款中(status=6)
|
|||
|
|
- 执行退款操作
|
|||
|
|
- 订单状态:已退款(status=7)
|
|||
|
|
8. 审核不通过:
|
|||
|
|
- 订单状态恢复原状态
|
|||
|
|
- 通知患者审核结果
|
|||
|
|
|
|||
|
|
【流程5:订单结算流程】
|
|||
|
|
1. 订单完成后,系统自动或手动结算
|
|||
|
|
2. 计算陪护人员收入(扣除平台服务费)
|
|||
|
|
3. 订单状态:已结算(status=8)
|
|||
|
|
4. 陪护人员可申请提现
|
|||
|
|
|
|||
|
|
4.2 订单状态流转图
|
|||
|
|
|
|||
|
|
待接单(0)
|
|||
|
|
↓ [陪护接单]
|
|||
|
|
已接单(1)
|
|||
|
|
↓ [患者支付]
|
|||
|
|
已支付/待服务(2)
|
|||
|
|
↓ [陪护开始服务]
|
|||
|
|
服务中(3)
|
|||
|
|
↓ [陪护完成服务]
|
|||
|
|
已完成(4)
|
|||
|
|
↓ [系统结算]
|
|||
|
|
已结算(8)
|
|||
|
|
|
|||
|
|
异常流程:
|
|||
|
|
- 待接单(0) → [陪护拒单] → 拒绝接单(-1) → [重新分配] → 待接单(0)
|
|||
|
|
- 待接单(0) → [患者取消] → 已取消(-2)
|
|||
|
|
- 已支付(2) → [患者申请退款] → 申请退款(5) → [审核通过] → 退款中(6) → 已退款(7)
|
|||
|
|
- 服务中(3) → [患者申请退款] → 申请退款(5) → [审核通过] → 退款中(6) → 已退款(7)
|
|||
|
|
|
|||
|
|
五、非功能性需求
|
|||
|
|
---------------
|
|||
|
|
|
|||
|
|
5.1 性能需求
|
|||
|
|
- 系统响应时间
|
|||
|
|
* 页面加载时间 < 3秒
|
|||
|
|
* API接口响应时间 < 1秒
|
|||
|
|
* 支付接口响应时间 < 2秒
|
|||
|
|
- 并发处理
|
|||
|
|
* 支持1000+并发用户
|
|||
|
|
* 订单处理能力 > 100单/分钟
|
|||
|
|
- 数据容量
|
|||
|
|
* 支持10万+用户数据
|
|||
|
|
* 支持100万+订单数据
|
|||
|
|
|
|||
|
|
5.2 安全需求
|
|||
|
|
- 数据安全
|
|||
|
|
* 用户敏感信息加密存储
|
|||
|
|
* 支付信息加密传输
|
|||
|
|
* 数据库定期备份
|
|||
|
|
- 接口安全
|
|||
|
|
* JWT Token认证
|
|||
|
|
* API接口权限控制
|
|||
|
|
* 防SQL注入、XSS攻击
|
|||
|
|
- 支付安全
|
|||
|
|
* 微信支付官方SDK
|
|||
|
|
* 支付回调验证
|
|||
|
|
* 订单金额校验
|
|||
|
|
|
|||
|
|
5.3 可用性需求
|
|||
|
|
- 系统可用性
|
|||
|
|
* 系统可用率 > 99.5%
|
|||
|
|
* 7×24小时服务
|
|||
|
|
- 容错处理
|
|||
|
|
* 异常情况友好提示
|
|||
|
|
* 自动重试机制
|
|||
|
|
* 降级方案
|
|||
|
|
|
|||
|
|
5.4 兼容性需求
|
|||
|
|
- 微信小程序
|
|||
|
|
* 支持微信7.0+版本
|
|||
|
|
* 适配iOS和Android系统
|
|||
|
|
- Android应用
|
|||
|
|
* 支持Android 8.0+(API 26+)
|
|||
|
|
* 适配主流Android手机品牌
|
|||
|
|
- 后台管理系统
|
|||
|
|
* 支持Chrome、Firefox、Safari、Edge等主流浏览器
|
|||
|
|
* 响应式设计,支持PC和移动端
|
|||
|
|
|
|||
|
|
5.5 可维护性需求
|
|||
|
|
- 代码规范
|
|||
|
|
* 遵循Java、JavaScript代码规范
|
|||
|
|
* 代码注释完整
|
|||
|
|
- 日志记录
|
|||
|
|
* 关键操作日志记录
|
|||
|
|
* 错误日志记录和告警
|
|||
|
|
- 文档完善
|
|||
|
|
* API接口文档
|
|||
|
|
* 数据库设计文档
|
|||
|
|
* 部署运维文档
|
|||
|
|
|
|||
|
|
六、技术架构
|
|||
|
|
-----------
|
|||
|
|
|
|||
|
|
6.1 后端技术栈
|
|||
|
|
- 框架:Spring Boot 2.5.14
|
|||
|
|
- 安全:Spring Security + JWT
|
|||
|
|
- 数据库:MySQL 5.7+
|
|||
|
|
- 缓存:Redis
|
|||
|
|
- 持久层:MyBatis
|
|||
|
|
- API文档:Swagger 3.0
|
|||
|
|
- 定时任务:Quartz
|
|||
|
|
- 构建工具:Maven
|
|||
|
|
|
|||
|
|
6.2 前端技术栈(后台管理)
|
|||
|
|
- 框架:Vue 2.6.12
|
|||
|
|
- UI组件:Element UI 2.15.8
|
|||
|
|
- 状态管理:Vuex 3.6.0
|
|||
|
|
- 路由:Vue Router 3.4.9
|
|||
|
|
- HTTP客户端:Axios 0.24.0
|
|||
|
|
|
|||
|
|
6.3 客户端技术栈(微信小程序)
|
|||
|
|
- 开发框架:微信小程序原生框架
|
|||
|
|
- UI组件:Vant Weapp 1.10.0
|
|||
|
|
- 网络请求:wx.request
|
|||
|
|
- 支付:微信支付SDK
|
|||
|
|
|
|||
|
|
6.4 陪护端技术栈(Android)
|
|||
|
|
- 开发语言:Java
|
|||
|
|
- 最低SDK:Android 8.0 (API 26)
|
|||
|
|
- 目标SDK:Android 14 (API 34)
|
|||
|
|
- 网络框架:Retrofit 2.4.0 + OkHttp 3.5.0
|
|||
|
|
- 响应式编程:RxJava 2.2.6
|
|||
|
|
- 图片加载:Glide 4.9.0
|
|||
|
|
- 数据库:OrmLite 5.1
|
|||
|
|
- 架构模式:MVP
|
|||
|
|
|
|||
|
|
6.5 数据库设计
|
|||
|
|
- 用户表(sys_user)
|
|||
|
|
* 患者和陪护人员共用
|
|||
|
|
* 通过userType区分(C=患者,B=陪护)
|
|||
|
|
- 订单表(rlz_order)
|
|||
|
|
* 订单基本信息
|
|||
|
|
* 订单状态
|
|||
|
|
* 金额信息
|
|||
|
|
- 医院表(sys_hospital)
|
|||
|
|
* 医院基本信息
|
|||
|
|
- 服务类型配置表
|
|||
|
|
* 服务类型和价格配置
|
|||
|
|
|
|||
|
|
6.6 第三方服务集成
|
|||
|
|
- 微信服务
|
|||
|
|
* 微信登录
|
|||
|
|
* 微信支付
|
|||
|
|
* 微信小程序
|
|||
|
|
- 短信服务
|
|||
|
|
* 验证码发送
|
|||
|
|
- 地图服务(可选)
|
|||
|
|
* 高德地图定位
|
|||
|
|
* 导航功能
|
|||
|
|
|
|||
|
|
七、数据模型
|
|||
|
|
-----------
|
|||
|
|
|
|||
|
|
7.1 核心实体
|
|||
|
|
|
|||
|
|
【用户实体(SysUser)】
|
|||
|
|
- userId: 用户ID(主键)
|
|||
|
|
- userName: 用户名
|
|||
|
|
- nickName: 昵称
|
|||
|
|
- phonenumber: 手机号
|
|||
|
|
- email: 邮箱
|
|||
|
|
- sex: 性别(0男 1女 2未知)
|
|||
|
|
- avatar: 头像
|
|||
|
|
- userType: 用户类型(00系统用户 C患者 B陪护)
|
|||
|
|
- openid: 微信openid
|
|||
|
|
- status: 状态(0正常 1停用)
|
|||
|
|
- createTime: 创建时间
|
|||
|
|
|
|||
|
|
【订单实体(RlzOrder)】
|
|||
|
|
- orderId: 订单ID(主键)
|
|||
|
|
- orderNumber: 订单号
|
|||
|
|
- bId: 陪护人员ID
|
|||
|
|
- cId: 患者ID
|
|||
|
|
- hospitalId: 医院ID
|
|||
|
|
- startTime: 服务开始时间
|
|||
|
|
- endTime: 服务结束时间
|
|||
|
|
- status: 订单状态
|
|||
|
|
* -2: 已取消
|
|||
|
|
* -1: 拒绝接单
|
|||
|
|
* 0: 待接单
|
|||
|
|
* 1: 已接单
|
|||
|
|
* 2: 已支付(待服务)
|
|||
|
|
* 3: 服务中
|
|||
|
|
* 4: 已完成
|
|||
|
|
* 5: 申请退款
|
|||
|
|
* 6: 退款中
|
|||
|
|
* 7: 已退款
|
|||
|
|
* 8: 已结算
|
|||
|
|
- yuguMoney: 预估金额
|
|||
|
|
- jiesuanMoney: 结算金额
|
|||
|
|
- kouchuMoney: 扣费金额
|
|||
|
|
- fanxianMoney: 返现给陪护金额
|
|||
|
|
- tuihuiMoney: 退回给患者金额
|
|||
|
|
- yuliu9: 订单大类(1-陪护 2-陪诊)
|
|||
|
|
- yuliu10: 订单类型(1-全程陪诊 2-诊前约号 3-取送结果 4-代办问诊)
|
|||
|
|
- yuliu11: 患者电话
|
|||
|
|
- yuliu12: 特殊要求/备注
|
|||
|
|
- yuliu13: 送达地址
|
|||
|
|
- yuliu14: 患者身份证号
|
|||
|
|
- createTime: 创建时间
|
|||
|
|
- updateTime: 更新时间
|
|||
|
|
|
|||
|
|
【医院实体(SysHospital)】
|
|||
|
|
- hospitalId: 医院ID(主键)
|
|||
|
|
- hospitalName: 医院名称
|
|||
|
|
- hospitalAddress: 医院地址
|
|||
|
|
- hospitalPhone: 联系电话
|
|||
|
|
- hospitalLevel: 医院等级
|
|||
|
|
- hospitalDesc: 医院简介
|
|||
|
|
- status: 状态(0正常 1停用)
|
|||
|
|
|
|||
|
|
7.2 数据关系
|
|||
|
|
- 一个患者可以创建多个订单(1:N)
|
|||
|
|
- 一个陪护人员可以接多个订单(1:N)
|
|||
|
|
- 一个订单对应一个医院(N:1)
|
|||
|
|
- 一个订单对应一个服务类型(N:1)
|
|||
|
|
|
|||
|
|
八、接口设计
|
|||
|
|
-----------
|
|||
|
|
|
|||
|
|
8.1 客户端接口(微信小程序)
|
|||
|
|
|
|||
|
|
【用户相关】
|
|||
|
|
- POST /weixinLogin - 微信登录
|
|||
|
|
- GET /getUserToken - 获取用户Token
|
|||
|
|
- GET /getInfo - 获取用户信息
|
|||
|
|
|
|||
|
|
【订单相关】
|
|||
|
|
- POST /system/order/insertOrderPz - 创建陪诊订单
|
|||
|
|
- GET /system/view/list - 获取订单列表
|
|||
|
|
- GET /system/view/getInfo - 获取订单详情
|
|||
|
|
- GET /system/order/weixinPay/{orderId} - 微信支付
|
|||
|
|
- POST /system/order/refundOrder/{orderId} - 申请退款
|
|||
|
|
- GET /system/order/concelOrder/{orderId} - 取消订单
|
|||
|
|
|
|||
|
|
【医院相关】
|
|||
|
|
- GET /system/hospital/list - 获取医院列表
|
|||
|
|
|
|||
|
|
【配置相关】
|
|||
|
|
- GET /system/config/configKey/price - 获取价格配置
|
|||
|
|
- GET /system/config/configKey/priceType - 获取价格类型配置
|
|||
|
|
|
|||
|
|
8.2 陪护端接口(Android)
|
|||
|
|
|
|||
|
|
【登录相关】
|
|||
|
|
- POST /appLogin - APP登录
|
|||
|
|
- POST /smsLogin - 短信登录
|
|||
|
|
|
|||
|
|
【订单相关】
|
|||
|
|
- GET /system/view/list - 获取订单列表(陪护端)
|
|||
|
|
- GET /system/view/getInfo - 获取订单详情
|
|||
|
|
- POST /system/view/startServiceWithOrder - 开始服务
|
|||
|
|
- POST /system/view/completeOrder - 完成服务
|
|||
|
|
|
|||
|
|
【收入相关】
|
|||
|
|
- GET /system/user/getAppIndexInfo - 获取首页信息(收入统计)
|
|||
|
|
|
|||
|
|
8.3 后台管理接口
|
|||
|
|
|
|||
|
|
【用户管理】
|
|||
|
|
- GET /system/user/list - 用户列表
|
|||
|
|
- POST /system/user - 新增用户
|
|||
|
|
- PUT /system/user - 修改用户
|
|||
|
|
- DELETE /system/user/{userIds} - 删除用户
|
|||
|
|
|
|||
|
|
【订单管理】
|
|||
|
|
- GET /system/order/list - 订单列表
|
|||
|
|
- GET /system/order/{orderId} - 订单详情
|
|||
|
|
- PUT /system/order - 修改订单
|
|||
|
|
- POST /system/order/refundOrder/{orderId} - 处理退款
|
|||
|
|
|
|||
|
|
九、部署要求
|
|||
|
|
-----------
|
|||
|
|
|
|||
|
|
9.1 服务器要求
|
|||
|
|
- 操作系统:Linux(CentOS 7+ / Ubuntu 18.04+)
|
|||
|
|
- CPU:4核+
|
|||
|
|
- 内存:8GB+
|
|||
|
|
- 硬盘:100GB+
|
|||
|
|
- 网络:带宽10Mbps+
|
|||
|
|
|
|||
|
|
9.2 软件环境
|
|||
|
|
- JDK:1.8+
|
|||
|
|
- MySQL:5.7+
|
|||
|
|
- Redis:3.0+
|
|||
|
|
- Nginx:1.18+(反向代理)
|
|||
|
|
|
|||
|
|
9.3 域名和证书
|
|||
|
|
- 后台API域名:api.ruilaizi.com(示例)
|
|||
|
|
- 小程序服务器域名:需在微信公众平台配置
|
|||
|
|
- SSL证书:HTTPS访问
|
|||
|
|
|
|||
|
|
9.4 数据库要求
|
|||
|
|
- 字符集:utf8mb4
|
|||
|
|
- 支持事务
|
|||
|
|
- 定期备份
|
|||
|
|
|
|||
|
|
十、项目里程碑
|
|||
|
|
-------------
|
|||
|
|
|
|||
|
|
10.1 第一阶段:基础功能开发(2个月)
|
|||
|
|
- 用户注册登录
|
|||
|
|
- 订单创建和支付
|
|||
|
|
- 陪护接单功能
|
|||
|
|
- 基础订单管理
|
|||
|
|
|
|||
|
|
10.2 第二阶段:核心功能完善(1.5个月)
|
|||
|
|
- 服务执行流程
|
|||
|
|
- 退款功能
|
|||
|
|
- 收入结算
|
|||
|
|
- 后台管理基础功能
|
|||
|
|
|
|||
|
|
10.3 第三阶段:功能优化和扩展(1个月)
|
|||
|
|
- 消息通知
|
|||
|
|
- 评价系统
|
|||
|
|
- 数据统计
|
|||
|
|
- 性能优化
|
|||
|
|
|
|||
|
|
10.4 第四阶段:测试和上线(0.5个月)
|
|||
|
|
- 功能测试
|
|||
|
|
- 性能测试
|
|||
|
|
- 安全测试
|
|||
|
|
- 上线部署
|
|||
|
|
|
|||
|
|
十一、风险评估
|
|||
|
|
-------------
|
|||
|
|
|
|||
|
|
11.1 技术风险
|
|||
|
|
- 微信支付集成复杂度
|
|||
|
|
- 高并发订单处理
|
|||
|
|
- 数据一致性保证
|
|||
|
|
|
|||
|
|
11.2 业务风险
|
|||
|
|
- 陪护人员服务质量控制
|
|||
|
|
- 退款纠纷处理
|
|||
|
|
- 医疗责任界定
|
|||
|
|
|
|||
|
|
11.3 运营风险
|
|||
|
|
- 用户获取成本
|
|||
|
|
- 陪护人员招募
|
|||
|
|
- 医院合作拓展
|
|||
|
|
|
|||
|
|
十二、后续规划
|
|||
|
|
-------------
|
|||
|
|
|
|||
|
|
12.1 功能扩展
|
|||
|
|
- 在线客服系统
|
|||
|
|
- 服务评价和评分系统
|
|||
|
|
- 会员等级和优惠券
|
|||
|
|
- 推荐陪护人员算法
|
|||
|
|
- 服务轨迹跟踪
|
|||
|
|
|
|||
|
|
12.2 技术优化
|
|||
|
|
- 微服务架构改造
|
|||
|
|
- 消息队列引入
|
|||
|
|
- 分布式缓存
|
|||
|
|
- 大数据分析
|
|||
|
|
|
|||
|
|
12.3 业务拓展
|
|||
|
|
- 多城市覆盖
|
|||
|
|
- 更多服务类型
|
|||
|
|
- 企业客户服务
|
|||
|
|
- 保险合作
|
|||
|
|
|
|||
|
|
========================================
|
|||
|
|
文档版本:v1.0
|
|||
|
|
文档生成时间:2024年
|
|||
|
|
项目名称:陪诊SAAS系统
|
|||
|
|
========================================
|