入门

先搞懂五个概念

租户、站点、应用、名额、套餐——Tenraft 的所有操作都围着这五个词转。本章用一家连锁奶茶店开两个门店站点的例子,把它们的关系和流转顺序讲透,尤其是「为什么解绑后名额要冷却」。

第一次上手 Tenraft,最容易卡住的不是某个按钮找不到,而是不知道一件事该在哪一层做:想给客户开通商城,是先建站点还是先买名额?名额到底是买给谁的?套餐里那些勾选项和名额是什么关系?把这五个概念的顺序理顺,后面每一章都会变简单。

五个词,一张关系图

从上到下的包含关系

部署(你装的这一套 Tenraft)

├─ 应用(先在平台安装,例如商城)

└─ 租户(一个客户 = 一个租户)

├─ 名额(某个应用可以绑几个站点的授权额度)

├─ 套餐(把名额 + 功能权益 + 周期额度打包卖给租户)

└─ 站点(真正对外营业的那一层,一个租户可以开多个)

└─ 绑定的应用(绑一个应用 = 占用一枚名额)

概念一句话谁来管
租户你的一个客户,是账号、结算与授权的边界平台后台创建,客户自己登录租户后台
站点客户名下一个独立经营的门店 / 品牌,数据彼此隔离租户自己建,平台也能代建
应用装在部署上的一块业务能力(商城、表单、AI 等)只有平台能安装、启用、停用
名额「某个应用可以绑几个站点」的授权额度平台划拨给租户,租户在站点上消耗
套餐把名额、功能权益、周期额度打包成一个可售卖的档位平台定义,租户自助订购

租户:一个客户一条边界

租户是「客户」在系统里的化身。它决定了:这个客户能开几个站点、有哪些应用名额、买了什么套餐、有哪些员工账号。租户之间彻底隔离,看不到彼此的任何数据。

  • 租户由平台在「客户 → 租户管理」创建,没有自助注册入口——谁能成为你的客户,由你决定。
  • 创建租户时会同时生成一个所有者账号。所有者是这个租户里权限最高的人:只有他能订购套餐、建站、管员工、给单个站点设功能限制。
  • 所有者可以再创建员工子账号,把员工分配到指定的站点上。员工在站点列表里只看得到被授权的那几个站点,新建站点、订购套餐这类动作会被直接拒绝(提示「仅租户所有者可…」)。
  • 平台管理员可以在「客户 → 租户管理」点「进入后台」,以平台身份帮客户操作,页面顶部会一直挂着「你正以平台身份管理租户…」的提示条。

本章的例子:一家连锁奶茶店「甜浪奶茶」找上门,你在平台后台给它建一个租户,把所有者账号交给店主。这一步之后,甜浪奶茶名下还是空的——没有站点,也没有任何名额。

站点:真正对外营业的那一层

站点是 C 端顾客真正接触到的东西:小程序、公众号、H5 打开后看到的那个店。会员、订单、商品、装修页面、支付配置全部挂在站点上,换一个站点就是另一套数据。

  • 租户在「我的站点 → 新建站点」自助建站,只需填站点名称有效期(留空为永久)。建站本身不花名额。
  • 站点有三种状态:正常 / 禁用 / 到期。因套餐到期被停用的站点,在租户续费成功后会自动恢复为正常,不用人工一个个改。
  • 能开几个站点,受「站点数量上限」这个功能开关约束(值为 0 表示不限)——它通常随套餐一起发放。
  • 平台也可以在「客户 → 站点管理」代任意租户建站,或者建平台直营站点(不属于任何租户)。直营站点没有租户账号,站点后台进不去,它只服务 C 端。

甜浪奶茶有城南、城北两个门店,会员和订单要分开算,于是店主建了两个站点:「甜浪奶茶·城南店」和「甜浪奶茶·城北店」。此时两个站点都还是空壳——因为还没有应用。

应用:安装、划拨、绑定,三步走

应用是一块完整的业务能力(例如商城、万能表单、AI 创作)。它不是「开关一开就人人可用」的,而要走完三步才会出现在某个站点里:

  1. 1

    ① 平台安装应用

    在「产品 → 应用商店」安装并启用。安装是部署级的:整套系统里只装一份,所有租户共享同一份代码。只有状态为「启用」的应用才允许被站点绑定;停用中的应用不能新绑,但已经绑上的站点不受影响。

  2. 2

    ② 平台把名额划给租户

    在「客户 → 名额管理」按应用给租户划拨若干名额,或者让租户通过订购套餐 / 单独购买应用名额自动到账。名额是记在租户头上的,不针对具体站点。

  3. 3

    ③ 租户在站点上绑定

    进入某个站点后台,在「设置 → 应用授权」里点「绑定」。绑定成功后,这个应用的管理页与接口立刻对本站点开放,日常使用入口在站点侧栏的「应用中心」。

