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

41 lines
2.4 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.
# 操作日志:配送点合同附件管理
操作时间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:check``npm.cmd run profile:check`:通过。
- `npm.cmd run build`通过2639 个模块完成生产构建。
- 后端已重建并监听 `12426`;浏览器会话当前停留在登录页,登录后的视觉回归待补。
## 风险评估
- 临时上传成功但合同保存失败:前端调用签名清理接口,服务端仍有有效期兜底。
- 历史附件缺失或格式异常:详情显示需重传,启用操作继续由服务端拒绝。
- 并发编辑附件:附件版本与旧 URI 双重条件防止覆盖他人变更。
- 5173 列表响应的同类潜在泄露未在本次扩大处理,已登记为后续安全债务。