Files
docs/三期/README.md
T
2026-08-10 18:40:46 +08:00

50 lines
6.3 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.
# 三期文档
三期以国内头程后程作业为范围,完成从排柜、订舱、拖车和仓内拣货,到装柜证据齐全并进入 `LOADED`/装柜完成的业务闭环。`DELIVERED`/派送完成由到达海外仓后的可信回传推进,不属于国内三期操作范围。
## 当前主体模型与开工禁令
- 三期继续按业务单租户、“平台—客户”两级开发,客户之间严格隔离。Java 与接口中的业务 `tenant_id > 0` / `tenantId` 当前表示客户 ID;`tenant_id=0` 是平台身份、平台 RBAC 和平台公共仓库、快递公司、托盘、库位等公共资源技术作用域。客户往来单位、订单、文件和费用仍归属客户 `tenant_id>0`。
- 三期不得新增租户主表、租户选择器、客户所属租户配置、租户切换、租户级 RBAC 或租户级配置,也不得把当前 `tenant_id` 从客户 ID 改义为上级租户 ID。
- `tenant`、`Tenant*`、`merchant`、接口路径和字段属于历史兼容命名,继续保留;真实租户能力必须等未来独立需求、数据迁移和跨服务契约方案确认后再实施。
## 文档
- [三期闭环审计报告(2026-08-08)](三期闭环审计报告-2026-08-08.md):基于当前代码、接口、自动化和测试环境证据的闭环审计,列出阻断项、优先级和 GO 准入标准。
- [三期装柜闭环产品确认表(2026-08-08)](三期装柜闭环产品确认表-2026-08-08.md):提供给产品直接填写的纯业务确认表,不包含技术实现细节。
- [三期装柜闭环开发前确认单(2026-08-08)](三期装柜闭环开发前确认单-2026-08-08.md):用于产品确认直接开发前的状态、门禁、PDA 取证、冲正和验收细节。
- [三期开发规划:国内出仓](三期开发规划.md)
- [三期开发进度表](三期开发进度表.md):参考一期采用“大任务 → 详细任务 → 里程碑 → 未确认事项 → 开工准入 → 验收”结构维护。
- [虫虫出海三期开发进度表(Excel)](虫虫出海三期开发进度表.xlsx):可筛选、可下拉维护并使用公式汇总的项目进度工作簿。
- [三期需求确认表](三期需求确认表.md):集中跟踪 P3-Q1~P3-Q13、负责人和最终结论。
- [三期开工门禁](三期开工门禁.md):维护已确认范围、跨端硬边界和局部阻断项;模块指引引用本文件,不重复维护阶段状态。
- [三期页面与原型清单](三期页面与原型清单.md):按管理后台、企业客户端和 PDA 维护页面范围及原型状态。
- [三期验收任务拆分与待确认清单](三期验收任务拆分与待确认清单.md):真实 HTTP/真机验收覆盖、coverageGap 解除条件和并行任务入口。
- `参考资料/出仓流程.png`:本期 9 个核心动作及业务终点的原始参考图。
## 当前状态
三期已进入分模块部署联调。已确认不新建独立出仓单,现有订单列表/详情承载主状态;支持一单多柜、一个柜拼多个订单,并采用“父订单→子订单→柜次”关系,已装载数量形成子订单,未装载数量自动生成后续子订单。进入 `LOADED`/装柜完成前,订舱完成、拖车完成、报关放行回执、PDA 拣货完成及五类证据完整均为服务端硬门禁;`LOADED` 后错误统一线下人工处理,国内 Admin/PDA 不提供在线冲正或手工推进 `DELIVERED`。当前不能因子链路已通过而宣告整期完成,最终结论以真实 HTTP 全链路验收为准。
船期首版按船公司官网查询,每 3 天一次、最多 3 次,记录来源、查询/更新时间和过期标识。首批来源为美森、SML、ZIM、COSCO、EMC、合德;外部页面不可用时保留最近结果并标记过期。报关首版不做系统对接,全部由人工整理、线下提交和人工上传回执。仓库初始化角色包括操作员、拣货员、理货员,具体权限矩阵由 IAM 契约任务落表。
P3-Q1~P3-Q13 均已确认;P3-Q4 采用 uni-app 开发并支持在线更新,Android 广播扫描已接入。P3-Q5 复用二期实时库存、当前位置和可用量接口,不扩展完整 WMS。
### PDA 当前确认口径(2026-08-10)
- Android 扫描广播方式已接入;PDA 采用 uni-app 开发并支持在线更新,按既定发布安排完成真机验收。
- 正式作业仅支持在线:进入任务即标记“拣货中”,扫描保存在绑定作业员+任务+柜次的设备持久化草稿,点击提交时批量写后端。
- 允许部分拣货或跳拣,但每个未完成项必须填写异常原因;存在未解决异常时不能完成或进入 `LOADED`。
- 重复提交返回原结果,版本冲突提示员工刷新重试。
- PDA 只能现场拍照,Admin 可人工上传;五类证据各至少 1 张有效照片,可同类型多张追加,错图只作废不硬删除。
- 单柜次只允许一名作业员作业,不做多人并行和任务接管;进入任务即标记“拣货中”,扫描草稿按作业员+任务+柜次隔离,点击提交时批量写入后端。
- 后台操作员、理货员可按权限人工上传证据;拣货员只负责 PDA 现场拍照,不开放后台人工上传。照片无限期保留,客户不可见照片和锁码。
### 发布与真实验收状态(2026-08-10)
- Admin 已部署 `b593d72`:智能装柜、预装清单、装柜清单均可访问真实接口;预装/装柜清单不再要求选择仓库,详情仍使用列表行返回的真实仓库归属。
- Firstleg 已部署 `3bfc11a`:修复 PDA 拣货时库位分配状态提前变更的问题;真实复跑仍发现 PDA `pick` 第二处 `S0500`,当前仍阻断 PDA 复核、装柜完成、报关 LOADED 关联和最终门禁,不能标记三期闭环完成。
- 验收 fixture 顺序已核实为 `orders → inbound-measurement → phase3-container-loading → phase3-loading → phase3-customs → phase3-port-schedules → phase3-loading-finalize`;脚本保留真实失败,不以 mock、历史资源或 coverage gap 伪装通过。
- PDA“点击提交时批量写入后端”的原子 batch 契约尚未实现;当前页面仍不能证明整批事务、批次幂等、服务端库存快照和失败整批回滚已具备。
- ZIM hCaptcha、COSCO 动态页继续按产品确认的人工兜底保留为 `MANUAL_REQUIRED`,不作为自动查询 PASS。