产品与需求
卓安Claw 客户小程序与案件公开策略 v0.1
本页目录
版本:v0.1(草案)
日期:2026-11-06
适用范围:客户微信小程序、扫码/合同号身份识别、办案进度公开、客户监督、公开策略
依据:《业务流蓝图 v0.1》《角色与权限矩阵 v0.1》《数据对象与状态机 v0.1》《页面与交互清单 v0.1》《接口清单 v0.1》《待确认事项总表 v0.1》
状态:新增需求方案,不改代码
0. 结论摘要
- 新增客户小程序(微信端),客户扫码 + 合同号 + 手机号验证后绑定案件,查看办案进度和律师公开的办案动态。
- 客户看到的是“公开版办案记录”,不是内部原始记录;内部策略、证据细节、冲突信息、成本利润默认不可见。
- 公开策略分三层:案件级公开档位 + 单条动态/文件公开 + 字段级遮条;默认不公开,由律所主动开启。
- 合同号不是密码;必须叠加姓名/手机号匹配 + 短信验证码,防枚举、防冒领。
- 客户只能读;不能改、不能看其他客户、不能看内部批注;下载文件带水印、可撤销、可审计。
- V1 先做“进度 + 公开动态 + 共享文书 + 联系律师 + 通知”,不做客户聊天、在线支付、AI 问答。
- Agent 可以帮律师起草“客户版动态”,但不能自动发布;发布必须律师/管理者确认。
1. 定位与边界
1.1 定位
客户小程序是卓安Claw 的客户侧透明窗口:
- 让客户知道“案件走到哪一步、律师做了什么、下一步是什么”。
- 降低客户焦虑和催问,减少客户经理/承办律师的重复沟通。
- 用“可公开的办案记录”建立信任,而不是把内部案卷全部暴露。
1.2 边界
- 不是内部办案系统;客户看不到内部案卷、证据全文、冲突检索、质量评查、成本利润。
- 不是客户聊天工具;V1 只做通知/留言,不做实时聊天。
- 不是电子签入口;V1 不做小程序内签约(后续可扩展)。
- 不是营销工具;不展示其他客户、案例细节、律师个人联系方式(除非授权)。
2. 用户与身份
| 角色 | 说明 | 权限 |
|---|---|---|
| 客户/委托人 | 合同签署方 | 绑定后查看本人合同/案件公开信息 |
| 家属/联系人 | 合同约定的联系人 | 由律所授权,按联系人范围查看 |
| 承办律师 | 案件主办 | 创建/编辑客户版动态,申请发布 |
| 客户经理 | 客户维护 | 发布进度/通知,维护绑定 |
| 管理者 | 律所管理 | 审批发布、设置公开档位、撤销绑定 |
| 财务 | 财务 | 按开关发布费用摘要(可选) |
| 运营 | 渠道运营 | 无客户小程序权限 |
身份原则: - 客户用微信登录(openid/unionid),不与律所企业微信账号混用。 - 一个微信可绑定多份合同;一份合同可绑定多个联系人(需授权)。 - 客户看不到律所内部账号、员工手机号、其他客户信息。
3. 入口与绑定流程
3.1 扫码入口
- 每份合同/案件生成一个签约二维码,可印在委托合同、授权委托书、案件受理单上,或由律师/客服发送。
- 二维码内容:
contract_id+case_id+ 一次性nonce+ 签名 + 有效期。 - 扫码打开小程序,自动带入合同号;二维码本身不是访问凭证,仍需身份验证。
- 二维码可撤销、可重发;过期/使用后失效。
3.2 合同号绑定
扫码 / 手动输入合同号
→ 输入客户姓名(与合同/联系人匹配)
→ 输入手机号(与合同/联系人匹配)
→ 短信验证码
→ 绑定成功
→ 我的案件列表
3.3 验证规则
- 合同号 + 姓名 + 手机号三项匹配;手机号必须能接收短信。
- 验证码 5 分钟有效;错误次数限制;超限锁定/人工审核。
- 同一微信绑定多合同需分别验证。
- 合同号不得单独作为身份凭证;禁止通过合同号枚举查询。
- 绑定记录、失败记录、IP/设备、时间全部审计。
3.4 解绑与撤销
- 客户可主动解绑;律所可撤销绑定(离职、纠纷、合同终止)。
- 案件结案后保留只读访问 N 个月(TBD);到期自动失效。
- 撤销后立即失效;已下载文件不追回,但后续访问被拒绝。
4. 客户可见内容
| 内容 | 默认 | 说明 |
|---|---|---|
| 案件当前阶段 | ✅ | 如侦查/审查起诉/一审/二审/执行 |
| 当前节点/下一步 | ✅ | “已会见”“待开庭”“待判决”等 |
| 公开办案动态 | ✅ | 律师“做了什么、怎么做的、下一步” |
| 承办律师/团队 | ✅ | 姓名/角色/联系方式(按授权) |
| 共享文书 | ⚠️ 按份开启 | 委托合同、授权书、法律意见书等;水印 |
| 开庭/会见日程 | ⚠️ 按需 | 只显示客户相关日程 |
| 费用/回款摘要 | ⚠️ 按需 | 合同额、已回款、待收;默认关 |
| 通知/公告 | ✅ | 律所发给客户的通知 |
| 内部案卷/证据 | ❌ | 永不默认公开 |
| 冲突检索/质评/成本 | ❌ | 永不公开 |
| 其他客户/案件 | ❌ | 严格隔离 |
客户版动态字段: - 标题(如“已完成首次会见”) - 发生了什么(事实) - 律师做了什么(动作) - 下一步(计划) - 时间 - 承办律师 - 附件(可选,按份授权) - 状态(已发布/已撤回)
客户版动态不是内部
CaseLog的原文;由律师基于内部记录改写/审核后发布。内部原文永远不直接给客户。
5. 公开策略(三层)
5.1 案件级公开档位
| 档位 | 客户可见 | 适用 |
|---|---|---|
| 不公开(默认) | 仅合同/联系人基础信息,无案件进度 | 敏感案件、客户要求 |
| 仅进度 | 阶段 + 当前节点 + 下一步 | 大多数案件 |
| 标准 | 进度 + 公开动态 + 共享文书 | 需要客户监督的案件 |
| 详细 | 标准 + 日程 + 费用摘要(按开关) | 客户明确要求 |
- 新建案件默认“不公开”;由承办律师/管理者开启。
- 档位变更留痕;客户可见范围立即生效。
5.2 单条动态/文件公开
- 每条
ClientUpdate/Document有visibility:internal/client。 - 发布可设置:立即 / 定时 / 审核后;可设置过期时间。
- 敏感文件(证据、笔录、录音)默认
internal;确需公开时按份审批。 - 撤回:立即不可见;审计保留。
5.3 字段级遮条
| 字段 | 默认 |
|---|---|
| 客户姓名 | 显示 |
| 手机号 | 脱敏(尾号 4 位) |
| 身份证号 | 永不显示 |
| 涉案人员 | 仅显示客户已知人员;其他遮条 |
| 律师手机号 | 按授权;默认仅展示工作号/客服号 |
| 金额 | 按费用开关;默认隐藏 |
| 内部批注/策略 | 永不显示 |
5.4 发布审批
- 承办律师创建 → 客户经理/管理者审核 → 发布。
- 敏感内容(证据、录音、法律意见)需管理者审批。
- Agent 可起草,但不能发布。
- 发布/撤回/修改全部审计。
6. 数据模型
| 对象 | 关键字段 | 说明 |
|---|---|---|
| PortalAccount | id, openid, unionid, phone, status | 客户微信账号 |
| ClientBinding | id, portal_account_id, customer_id, contract_id, case_id, role, scope, status | 绑定关系 |
| QRToken | id, contract_id, case_id, token_hash, expires_at, used_at, status | 签约二维码 |
| CasePublication | id, case_id, profile, status, published_by, published_at, expire_at | 案件公开档位 |
| ClientUpdate | id, case_id, type, title, fact, action, next_step, visibility, publish_at, expire_at, status | 客户版动态 |
| PublicationRule | id, case_id/contract_id, field, rule, condition | 字段遮条规则 |
| SharedDocument | id, document_id, case_id, visibility, watermark, expire_at | 共享文书 |
| PortalMessage | id, case_id, direction, content, status | 通知/留言 |
| PortalAccessLog | id, portal_account_id, binding_id, case_id, action, object, at, ip/device | 访问审计 |
7. 状态机
7.1 绑定
待验证 → 待绑定 → 已绑定 → 已解绑 / 已撤销
异常:验证失败 / 锁定 / 过期
7.2 公开档位
未公开 → 仅进度 → 标准 → 详细
任意 → 暂停 / 过期
7.3 客户版动态
草稿 → 待审核 → 已发布 → 已撤回 / 已过期
7.4 二维码
有效 → 已使用 / 已过期 / 已撤销
7.5 共享文书
未共享 → 已共享 → 已撤回 / 已过期
8. 权限矩阵(客户侧)
| 操作 | 客户 | 承办律师 | 客户经理 | 管理者 | 财务 | 运营 |
|---|---|---|---|---|---|---|
| 查看本人案件进度 | ✅ | ✅ | ✅ | ✅ | 👁 | ❌ |
| 查看公开动态 | ✅ | ✅ | ✅ | ✅ | 👁 | ❌ |
| 查看共享文书 | ✅ | ✅ | ✅ | ✅ | 👁 | ❌ |
| 创建客户版动态 | ❌ | ✅ | ✅ | ✅ | ❌ | ❌ |
| 发布/撤回动态 | ❌ | ✅ 申请 | ✅ 申请 | ✅ 审批 | ❌ | ❌ |
| 设置公开档位 | ❌ | ✅ 申请 | ❌ | ✅ | ❌ | ❌ |
| 共享文书 | ❌ | ✅ 申请 | ❌ | ✅ 审批 | ❌ | ❌ |
| 撤销客户绑定 | ❌ | ❌ | ✅ 申请 | ✅ | ❌ | ❌ |
| 查看访问日志 | ❌ | 👁 本案件 | 👁 本客户 | ✅ | ❌ | ❌ |
客户永远只读;不能修改、不能看内部字段、不能看其他客户。
9. 小程序页面
| ID | 页面 | 说明 |
|---|---|---|
| M01 | 登录/授权 | 微信授权;隐私政策;手机号 |
| M02 | 扫码/合同号绑定 | 扫码带入合同号;姓名/手机/验证码 |
| M03 | 我的案件 | 绑定合同/案件列表;状态 |
| M04 | 案件进度 | 阶段、当前节点、下一步、承办律师 |
| M05 | 办案动态 | 公开版时间线;图文/附件 |
| M06 | 文书/文件 | 共享文书;水印;下载 |
| M07 | 律师/团队 | 承办律师、角色、联系方式(按授权) |
| M08 | 消息/通知 | 律所通知;开庭/会见提醒 |
| M09 | 我的 | 绑定管理、隐私、解绑、客服 |
| M10 | 帮助/说明 | 使用说明、免责声明、投诉入口 |
10. API(客户门户)
| 方法 | 路径 | 用途 |
|---|---|---|
| POST | /portal/auth/wechat |
微信登录换 session |
| POST | /portal/bind/qr |
扫码绑定 |
| POST | /portal/bind/contract |
合同号绑定 |
| POST | /portal/bind/verify-otp |
短信验证 |
| GET | /portal/cases |
我的案件 |
| GET | /portal/cases/{id}/progress |
进度 |
| GET | /portal/cases/{id}/updates |
公开动态 |
| GET | /portal/cases/{id}/documents |
共享文书 |
| GET | /portal/documents/{id}/download-url |
下载(水印/短期) |
| GET | /portal/messages |
通知 |
| POST | /portal/messages |
留言/联系请求 |
| GET | /portal/profile |
我的/绑定 |
| POST | /portal/unbind |
解绑 |
| POST | /admin/cases/{id}/publication |
设置公开档位 |
| POST | /admin/cases/{id}/updates |
创建客户版动态 |
| POST | /admin/updates/{id}/publish |
发布 |
| POST | /admin/updates/{id}/withdraw |
撤回 |
| POST | /admin/documents/{id}/share |
共享文书 |
| GET | /admin/portal-bindings |
绑定列表 |
| POST | /admin/portal-bindings/{id}/revoke |
撤销绑定 |
| GET | /admin/portal-access-logs |
访问审计 |
11. 安全与合规
- 合同号不是密码:必须姓名 + 手机号 + OTP;防枚举、限流、锁定。
- 二维码:签名、短有效期、一次性;可撤销;不包含身份证等敏感信息。
- 最小可见:默认不公开;客户只看公开版;内部原文不出。
- 水印:下载文件带客户姓名/手机尾号/时间水印。
- 审计:绑定、登录、查看、下载、分享、撤回全留痕。
- 隐私:隐私政策、告知同意、数据删除、账号注销。
- 合规:个人信息保护法;不得展示身份证号、其他当事人信息。
- 防截图:小程序无法完全防;水印 + 提示 + 下载限制。
- 撤销:律所可随时撤销绑定;案件结案后到期失效。
- Agent:可起草客户版动态,不能自动发布;C 类案卷不出域。
12. 通知
- 微信订阅消息/服务通知:绑定成功、新动态、开庭提醒、文书共享、结案。
- 客户可在“我的”里开关通知;律所可发公告。
- 不在通知里放敏感信息(仅“有新的办案动态”)。
- 消息失败重试;失败记录;不伪造接收人。
13. V1 范围
P0 - 微信小程序登录/授权。 - 扫码 + 合同号 + 姓名/手机/OTP 绑定。 - 我的案件、案件进度、公开动态、共享文书、律师团队、通知、解绑。 - 管理端:公开档位、动态发布/撤回、文书共享、绑定列表、访问审计。
P1 - 费用摘要、开庭/会见日程、多联系人授权、订阅消息模板。 - 客户留言/联系请求(非实时聊天)。
P2 - 小程序内电子签、在线支付、AI 问答、服务评价。
14. 验收用例
| 编号 | 用例 | 期望 |
|---|---|---|
| MP-01 | 扫码 + 合同号 + OTP 绑定 | 成功;案件列表出现 |
| MP-02 | 合同号正确但手机号错 | 拒绝;记录失败 |
| MP-03 | 同一合同绑定第二个联系人 | 按授权;范围正确 |
| MP-04 | 查看案件进度 | 只显示公开档位内容 |
| MP-05 | 查看未公开动态 | 不可见 |
| MP-06 | 下载共享文书 | 带水印;审计 |
| MP-07 | 律所撤回动态 | 客户立即不可见 |
| MP-08 | 撤销绑定 | 立即失效 |
| MP-09 | 客户尝试看其他案件 | 拒绝 |
| MP-10 | 合同结案后到期 | 只读到期失效 |
| MP-11 | Agent 起草动态 | 不能自动发布 |
| MP-12 | 访问日志 | 谁/何时/看了什么可查 |
15. TBD
| ID | 事项 | 级别 |
|---|---|---|
| H-01 | 小程序主体/认证:卓安还是及锋? | B0 |
| H-02 | 绑定验证:合同号+姓名+手机+OTP 是否足够? | B0 |
| H-03 | 默认公开档位:不公开/仅进度? | B0 |
| H-04 | 客户是否可见费用/回款摘要? | B1 |
| H-05 | 哪些文书可共享?是否含法律意见/会见笔录? | B1 |
| H-06 | 多联系人授权规则(委托人/家属/联系人) | B1 |
| H-07 | 结案后访问期限(3/6/12 个月) | B1 |
| H-08 | 客户留言/联系请求是否开放 | B2 |
| H-09 | 订阅消息模板与频控 | B1 |
| H-10 | 水印/下载/截图策略 | B1 |
| H-11 | 客户数据保留/注销/删除 | B1 |
| H-12 | 二维码发放/印刷/撤销流程 | B1 |
16. 与现有文档的关系
- 业务蓝图:新增“客户门户”支撑流程,客户监督作为交付价值的一部分。
- 权限矩阵:新增“客户(小程序)”主体,只读、仅公开内容。
- 数据模型:新增 PortalAccount/ClientBinding/CasePublication/ClientUpdate 等对象。
- 页面清单:新增“客户小程序”端(M01–M10)。
- 接口清单:新增
/portal/*与/admin/portal-*。 - 验收清单:新增 MP-01~MP-12。
- 待确认总表:新增 H-01~H-12。
本文为新增需求方案,不构成开发承诺;以 B0 确认和小程序平台审核为准。