区域智慧健康服务平台
小程序开发实施文档
2026年3月惠州益众健康管理有限公司基于SaaS多租户架构
目 录
第一章 系统架构设计
第二章 登录与角色权限
第三章 数据库设计
第四章 收费模式实现
第五章 API接口设计
第六章 核心业务逻辑
第七章 为他人登记与凭证打印
第八章 后台权限设计
第九章 合规要求
附录 系统界面展示(参考)

第一章 系统架构设计

1.1 整体架构

微信小程序(统一入口)

所有角色统一通过小程序入口登录,按角色权限展示不同功能页面。

医院管理后台

PC端:医院管理员通过PC浏览器访问完整后台功能。
手机端:通过小程序内嵌H5页面访问数据概览、订单查询等轻量功能,完整管理仍建议使用PC端。

平台超级后台(PC端)

平台管理员通过PC浏览器访问全平台管理功能,拥有最高权限。

移动端工作台

导医、财务、合作伙伴通过小程序访问移动工作台。

1.2 技术栈

层级技术选型说明
前端-小程序微信小程序原生框架稳定、审核通过率高
前端-Web后台Vue3 + Element Plus响应式,组件丰富
后端核心Java 17 + Spring Boot 3.xLTS版本
数据库MySQL 8.0支持JSON
缓存Redis 7.x会话缓存
文件存储腾讯云COS / 阿里云OSS小程序码、凭证图片

第二章 登录与角色权限

2.1 角色定义

角色登录入口首页功能
患者小程序扫码 / 微信授权凭证列表页(含活动轮播)
导医小程序登录核销工作台
财务小程序登录财务确认工作台
合作伙伴小程序登录推广数据页
医院管理员PC浏览器 / 小程序医院后台(PC)/ 数据概览(小程序)
平台管理员PC浏览器 / 小程序平台后台(PC)/ 平台概览(小程序)

2.2 小程序启动流程

小程序启动->解析scene参数
有partnerCode->存储合作伙伴码->判断登录
未登录->登录页->登记页->凭证列表页
已登录->登记页->凭证列表页
普通打开(无scene)->登录页->角色判断->对应首页

2.3 登录页设计

登录方式:
  • 微信一键登录:通过微信授权获取手机号,需勾选同意用户服务协议与隐私政策后方可下一步
  • 账号密码登录:支持已有账号登录,需绑定手机号
用户服务协议与隐私政策勾选要求:
  • 微信一键登录按钮下方必须展示协议勾选框
  • 用户必须勾选同意《用户服务协议》和《隐私政策》后才能点击登录
  • 协议文本需提供超链接可点击查看
  • 账号密码登录同样需要勾选协议
// 登录按钮点击前校验 function onLoginTap() { if (!agreePrivacy.checked) { wx.showToast({ title: '请先阅读并同意用户服务协议和隐私政策', icon: 'none' }); return; } wx.login({ success: res => { /* 微信授权登录 */ } }); }

2.4 扫码场景处理

合作伙伴专属二维码:scene=partnerCode=ABC123&hospitalId=1

处理逻辑:
  1. 小程序启动时解析scene参数
  2. 提取partnerCode和hospitalId并存储
  3. 判断登录状态,未登录跳登录页,已登录跳登记页
  4. 登记成功后直接跳转凭证列表页

第三章 数据库设计

3.1 核心表结构

3.1.1 用户表 sys_user

字段名类型说明
idBIGINT主键
openidVARCHAR(100)微信openid
phoneVARCHAR(20)手机号
nicknameVARCHAR(100)昵称
rolesVARCHAR(500)角色列表JSON:["patient","guide"]
hospital_idBIGINT所属医院ID
partner_idBIGINT所属合作伙伴ID
statusTINYINT状态:0禁用 1正常

3.1.2 优惠活动表 hospital_promotion

字段名类型说明
idBIGINT主键
hospital_idBIGINT所属医院ID
nameVARCHAR(200)活动名称
cover_imageVARCHAR(500)活动封面图
discount_amountDECIMAL(10,2)减免金额
original_priceDECIMAL(10,2)原价
statusTINYINT状态

3.1.3 轮播图配置表 hospital_banner

字段名类型说明
idBIGINT主键
hospital_idBIGINT所属医院ID
titleVARCHAR(200)标题
cover_imageVARCHAR(500)封面图
promotion_idBIGINT关联活动ID
sort_orderINT排序
statusTINYINT状态

3.1.4 登记订单表 registration_order

字段名类型说明
idBIGINT主键
hospital_idBIGINT所属医院ID
partner_idBIGINT来源合作伙伴ID
user_idBIGINT用户ID
promotion_idBIGINT关联活动ID
statusTINYINT0已登记 1已核销 2已结算 3已取消
voucher_codeVARCHAR(100)凭证码
finance_confirm_timeDATETIME财务确认时间(计费依据)

第四章 收费模式实现

4.1 两种收费模式

模式一:固定月/年费
3000元/月
或 30000元/年
模式二:按财务确认结算量
后台设定/单
每单价格由后台自由设定

第五章 API接口设计

5.1 核心接口

接口说明
POST /api/auth/login登录(微信授权或账号密码)
GET /api/wx/vouchers凭证列表(含轮播数据)
GET /api/wx/banners轮播图列表
POST /api/hospital/finance/confirm财务确认结算(计费依据)

第六章 核心业务逻辑

6.1 状态机

已登记(0) -> 已核销(1) -> 已结算(2)

6.2 核销与财务确认区别

环节操作人订单状态是否计费
核销导医0->1
财务确认结算财务1->2是(计费依据)

第七章 为他人登记与凭证打印

7.1 适用场景

实际使用中,部分老年人不熟悉手机操作。合作伙伴工作人员可使用小程序帮老人登记,并打印凭证小票交给老人带到医院使用。

7.2 登记方式切换

登记页顶部两个选项卡: 数据库字段:

7.3 凭证接收方式

7.4 凭证展示

凭证页面两个码: 必须展示法律声明:
本优惠活动由[医院名称]自主举办,益众健康仅提供技术服务。

第八章 后台权限设计

8.1 权限概述

平台管理员(最高权限)

拥有所有功能权限,可管理所有医院、合作伙伴、用户、订单数据。

医院管理员(受限权限)

仅可管理本院数据,无删除权限

8.2 权限矩阵

功能模块平台管理员医院管理员
医院管理新增/编辑/删除无权限(由平台创建)
收费模式配置查看/修改仅查看
合作伙伴管理新增/编辑/删除新增/编辑(无删除
订单查询查看/导出查看/导出(限本院)
核销操作无权限无权限(由导医角色操作)
结算确认无权限无权限(由财务角色操作)
用户管理新增/编辑/删除新增/编辑(无删除
优惠活动管理查看新增/编辑/删除(限本院)
数据导出支持(Excel)支持(Excel)

8.3 医院管理员受限说明

医院管理员以下操作受限:

8.4 查询与导出功能

订单查询支持的条件筛选:

第九章 合规要求

9.1 医院优惠活动说明

优惠活动归属:

9.2 必须展示的法律声明

优惠活动页面必须展示:
"本优惠活动由[医院名称]自主举办,益众健康仅提供技术服务。"

9.3 严禁出现的表述

9.4 用户服务协议与隐私政策

登录前置条件:用户必须阅读并勾选同意《用户服务协议》和《隐私政策》后方可登录使用平台功能。

附录 系统界面展示