Files
ai-contract-platform/project-docs/V2-contract-workflow-write-api-2026-06-23.md
T
yuqei a3bb78e06b
Security Quality Gate / npm audit, Bandit, pip-audit, detect-secrets (pull_request) Failing after 16m35s
release: freeze V2 release candidate
2026-07-12 15:32:24 +08:00

41 lines
2.1 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# V2 Contract API 写入主流程闭环记录
日期:2026-06-23
## 本轮目标
继续遵循《AI 合同平台 V2 重构版开发方案》,把合同产品平台的主流程从“只读真实业务状态”推进到“可写真实业务状态”。
本轮坚持轻量化体验原则:前端只突出合同详情页顶部的“下一步操作”,复杂审批配置不前置给普通用户。
## 已完成
- Contract API 新增合同草稿创建接口:`POST /api/v1/contracts`。
- Contract API 新增合同更新接口:`PATCH /api/v1/contracts/{contract_id}`。
- Contract API 新增提交审批接口:`POST /api/v1/contracts/{contract_id}/approval/submit`。
- Contract API 新增退回后重提接口:`POST /api/v1/contracts/{contract_id}/approval/resubmit`。
- Contract API 新增审批处理接口:`POST /api/v1/contracts/{contract_id}/approval/decision`。
- 审批动作会写入 `approval_timeline_items`,并同步更新合同状态、状态标签、下一步操作。
- 增加轻量状态边界:
- `draft/reviewing` 可以提交审批。
- `rejected` 可以重新提交。
- 只有 `approval_pending` 可以审批通过或退回。
- 合同详情页顶部“下一步操作”已接入真实接口,成功后刷新页面展示最新状态。
- Next.js 代理路由已补齐 POST/PATCH/审批动作转发。
- OpenAPI 契约已同步新增写接口和请求/响应模型。
## 验证结果
- `python -m pytest yuqei-contract-platform\services\contract-api\tests -q`:11 passed。
- `npm --prefix yuqei-contract-platform\apps\contract-web run typecheck`:通过。
- `npm --prefix yuqei-contract-platform\apps\contract-web run build`:通过。
## 仍需继续
下一轮建议把“写入主流程”继续向真实企业使用场景推进:
- 合同列表页新增“快速起草”表单,调用 `POST /api/v1/contracts`。
- 合同详情页“编辑”按钮接入 `PATCH /api/v1/contracts/{contract_id}`。
- 工作台待办点击后进入合同详情,并根据状态只显示一个最合适主动作。
- 审批人视角增加“待我审批”筛选,但不把复杂审批配置暴露给普通用户。