# Fonrey 系统角色 Persona 定义 **版本**:v1.0 **状态**:已定稿 **作者**:产品团队 **最后更新**:2026-04-30 > 本文档是 Fonrey 所有 PRD、DATA_MODEL、PERMISSION_SEED 等文档的角色命名**唯一权威来源**。 > 所有其他文档中的角色称谓**必须**以本文档为准,禁止自造名称或混用。 --- ## 一、角色层级概览 ``` ┌─────────────────────────────────────────────────────────┐ │ Fonrey SaaS 平台 │ │ │ │ ① Platform Admin(平台超级管理员) │ │ └── 管理所有租户:开通、暂停、配置、版本升级 │ │ │ │ ─ ─ ─ ─ ─ ─ ─ 租 户 边 界 ─ ─ ─ ─ ─ ─ ─ ─ ─ │ │ │ │ ② Tenant Admin(租户管理员) │ │ └── 管理本租户:组织架构、账号、权限、系统配置 │ │ │ │ ③ Agent(经纪人) │ │ └── 日常业务操作:录入房源、跟进客源、查看数据 │ │ │ └─────────────────────────────────────────────────────────┘ ``` --- ## 二、Persona 详细定义 ### P1 — Platform Admin(平台超级管理员) | 属性 | 值 | | ---------------- | --------------------- | | **Persona 名称** | Platform Admin | | **中文称谓** | 平台超级管理员 | | **Persona Code** | `PLATFORM_ADMIN` | | **所属层** | 平台层(Platform) | | **账号归属** | 平台运营团队(Fonrey 公司内部人员) | | **账号数量** | 极少,手动创建,不通过租户系统管理 | | **认证入口** | 独立管理后台(非租户客户端) | | **Schema 归属** | `public`(跨所有租户) | **职责范围:** - 创建、暂停、注销租户(Tenant) - 为租户初始化 Tenant Admin 账号 - 管理平台版本、发布客户端安装包 - 监控系统健康状态、查看平台级日志 - 配置平台级参数(短信网关、OSS、第三方集成等) **不涉及:** - 不进入任何租户的业务数据 - 不参与租户内部的权限分配、组织管理 **关键约束:** - Platform Admin 走**独立认证体系**,不纳入租户 RBAC 权限模型 - 无需在 `permission_definitions` 中注册权限项 --- ### P2 — Tenant Admin(租户管理员) | 属性 | 值 | | ---------------- | ---------------------------------- | | **Persona 名称** | Tenant Admin | | **中文称谓** | 租户管理员 | | **Persona Code** | `TENANT_ADMIN` | | **所属层** | 租户层(Tenant) | | **账号归属** | 各租户(房产经纪公司)的系统管理员 | | **账号数量** | 每个租户 1~3 个,由 Platform Admin 创建初始账号 | | **认证入口** | 与经纪人相同的租户客户端(Electron App) | | **登录账号** | 平台运营分配的自定义字符串(不限于手机号格式) | | **初始密码** | 平台统一固定初始密码,首次登录强制修改 | | **Schema 归属** | 租户 Schema(`tenant_{id}`) | | | | **职责范围:** - 维护组织架构(部门/门店树) - 办理员工入职、离职、调动 - 创建和管理员工系统账号 - 配置角色与权限(角色创建、权限分配、个人权限调整) - 配置系统枚举值(Lookup Items)、房源录入规则、客源规则 - 查看全租户范围的业务数据(受数据权限规则约束) **不涉及:** - 不能跨租户操作 - 不能修改平台级配置(版本、短信网关等) **与「经纪人」的区别:** - Tenant Admin 是**管理身份**,不从事日常房源/客源业务操作 - 在系统内显示为「管理员」身份,拥有全模块管理权限 - 可以同时持有某个业务角色(如总经),但账号性质以 Tenant Admin 为主 **在 PRD 中的出现场景:** - 组织人事管理模块的主操作者 - 权限管理模块的主操作者 - 系统配置模块的主操作者 - 在楼盘管理、发布管理中执行管理操作的用户 --- ### P3 — Agent(经纪人) | 属性 | 值 | | ---------------- | ----------------------------- | | **Persona 名称** | Agent | | **中文称谓** | 经纪人 | | **Persona Code** | `AGENT` | | **所属层** | 租户层(Tenant) | | **账号归属** | 各租户的在职员工 | | **账号数量** | 每个租户 N 个,由 Tenant Admin 创建 | | **认证入口** | 租户客户端(Electron App) | | **登录账号** | 手机号(由 Tenant Admin 录入员工时自动创建) | | **初始密码** | 系统统一固定初始密码,首次登录强制修改 | | **Schema 归属** | 租户 Schema(`tenant_{id}`) | **内部岗位子类型(Agent Sub-roles):** Agent 是统称,内部通过「角色」区分岗位权限层级。系统内置以下角色(不可删除): | 角色名称 | Role Code | 典型岗位 | 数据权限范围 | | ---- | ---------------- | -------- | --------- | | 置业顾问 | `ROLE_AGENT` | 一线经纪人 | 仅自己的数据 | | 店管 | `ROLE_STORE_MGR` | 门店店长 | 本门店数据 | | 区管 | `ROLE_AREA_MGR` | 区域经理 | 本区域数据 | | 区总 | `ROLE_AREA_DIR` | 区域总监 | 本区域+下属区数据 | | 副总 | `ROLE_VP` | 副总经理 | 全公司数据(部分) | | 总经 | `ROLE_GM` | 总经理 | 全公司数据 | | 其他职能 | `ROLE_OTHER` | 行政/财务/HR | 按需配置 | **在 PRD 中的出现场景:** - 房源管理模块的主操作者 - 客源管理模块的主操作者 - 楼盘管理模块的查看用户 - 登录模块的主要使用者 --- ## 三、命名规范与替换对照表 以下为历史文档中出现的混乱称谓,与标准称谓的对照关系: | 历史称谓(禁止继续使用) | 应替换为 | 说明 | | ------------ | ----------------------- | ---------------- | | 超级管理员 | Platform Admin(平台超级管理员) | 仅指平台层 | | 平台管理员 | Platform Admin(平台超级管理员) | 同上 | | 系统管理员 | Tenant Admin(租户管理员) | 租户层管理员 | | 管理员(泛称) | Tenant Admin(租户管理员) | 明确指向租户层 | | HR 管理员 | Tenant Admin(租户管理员) | 同一人,不区分子角色 | | HR 行政 | Tenant Admin(租户管理员) | 同上 | | 一线经纪人 | Agent(经纪人) | 统称,角色层面才区分岗位 | | 置业顾问(作为用户称谓) | Agent(经纪人) | 置业顾问仅作为「内置角色名」使用 | **规则说明:** 1. PRD User Story 的 **As a** 部分:使用中文称谓(`Tenant Admin(租户管理员)`、`Agent(经纪人)`) 2. 权限矩阵、DATA_MODEL 注释:使用 Persona Code(`TENANT_ADMIN`、`AGENT`) 3. 角色名称(置业顾问、店管、总经等)**仅在角色管理相关语境中**出现,不作为用户身份称谓 4. `Platform Admin` 在各 PRD 中尽量少出现,其功能属于「系统管理模块」,不在各子模块 PRD 内展开 --- ## 四、快速索引 | 场景 | 使用 | |------|------| | PRD User Story 主语 | `Tenant Admin(租户管理员)` / `Agent(经纪人)` | | 错误提示文案(面向用户) | 「请联系您的租户管理员」 | | DATA_MODEL 注释 | `created_by: 创建该记录的 Agent(经纪人)用户 ID` | | 权限矩阵行标题 | 使用角色名(置业顾问 / 店管 / 总经 ...) | | 代码注释 / 枚举值 | `PLATFORM_ADMIN` / `TENANT_ADMIN` / `AGENT` | | 日志、审计记录 | `operator_type: PLATFORM_ADMIN / TENANT_ADMIN / AGENT` |