a3bb78e06b
Security Quality Gate / npm audit, Bandit, pip-audit, detect-secrets (pull_request) Failing after 16m35s
1.6 KiB
1.6 KiB
AI 合同平台 V2 - 合同版本比对闭环记录
日期:2026-06-25
背景
对照开发方案 Phase 5 企业协作闭环,本轮实现合同版本比对功能。
目标
- 更新合同时自动保存历史版本
- 版本列表和详情 API
- 前端版本列表展示
- 版本差异比对组件
已完成内容
后端
文件:
- contract-api/contracts.py
- contract-api/main.py
新增模型:
- ContractVersion: id, contract_id, version_number, body_content, change_summary, actor_name, created_at
- ContractVersionPage: items, page, page_size, total
新增接口:
- GET /api/v1/contracts/{id}/versions - 版本列表
- GET /api/v1/contracts/{id}/versions/{version_id} - 版本详情
自动版本保存:
- update_contract 检测正文变更时自动调用 _save_version
- 版本按时间递增编号
前端
新增文件:
- contract-version-panel.tsx - 版本面板组件
版本面板功能:
- 历史版本列表展示
- 查看版本内容(弹出对话框)
- 与当前版本差异对比(行对行 diff 高亮)
差异对比特性:
- 新增行绿色背景标记
- 删除行红色背景标记
- 等宽字体展示
- 逐行对比
验证结果
后端:编译通过,25 tests passed 前端:typecheck + build 通过
Phase 5 最终状态
| 功能 | 状态 |
|---|---|
| RBAC 权限 | 完成 |
| 条件审批规则 | 完成 |
| 待我审批 | 完成 |
| 退回后重提 | 完成 |
| 审批时间线 | 完成 |
| 版本比对 | 完成(本轮) |
| 批注和处理意见 | 完成 |
| 审计时间线 | 完成 |
| 通知中心 | 完成 |
Phase 5 企业协作闭环已全部完成。