首页案例:康复连锁
Case · Rehab chain

康复连锁是一个在 Raise 上建成的业务系统。

会员、订单和量表库在一个独立的仓库里开发,作为托管应用运行在 Raise 上。它只经开放接口、应用接口和平台签名的调用接回平台;身份、权限、审批、触达、看板和助手由平台提供。

What it does

会员从进店到续卡的六个步骤使用同一套数据。

每一步落在一个应用里,前一步的记录后一步直接使用,不需要重复录入。这条链路不开助手也完整可用。

01

转会员

到访和推荐来的线索进入客户;推荐关系记在分销。

02

办卡

次卡、期卡、课程包,收银开单在订单里完成。

03

预约

预约康复师和时段,排期在会员应用里。

04

治疗

敏感记录只对授权的人可见。

05

随访

助手起草回访消息,店长确认后经触达发出。

06

续卡

即将到期的会员提前提示,到期时有提醒。

01 转会员小红书 · 到访 · 推荐应用:客户、分销 02 办卡次卡 · 期卡 · 课程包应用:会员、订单 03 预约排康复师与时段应用:会员 04 治疗病历只给相关的人看应用:会员 · 权限 05 随访助手起草,店长确认后发出应用:触达 06 续卡即将到期的会员提前提示助手 · 驾驶舱 一位会员,一套数据 区域经理看全区 · 店长看本店 · 前台看自己接待的 按课时和次数经营的门店:康复、健身、瑜伽、私教工作室。示意。

回访消息用组织自己的短信和公众号发送。会员同意、退订、免打扰和发送频次,都在发送前检查。

Platform vs. project

平台给了底座,项目只写了康复业务。

项目仓库里没有身份、审批、发消息或记账的代码。它需要这些时调平台的接口,平台需要它时带签名断言调它。

来自平台的

  • 登录与单点登录、组织架构、角色与数据范围
  • 客户中心。查找、时间线、写入与合并,经 /app/v1
  • 审批。退款与动作审核声明在清单里,由平台的审批流处理
  • 资源访问。敏感记录的授权在平台的访问内核里,一次最多批量判定 100 个权限点
  • 触达、成交记账、导入来源、意图解析,都是应用接口
  • 看板与工作台。看板模板、按角色的今日卡片按清单声明接上
  • 助手、草稿、确认卡、审计链
  • 托管运行。平台起进程,给它独立的数据库模式

项目自己写的

  • 会员、课程包、预约、核销、训练记录
  • 量表库与评估表单
  • 订单。服务类商品、收银开单、退款
  • 清单。对象、操作、权限点、看板模板、站点动作
  • 自己的表,放在自己的模式 app_membership、app_order 里
Contracts

项目和平台之间只有三种连接。

平台的门禁测试不让搬出去的应用回到平台的代码里。项目和平台之间的每一次调用都经过下面三种之一。

01 · 开放接口

/open/v1

会员小程序与 H5 的 /me 调用留在平台:开放网关先查令牌与范围,再带签名断言转给会员应用。

02 · 应用接口

/app/v1

项目调用平台能力:客户、权益、审批、访问、触达、成交、导入。范围在清单里声明。

03 · 平台调应用

签名断言

操作的预演与执行、事件、审批结果、站点动作,平台都以签名断言调用应用,应用用平台公布的公钥验签。

项目的数据库角色不能绕过行级安全,数据按组织隔离;组织注销时,平台通知应用清除自己的数据。

Layered access

区域经理、店长和前台看到的数据各不相同。

这部分项目没有自己写:权限跟随平台的组织架构。同一条会员记录,三个人打开看到的内容不同;向助手提问,得到的也只是本人权限内的数据。

  • 区域经理看全区。数据范围设为「含下级」。
  • 店长看本店。别的门店的会员看不到。
  • 前台看自己接待的会员。敏感字段遮盖或隐藏。
  • 越权访问返回 404。不透露记录是否存在。
一条记录 张伟 · 西湖店会员 手机138 0013 8000 课程包康复 10 次 · 剩 2 次 病历摘要腰椎术后康复… 累计消费¥ 12,800 前台 手机138 **** 8000 课程包剩 2 次 病历摘要隐藏 负责康复师 手机138 **** 8000 病历摘要腰椎术后康复… 累计消费隐藏 店长 手机138 0013 8000 累计消费¥ 12,800病历摘要 隐藏 问助手 张伟的病历摘要是什么? 回答 · 读取了 会员 当前角色看不到病历摘要。 助手以成员本人的身份读数据,得到的也是本人能看的那一份

行业系统可以照这个方式在 Raise 上开发。

约一次演示,看康复连锁这套系统怎样运行,以及它的哪些部分来自平台、哪些由项目自己写。