Files
platforms/docs/操作日志_合同到期时间与动作中文化_20260813.md
czl231 a7ac692110 修复合同到期时间与终止恢复规则
- 合同动作中文化并将到期时间设为必填\n- 隐藏修订记录无业务意义的删除时间\n- 禁止已终止合同直接启用,统一三端状态规则\n- 补充回归测试、模拟数据回填和中文文档
2026-08-13 00:54:27 +08:00

2.1 KiB
Raw Blame History

操作日志:合同到期时间与动作中文化

操作时间2026-08-13 操作类型:修改、扩展 影响模块:配送合同创建、草稿编辑、续签、详情与模拟数据

操作前状态

合同修订记录直接显示英文动作 terminate。合同到期时间允许为空,详情页将历史空值显示为 -;部分开发联调合同也未写入到期时间。

具体操作

  • 在统一展示层增加合同动作中文映射,将 terminate 显示为“终止合同”。
  • 将合同创建、草稿编辑和续签的到期时间调整为前后端必填,并校验其晚于生效时间。
  • 历史空到期时间显示为“待补录”,不使用推测日期替代真实业务数据。
  • 新生成的联调合同写入一年后的到期时间,并对身份和合同编号均匹配的旧联调合同执行幂等回填。

操作后状态

新提交合同不能缺少到期时间;历史真实合同缺失值会明确提示补录;开发联调合同再次执行种子后可显示确定的到期时间;后端稳定动作枚举保持不变。

代码变更

  • frontend/platform_admin/src/api/resource-display.ts:增加动作中文映射和历史到期时间提示。
  • frontend/platform_admin/src/api/resources.ts:合同表单与续签动作要求到期时间必填。
  • backend/api/internal/logic/platform/gasorder/gasorder.go:增加服务端必填与时间顺序校验。
  • backend/api/internal/seed/mock.go:补齐并定向回填联调合同到期时间。
  • frontend/platform_admin/scripts/check-resource-pages.mjs:增加静态回归断言。

验证结果

  • go test ./internal/logic/platform/gasorder ./internal/seed:通过。
  • npm run resource-pages:check:通过,覆盖详情 46 类、新建 25 类、编辑 23 类。
  • npm run type:check:通过。
  • npm run build通过Vite 成功构建 2620 个模块。

风险评估

接口从允许省略到期时间调整为必填,旧客户端若继续省略该字段将收到参数错误;历史真实数据不自动推测回填,需业务人员在草稿编辑或续签时补录。