36 个租户级权限 × 18 个资源分类 — 每个权限管什么、保护哪些 API
/api/* 业务端点/api/platform/* 端点role === 'platform_superadmin'哪些权限需要按门店(center_id)隔离,哪些保持租户全局。当前系统 scope 仅在 Special Permissions 层生效,Role/Job Title 层尚未实现。
| 权限组 | Scope | 业务理由 |
|---|---|---|
appointments:* |
需要 | A 店经理不应改 B 店预约,这是最核心的日常操作 |
schedules:* |
需要 | 排班天然按门店,跨店排班会造成运营混乱 |
day_end_closeout:* |
需要 | 日结对账严格按门店,A 店收银台 B 店经理不能碰 |
time_clock:* |
需要 | 考勤按门店发生,经理只管自己门店的打卡记录 |
reports:* |
需要 | 最敏感的数据——A 店经理不应看到 B 店营收 |
employees:* |
需要 | 连锁场景下 A 店经理只管 A 店的人(跨店员工需额外处理) |
tips:* |
需要 | 小费按门店产生,经理只看自己门店 |
checkin:* |
需要 | 每家店 Kiosk 配置独立(欢迎页、展示内容等) |
pos_devices:* |
需要 | POS 设备物理绑定在特定门店 |
stores:* |
需要 | A 店经理可改 A 店营业时间/地址,不能碰 B 店 |
services:* |
需要 | 门店可独立上架/下架服务项目,管理本店服务列表 |
roles:* |
需要 | A 店经理给 A 店员工调权限,不应能动 B 店的人 |
payroll:* |
需要 | 经理只看自己门店的工资单,RBAC 层 scope 比纯数据过滤更安全 |
settings:* |
全局 | 全局配置(功能开关、Guest App 外观等),按店切分会导致配置碎片化 |
marketing:* |
全局 | 营销活动是品牌级策划(邮件、促销、忠诚度),店长不会独立搞营销 |
guests:* |
全局 | 客人跨门店流动——隔离会丢失服务历史和过敏备注,影响服务连贯性 |
giftcards:* |
全局 | 礼品卡跨店通用是核心卖点,隔离会导致核销失败 |
sync:* |
全局 | 纯技术运维,同步操作天然是租户级别(不按店拆分) |
settings:view / settings:manage 作为 OR 备选权限。适用于管理员需要跨模块巡检的场景。同时覆盖预约设置、租户功能开关、监控、调试等。/api/settings 全局设置/api/booking-config 预约配置/api/tenant-features 功能开关/api/monitoring 系统监控/api/admin/guest-app Guest App 设置/api/admin/loyalty/tiers 忠诚度层级配置/api/admin/guest-app Guest App 图片上传/api/settings 修改全局设置/api/booking-config 修改预约配置
/api/centers 门店列表/api/centers/:id 门店详情/api/centers/:id/hours 营业时间
/api/centers 门店 CRUD/api/centers/all/tip-settings 全局小费设置/api/centers/all/tip-settings/job-titles 按岗位小费配置
/api/services 服务列表/api/admin/services 后台服务管理/api/mobile/my-services 员工可做的服务
/api/services/api/admin/services
/api/employees 员工列表/api/admin/employees 后台员工管理/api/job-titles 岗位列表/api/mobile/team 团队成员/api/user 个人资料/偏好/api/dashboard 仪表盘数据/api/logs 操作日志/api/chat 聊天消息
/api/employees 员工 CRUD/api/user/preferences 修改偏好/api/user/profile 修改资料/api/user/switch-store 切换门店
/api/admin/permissions 权限列表/api/admin/permissions/roles 角色权限/api/admin/permissions/users/:id 用户权限详情/api/admin/audit 审计日志/api/admin/job-titles 岗位列表
/api/admin/permissions/roles/:roleId 修改角色权限/api/admin/permissions/users/:id/special-permissions 授予特殊权限/api/admin/permissions/users/:id/special-permissions/:spId 撤销特殊权限/api/admin/permissions/job-titles/:id 修改岗位权限/api/admin/job-titles 岗位 CRUD
/api/schedules 排班列表/api/schedule-templates 排班模板/api/daily-availability 每日可用时段
/api/schedules/api/schedule-templates/api/daily-availability
/api/guests 客户列表/api/guests/:id/notes 客户备注/api/guest-relationships 客户关系
/api/guests 客户 CRUD/api/guests/:id/notes/api/guest-relationships
/api/reports/business/kpi 业务 KPI/api/reports/daily /weekly /monthly 时段报表/api/reports/ranking 员工排名/api/reports/stores 门店对比/api/income-expense 收支记录/api/admin/loyalty-packages/stats 套餐统计/api/admin/loyalty-subscriptions/stats 订阅统计
/api/reports 自定义报表管理/api/income-expense 收支编辑
/api/marketing 营销活动/api/research 研究问卷/api/tags 标签系统/api/email-templates 邮件模板/api/promotion/email-templates 促销模板/api/marketing/trigger-templates 触发模板/api/admin/ipad-showcase iPad 展示/api/admin/loyalty-packages 忠诚度套餐/api/admin/loyalty-subscriptions 订阅计划/api/admin/loyalty/referrals 推荐系统/api/email-designs 邮件设计/api/settings/messaging 消息设置/api/discounts 折扣方案
/api/marketing /api/tags /api/email-templates/api/promotion/* 促销管理/api/marketing/trigger-templates/api/admin/ipad-showcase/api/admin/loyalty-packages /loyalty-subscriptions /loyalty/referrals/api/email-designs 邮件设计器/api/settings/messaging
/api/gift-cards 礼品卡列表/api/admin/gift-cards 后台礼品卡管理
/api/gift-cards/api/admin/gift-cards
/api/checkin-config 签到配置/api/checkin/stats 签到统计/api/checkin/today 今日签到
/api/checkin-config 签到配置修改
:unlock 是特殊动作级别,用于日结后的解锁操作。/api/payment 支付记录/api/invoices 发票列表/api/cash-drawer 收银台状态/api/day-end-closeout 日结报表/api/terminals 终端列表/api/receipts 收据查看
/api/payment 发起支付/api/payment/calculate-total 计算总价/api/payment/apply-discounts 应用折扣/api/payment/split-payment 分账/api/terminals 终端管理/api/day-end-closeout 日结操作
:manage 保护相同路由(OR 关系):punch 是 edit 级别的特殊动作,允许员工打卡但不能管理他人记录。/api/time-clock 考勤记录查看
/api/time-clock 考勤管理/api/time-clock 自己的上下班打卡/api/payroll 工资单查看
/api/payroll 生成工资单/api/payroll 确认/修改工资单/api/payroll/export 导出工资单
/api/mobile/tips 我的小费
/api/mobile/tips 小费设置
/api/sync 同步状态/api/sync-config 同步配置
/api/sync 执行同步/api/sync-config 同步配置修改
067-add-pos-permissions 添加。/api/pos/devices POS 设备列表
/api/pos/pairing-code 生成配对码/api/pos/devices/:deviceId 解绑设备