万家车铺 · 角色权限总览

以系统当前实现为准(Authz 校验点 / Sa-Token 双体系 / 租户与门店隔离)。 口径:菜单隐藏只是少个入口,不是权限 —— 前端菜单按角色隐藏,后端动作按模块逐点校验,两层同口径。

①身份总览(系统里有几类"人")

员工与客户是两套完全独立的账号体系,token 互不通用。

身份登录方式凭据能看什么
员工(老板 / 店长 / 财务主管 / 供应链主管 / 技师)账号密码(工作台 / 员工端 / 老板端小程序)Sa-Token(默认体系)按角色分工:经营、开单、施工、客户、库存…
客户微信登录(code→openid;H5 走演示登录开关)Sa-Token(customer 独立体系)只看自己的:工单进度、卡包、质保、预约、客服
供应商专属门户链接(每供应商一个 token)token(可被门店停用)只看自己的订单 / 送货 / 退货;提交报价与资质
外部系统开放平台 API Keyapi_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 校验(密钥只在服务器配置);只允许上报,读不到任何数据
平台运营中心当前承载官网展示;平台级数据(订阅/代理/渠道)以"老板视角"在工作台与老板端查看,没有独立平台后台账号

⑤隔离与安全防线(越权怎么防)