名额:四个数字与一条恒等式

名额是整套授权模型的计量单位,含义只有一句话:一枚名额,同一时间只能绑一个站点。平台的「名额管理」和租户的「名额概览」看到的是同一份账,每个租户、每个应用一行四个数字:

名额恒等式

可用 = 已划拨 − 已占用 − 冷却中

数字含义什么时候增加什么时候减少
已划拨平台分给这个租户的该应用名额总数平台手工划拨;租户订购套餐或单独购买名额后自动到账平台回收(只能回收「可用」的那部分)
已占用当前正绑着这个应用的站点数站点点了「绑定」站点点了「解绑」
冷却中刚解绑、还在冷却期里的名额站点解绑后立即进入冷却期满自动转为可用;原站点重新绑定也会立刻消耗掉它
可用现在就能拿去绑新站点的名额上面三个数变化后自动算出

回到例子:你给甜浪奶茶划了 2 枚商城名额。城南店、城北店各绑一枚之后,这一行是「已划拨 2 / 已占用 2 / 冷却中 0 / 可用 0」。店主想再开城东店并绑商城,就会在「应用授权」里看到按钮变成「名额不足 · 查看说明」——它不是灰的,点开会告诉你名额都去哪了、最早什么时候能用、该找谁增配。

  • 平台侧的「流水」按钮记录了每一笔划拨 / 回收 / 占用 / 释放,带时间、租户、应用、变化量和操作人(平台管理员 / 租户自助 / 系统自动),可以导出核对。
  • 平台回收只能回收「可用」的那部分:正被站点占用的、以及冷却中的都动不了,输入超过可用数会直接被拒绝并告诉你最多能收多少。
  • 划拨时只能从已安装应用的下拉里选,不能手输标识;提交时还会再挡一道,未安装的应用会被拒绝并提示先去应用商店安装。
  • 平台能划出去的总量还受部署授权约束,超出会在划拨那一刻明确提示「部署池不足」,详见授权与名额

为什么解绑后名额要冷却

这是新用户最困惑的一条规则:站点解绑应用后,那枚名额不会立刻变回可用,而是先进入冷却期(默认 30 天,部署时可配)。冷却期内它有三个特点:

  • 只认原站点:原站点想绑回来,随时可以,而且不额外消耗可用名额——它消费的就是自己那枚冷却中的名额。手滑解绑可以立即撤回。
  • 别的站点用不了:同租户的其它站点看得见这个数字,但绑不上去。
  • 平台方也回收不了:冷却中的名额不计入「可用」,平台想收也收不走。

为什么要这么设计?因为解绑并不会删掉应用在这个站点留下的业务数据(除非解绑时特意勾选清除)。如果解绑就能立刻释放,一枚名额就可以「今天绑城南、明天解绑绑城北、后天再绑回来」,轮流服务任意多个站点——按站点计价的授权也就形同虚设了。冷却期把这条路堵死:想同时经营两个站点,就得有两枚名额。

同时它也保护租户:正因为冷却中的名额平台收不走,「不小心解绑,结果名额被别人占了 / 被平台收回了」这种事不会发生。冷却期一到,名额自动变回可用,不需要任何人做操作,也没有需要点的按钮。

套餐:把名额、权益、额度打包卖

如果每来一个客户都要你手工划名额、手工开权限,规模一大就撑不住了。套餐就是为此存在的:在「客户 → 套餐管理」定义好档位,租户在自己的「订阅与账单」里下单付款,系统自动履约。

新建套餐的编辑页分三个分区,装的是三样性质完全不同的东西:

分区填什么起什么作用
套餐信息套餐标识、名称、价格(按元填,保存时折算)、时长(天,0 = 永久)、排序、上架 / 下架定价与售卖状态。标识保存后不可再改
应用配额一行一个应用:应用标识 + 名额数(正整数)租户新购这档套餐时自动划拨的名额
功能权益勾选要纳入套餐的功能开关并给值;另有一个「套餐特权」文本框勾选项由系统强制执行;文本框只是对外展示的卖点文案

功能权益怎么算出最终值

