以系统当前实现为准(Authz 校验点 / Sa-Token 双体系 / 租户与门店隔离)。 口径:菜单隐藏只是少个入口,不是权限 —— 前端菜单按角色隐藏,后端动作按模块逐点校验,两层同口径。
员工与客户是两套完全独立的账号体系,token 互不通用。
| 身份 | 登录方式 | 凭据 | 能看什么 |
|---|---|---|---|
| 员工(老板 / 店长 / 财务主管 / 供应链主管 / 技师) | 账号密码(工作台 / 员工端 / 老板端小程序) | Sa-Token(默认体系) | 按角色分工:经营、开单、施工、客户、库存… |
| 客户 | 微信登录(code→openid;H5 走演示登录开关) | Sa-Token(customer 独立体系) | 只看自己的:工单进度、卡包、质保、预约、客服 |
| 供应商 | 专属门户链接(每供应商一个 token) | token(可被门店停用) | 只看自己的订单 / 送货 / 退货;提交报价与资质 |
| 外部系统 | 开放平台 API Key | api_key + scopes(可到期 / 停用) | 只读:按单号查进度 / 服务与价格 / 门店信息 |
| 硬件设备 | 设备直连上报 | X-Device-Key + X-Tenant | 只进不出:车牌识别回调、钥匙柜取还上报 |
| 公众 | 无需登录 | — | 官网、质保验真页、车间大屏(只读) |
✅ 可用 | ✖ 无入口/被校验拦截 | 细节见表格文字
| 能力域 | 老板 owner | 店长 manager | 技师 tech |
|---|---|---|---|
| 经营看板(营业额 / KPI / 晨报 / 估值 / 多店对比) | ✅ | ✅ | ✖(仅自己绩效) |
| 切换"全部门店(合计)"视角 | ✅ 专属 | ✖(只看本店) | ✖ |
| 开单收银 / 派工 / 工单管理 | ✅ | ✅ | ✅ 一线日常:开单 / 收款 / 挂券 / 折扣 / 次卡核销 / 施工打卡 |
| 施工打卡(照片 / 语音 / 施工参数 / AI 效果预览) | ✅ | ✅ | ✅ |
| 客户档案 / 客户查询 | ✅ | ✅ | ✅(查询拨号;改资料回工作台) |
| 库存:查库存 / 领料 | ✅ | ✅ | ✅ |
| 库存:采购 / 验收 / 盘点 / 报废 | ✅ | ✅ | ✖ |
| 会员:储值 / 次卡 / 券 发放与作废 | ✅ | ✅ | ✖ |
| 提成规则与计提 | ✅ | ✅ | 可观己绩效明细 + 规则列表只读(便于解释) |
| 参数设置(含站点信息 / 列表数据) | ✅ | ✅ | ✖ |
| 员工管理(新增 / 停用 / 改资料) | ✅ | ✅ | ✖ |
| 门店管理(多店 / 坐标 / 停用) | ✅ | ✅(资料编辑) | ✖ |
| 营销(活动 / 素材 / 优惠券 / 渠道 / 老带新) | ✅ | ✅ | ✖ |
| 线索(指派 / 回池 / 处理) | ✅ | ✅ | 处理指派给自己的线索 |
| 巡店 / 标准下发 / 整改复核 | ✅ | ✅ | ✖ |
| 保险 / 理赔 / 外协 / 改色备案 | ✅ | ✅ | 相关节点打卡 |
| 平台与接入(API 密钥 / 模型路由 / 数字员工 / 接入启停 / 支付通道 / 平台对接 / 打印机 / 经营驾驶舱) | ✅ | ✅ | ✖ |
| 打卡考勤 / 修改本人密码 | ✅ | ✅ | ✅ |
· 老板与店长的差异:功能权限几乎相同(后端 requireManager 同时放行两者);
唯一硬差异是老板可切换"全部门店(合计)"总览(后端 owner 专属校验)。
· 技师定位:一线作业面 —— 考勤打卡 → 我的工单 → 施工节点打卡 → 客户查询(调档拨号)→ 查库存/领料 → 我的线索 → 我的绩效。
· 财务主管(finance)/ 供应链主管(stock):只管理各自模块,默认落地分别是「日结对账」和「库存」,互相看不到对方菜单;接口层用 requireFinance / requireSupply 校验。
财务主管 / 供应链主管(模块边界)
| 能力域 | 财务主管 finance | 供应链主管 stock |
|---|---|---|
| 发票 / 退款 / 储值调整 / 交班对账 / 渠道对账 / 跨店分账 / 提成 | ✅ | ✖ |
| 驾驶舱 / 毛利 / 项目 P&L / 预付卡与次卡负债 / 积分成本 | ✅ | ✖(仅库存周转与损耗) |
| 库存 / 入库 / 领料 / 盘点 / 调拨 / 补货 | ✖ | ✅ |
| 采购单 / 到货 / 退货 / 供应商 / 报价 / 询价 / 集采 / 物流 | ✅ 采购财务 | ✅ 采购执行 |
| 膜卷台账 / 色卡库 / 损耗 / 部位标准 | ✖ | ✅ |
| 模型网关 / 参数设置 / 员工管理 / AI 员工 / 数据体检 | ✖ | ✖ |
采购模块由财务与供应链共用:应付、付款、进项票与到货验收在同一条链上;其余模块严格分离。演示账号:finance / finance888、supply / supply888。
后端对动作点逐点做 requireManager / requireFinance / requireSupply / requirePurchase 校验,按类归纳:
越权调用会拿到明确的 403 文案("只有店长/老板/财务主管可以…"),不是静默失败。
| 身份 | 权限边界(以 token / 凭据为界) |
|---|---|
| 客户 | 只以 token 推断身份(接口不接受任何 customerId 参数);看不到别的客户与任何经营数据;AI 客服只看本人数据 + 当前选中门店信息(地址/电话/营业时间/标价) |
| 供应商 | token 只能看自己的订单/送货/退货与提交报价资质;不含门店客户资料;停用后令牌立即失效 |
| 开放平台 | 只读 scope 按需勾选:ORDER_READ 查工单进度 / SERVICE_READ 查服务与价格 / STORE_READ 查门店信息;可设到期、可随时停用(密钥仅显示尾号) |
| 设备 | 按 X-Device-Key 校验(密钥只在服务器配置);只允许上报,读不到任何数据 |
| 平台运营中心 | 当前承载官网展示;平台级数据(订阅/代理/渠道)以"老板视角"在工作台与老板端查看,没有独立平台后台账号 |