Files
platforms/docs/操作日志_配送点合同附件管理_20260822.md
2026-08-23 01:08:25 +08:00

2.4 KiB
Raw Blame History

操作日志:配送点合同附件管理

操作时间2026-08-22 操作类型:扩展、修改 影响模块:配送合同列表、独立记录页、配送域附件接口、项目文档

操作前状态

配送合同列表直接展示 /uploads/contracts/...,新建和编辑页允许手填 file_uri;配送域没有附件上传、清理和鉴权读取路由。合同列表 API 也会返回内部附件路径。

具体操作

  1. 在配送域增加上传、临时清理和正式附件读取包装,并在读取前校验当前配送点合同归属。
  2. 复用平台合同附件的 10 MiB PDF 校验、30 分钟签名收据、并发版本和安全响应头。
  3. 配送合同列表经过统一敏感字段保护,删除 file_uri,增加 has_attachment
  4. 5176 新增 PDF 选择、拖拽、替换、确认移除、预览、下载和失败清理流程。
  5. 新版前端保存时主动删除 file_uri,仅提交签名收据和附件版本。
  6. 更新独立资源项目文档,纠正与原始敏感数据保护要求冲突的文本 URI 边界。

行为变化

  • 变更前:页面和网络响应暴露内部存储路径,管理员可手填任意 URI。
  • 变更后:列表只显示附件状态和鉴权入口;详情可预览、下载;草稿可上传、替换和移除;非草稿只读。
  • 兼容性:数据库字段、合同 CRUD 路径和后端旧 file_uri 输入保持兼容5176 不再使用旧输入。

验证结果

  • go test ./internal/logic/common ./internal/logic/delivery ./internal/logic/platform/gasorder ./internal/routers ./cmd/cli:通过。
  • npm.cmd run type:check:通过。
  • npm.cmd run resource-pages:check:通过,详情 17、新建 9、编辑 5并覆盖附件三条路由和前端签名收据编排。
  • npm.cmd run contract:checknpm.cmd run profile:check:通过。
  • npm.cmd run build通过2639 个模块完成生产构建。
  • 后端已重建并监听 12426;浏览器会话当前停留在登录页,登录后的视觉回归待补。

风险评估

  • 临时上传成功但合同保存失败:前端调用签名清理接口,服务端仍有有效期兜底。
  • 历史附件缺失或格式异常:详情显示需重传,启用操作继续由服务端拒绝。
  • 并发编辑附件:附件版本与旧 URI 双重条件防止覆盖他人变更。
  • 5173 列表响应的同类潜在泄露未在本次扩大处理,已登记为后续安全债务。