本蓝图目录 (22 章 · 20 图)
- 行业现状 · 痛点有多大fig4
- 商家体验 · 3 步走 30 秒fig5
- 平台鸟瞰图 · 整体架构fig1
- 数据采集流程 · 4 角色双人复核fig6
- 数据库设计 · 8 张核心表 (旧)fig7
- MVP 6 周里程碑fig2
- 预算 · ¥48 万一次性fig8
- 合规自查清单fig3
- 风险矩阵 · 10 项风险fig9
- 内部制衡 · 4 角色互相监督fig10
- 商家协议 · 12 条核心条款fig11
- OpenAPI 路由总览 · 28 端点 (旧)fig12
- 部署架构 · Compose → K8sfig13
- 监控告警 · 6 仪表板 + 16 告警fig14
- 12 个月路线图fig15
- 老板可能问的 7 个刁钻问题fig16
- 老板 6 问 · 提前备好答案—
- 本周立即可推进的 7 件事—
- [新增] 5 端架构 · 端口 · 子域名fig17
- [新增] 权限矩阵 · 5 端 × 8 能力fig18
- [新增] 商户控制台 · 员工账号管理 UIfig19
- [新增] RBAC 4 级权限模型 · 数据模型变化fig20
1行业现状 · 痛点有多大
行业分布 + 三个痛点 + 一个故事

2商家体验 · 3 步走 30 秒
个人商家视角:登录 → 搜索 → 命中预警

3平台鸟瞰图

4数据采集流程

5数据库设计 (旧 8 表 · M1)

6MVP 6 周里程碑

7预算

8合规自查清单

9风险矩阵

10内部制衡

11商家协议

12OpenAPI (旧 28 端点 · M1)

13部署架构

14监控告警

1512 个月路线图

16老板刁钻问题

17老板 6 问
Q1 · 这跟 315 有什么区别?
315 临时单向媒体主导 · 本平台持续双向公益定位 + 撤稿机制
Q2 · 会不会被起诉?
避风港原则:数据公开 + 声明 + 协议 + 撤稿 + 律师审核
Q3 · 盈利模式?
MVP 纯公益 · M13+ 探索高级订阅/行业报告/律师增值
Q4 · 只做大健康会不会太窄?
MVP 垂直 · 后期扩展电商/餐饮/教培/医美
Q5 · 3 人 6 周真能做完?
M1 备案法定时间窗 + 团队并行 · 技术 W2-W5 共 4 周
Q6 · 被收录的人找麻烦?
48h 律师函响应 · 属实撤稿 · 不属实反诉诽谤
19[新增] 5 端架构 · 端口 · 子域名
同一后端 · 5 个前端 · 各自独立鉴权 · RBAC 控制能力

· 商家小程序 (m.xxx.com:443) ── 个人商家,手机号注册
· 商户控制台 (b.xxx.com:8443) ── 企业商户,营业执照 + 法人授权
· 采集员工作台 (collector.xxx.com:8446) ── 内部 Excel 导入
· 律师审核台 (lawyer.xxx.com:8445) ── 签约律师,越权只读
· 平台管理后台 (admin.xxx.com:8444) ── 超管,仅内网
· 老板看板 (exec.xxx.com:8447) ── 高管只读 BI
· 监控 (grafana.xxx.com:8448) ── 运维专用
· API 网关 (api.xxx.com:443) ── 5 端共用,按 X-Client-Type 路由业务逻辑
20[新增] 权限矩阵 · 5 端 × 8 能力
每个端能做什么 · 不能做什么 · 需要二次验证才能做什么

· 律师在所有矩阵单元独立审计 (仅读) · 可越权查看任一线索
· 商户管理员 (B 端企业) 拥有 B 端全部能力 + 员工管理 (开/关/配权限)
· 员工默认继承企业的"基础查询"角色,管理员可单独覆写
· 平台超管: 角色定义/字典/系统参数/紧急封号,但不能看完整身份信息
· 个人商家与员工能力相同 (默认基础),但不开员工账号
21[新增] 商户控制台 · 员工账号管理 UI
b.xxx.com:8443 · 商户管理员专属 · Vue3 + TS + Element Plus

员工列表 5 类
管理员 (法人) / 法务经理 / 客服 / 销售 / 已停用
角色模板 (默认 4 类)
超级管理员 / 法务经理 / 客服 / 销售 · 可企业自定
权限分配弹窗
基础角色 + 附加权限勾选 + 数据范围 (本企业 / 本部门)
操作日志
所有角色变更记入 company_audit_log · 律师月度抽查
邀请流程
+ 邀请员工 → 短信 + 邀请码 → 员工首次登录 → 自动绑定企业
离职流程
商户点"停用" → 员工无法登录 → 数据保留 5 年 → 6 个月后匿名化
答:① 数据保留 5 年(应对可能的诉讼举证) ② 员工被停用后无法再登录 ③ 但商户管理员仍可查看该员工的查询历史 ④ 律师可越权审计 ⑤ 6 个月后删除员工 PII,保留行为日志
22[新增] RBAC 4 级权限模型 · 数据模型变化
平台超管 → 企业 → 员工/个人 + 律师独立线 · 4 类主体互不越权

数据模型变化总览
保留 8 张 (M1)
merchant · subject · case · evidence · audit_log · retraction · staff · merchant_action
新增 5 张 (M3)
company (企业) · employee (员工账号) · department (部门,可选) · role_template (角色模板) · employee_role (员工绑定)
merchant 表语义变更
原"个人商家" → 改为"用户"统一表 · 加 company_id 可空 (空 = 个人, 非空 = 员工)
audit_log 拆分
按主体类型拆: super_audit_log / company_audit_log / user_audit_log / lawyer_audit_log
权限模型
role_template (全局) + role_template_company (企业自定) + employee_role (员工绑定) · 3 层继承
商家协议
12 条 → 18 条 · 加 §13 企业主体责任 / §14 员工行为准则 / §15 账号转移 / §16-18 数据归属
OpenAPI 扩展
28 端点 → 56 端点 · +/api/companies/* (12) · +/api/companies/{id}/employees/* (10) · +/api/companies/{id}/roles/* (6)
前端工作
uniapp 商家端 (M1) + Vue3 商户控制台 (M3) + Vue3 律师审核台 (M2) + Vue3 平台后台 (M5)
· 原 M3 4 周 → M3 拆分: M3a (商家端联调 2 周) + M3b (企业/员工管理 3 周) · 总共多 1 周
· 或: 维持原排期,但 B 端功能做 MVP (仅 1 个默认角色 + 简单勾选),高级角色模板放到 M8
推荐: 维持 6 周 MVP,M3 B 端做 MVP 版本 · 8 周后开 M8 做高级角色模板 · 数据模型一次设计到位避免后续重构