# 操作日志:合同终止恢复与修订字段优化 操作时间:2026-08-13 操作类型:修改 影响模块:合同生命周期、合同详情修订记录、平台/气站/配送点管理端 ## 操作前状态 合同详情的只读修订记录展示公共软删除字段“删除时间”。平台前端和后端允许已终止合同直接启用,各管理端的启用按钮状态配置也不一致。 ## 具体操作 - 聚合详情表过滤 `deleted_at` 和 `DeletedAt`,保留数据库公共软删除能力但不向只读修订记录展示。 - 后端启用动作仅接受草稿状态,已终止合同必须通过续签恢复。 - 平台、气站和配送点管理端统一仅在草稿状态显示“启用合同”。 - 增加终止合同不可直接启用的状态规则测试,并同步合同需求文档。 ## 操作后状态 修订记录不再出现无业务意义的删除时间。已终止合同不能直接启用;恢复履约需要通过续签提交新的生效时间、到期时间和原因。 ## 代码变更 - `backend/api/internal/logic/platform/gasorder/gasorder.go`:收紧合同启用状态。 - `backend/api/internal/logic/platform/gasorder/gasorder_test.go`:增加状态规则测试。 - `frontend/platform_admin/src/views/resource/ResourceDetailContent.vue`:隐藏聚合记录软删除字段。 - 三个管理端的 `src/api/resources.ts`:统一合同启用按钮状态。 - `frontend/platform_admin/scripts/check-resource-pages.mjs`:增加静态回归断言。 ## 验证结果 - `go test ./internal/logic/platform/gasorder ./internal/logic/gas ./internal/logic/delivery`:通过。 - 平台总后台 `npm run resource-pages:check`、`npm run type:check`、`npm run build`:通过。 - 气站管理端 `npm run type:check`、`npm run build`:通过。 - 配送点管理端 `npm run type:check`、`npm run build`:通过。 ## 风险评估 调用方若尝试对已终止合同执行启用将收到状态错误;应改用续签接口。数据库字段和公开接口路径保持不变。 ## 入口一致性补充 - 修复平台、气站和配送点管理端部分资源定义遗漏 `13(已终止)`,导致详情页没有续签入口的问题。 - 三端续签按钮现统一在 `11(生效中)`、`12(已过期)`、`13(已终止)` 状态显示。