同一个功能开关可能被四个地方影响,优先级从低到高:

  1. 1部署默认值:在「客户 → 功能开关」里设的全局默认,没买套餐的租户用它。
  2. 2套餐权益:租户订阅有效期内,套餐里勾选的值生效。
  3. 3平台特批:平台给某一个租户单独开的口子,可放大也可收回,能压过套餐。
  4. 4站点功能限制:租户所有者在「我的站点 → 功能限制」里对单个站点设的值,只能在租户已有权益上收紧,绝不能放大。

数值型开关一律以 0 表示不限。租户在「订阅与账单 → 当前订阅」的「我的权益」面板里能看到每一项的当前生效值和它来自哪一层(默认 / 套餐 / 平台特批),一目了然,不用来回问。

周期额度

有一类权益不是「能不能用」,而是「一个自然月能用多少」——例如短信条数、AI 对话消耗、生图张数、视频条数。它们同样写在套餐的功能权益里,值就是每月上限(0 = 不限),按租户名下全部站点合并计算。用量在「我的权益」里以进度条呈现,接近上限时会变色提醒。

下单之后发生了什么

  • 新购会按套餐的应用配额发名额;续费不重复发,只顺延时间。
  • 续费顺延叠加:新到期时间 = max(今天, 当前到期时间) + 套餐时长。提前续费不损失剩余天数;已经是永久订阅的租户再买计时套餐,仍然保持永久。
  • 续费时换成另一档套餐,系统按差额处理:多的部分补发,少的部分回收。
  • 支付成功还会顺带复活那些因为到期被停用的站点。

除了整租户套餐,租户还能在「订阅与账单 → 应用订购」里按应用单独买站点名额(前提是平台已经在应用商店里给这个应用配好定价)。这类名额永久有效、即买即到账,买完同样要去站点里绑定才能用;应用功能的有效期仍然跟着租户套餐走。

完整走一遍:给甜浪奶茶开两个门店

  1. 1

    平台:建租户

    「客户 → 租户管理」新建租户「甜浪奶茶」,把生成的所有者账号交给店主。

  2. 2

    平台:装应用

    「产品 → 应用商店」安装并启用商城应用。这一步是整套部署做一次,来第二个客户时不用再做。

  3. 3

    平台:给名额

    两条路二选一。想手工控:「客户 → 名额管理 → 划拨名额」,选租户「甜浪奶茶」、应用「商城」、数量 2。想让客户自助:在「客户 → 套餐管理」建一档含 2 枚商城名额的套餐并上架,店主自己在租户后台下单付款即可。

  4. 4

    租户:建两个站点

    店主登录租户后台,「我的站点 → 新建站点」建「城南店」和「城北店」,有效期留空表示永久。此时名额一枚都还没消耗。

  5. 5

    租户:给站点绑应用

    点「进入站点」到城南店,「设置 → 应用授权」找到商城,点「绑定」——名额从「可用 2」变成「已占用 1 / 可用 1」。回到租户后台,进城北店重复一次。

  6. 6

    租户:开始经营

    两个站点的侧栏「应用中心」里都出现了商城,可以各自配商品、配支付、装修页面。两边的会员和订单互不相干。

  7. 7

    半年后:城北店关了

    在城北店解绑商城。那枚名额进入 30 天冷却,界面会写明最早哪天可用。若这期间城北店又要重开,直接绑回去即可,不消耗可用名额;若要把它挪给新的城东店,得等冷却结束——或者请平台再划一枚。

新手最容易卡住的几个地方

现象真正的原因怎么办
站点的「应用授权」里一个应用都没有平台还没在应用商店安装任何应用平台侧「产品 → 应用商店」安装并启用
应用在列表里,但绑不上应用当前是停用状态,或站点本身已禁用 / 已到期平台启用该应用;站点状态问题先处理站点有效期
按钮显示「名额不足 · 查看说明」该应用的可用名额为 0,可能都被占用或在冷却中点开说明看清去向:可以先在不用的站点解绑,或请平台增配
名额那一行标着「该应用未安装,名额无法绑定」历史上划拨时写进了一个不存在的应用标识回收这行名额,改用下拉里的已安装应用重新划拨
买了套餐,站点里还是看不到应用套餐只发名额,绑定这一步要租户自己做进站点「设置 → 应用授权」点绑定
某个站点在租户后台的站点列表里根本找不到它是平台直营站点(站点管理里标着「平台直营 · 仅对外服务,无站点后台」),不属于任何租户直营站点只服务 C 端,没有可登录的站点后台;要有人管理就把站点建在租户名下

五个概念到这里就串完了。接下来按你的角色继续:部署这套系统看安装与部署,管平台看开张前的准备,做客户交付看租户后台,日常经营看开店:先做这四件事