Files
docs/国内货柜履约/README.md
T

54 lines
7.8 KiB
Markdown
Raw Normal View History

2026-09-04 16:44:08 +08:00
# 国内货柜履约文档
国内货柜履约以国内头程后程作业为范围,完成从排柜、订舱、拖车和仓内拣货,到装柜证据齐全并进入 `LOADED`/装柜完成的业务闭环。`DELIVERED`/派送完成由到达海外仓后的可信回传推进,不属于国内国内货柜履约操作范围。
2026-09-24 13:43:53 +08:00
> 范围更正:国内货柜履约维护订舱、拖车、离仓、送港、进港、甩柜/改配和实际开船前的船次状态。承运船舶实际 `VESSEL_DEPARTED` 后的 `CarrierScheduleQuery`、六家船公司查询、每 3 天/最多 3 次、来源/过期标识和后续定时船节点查询整体归海外仓业务,见 `../海外仓业务/README.md`。国内货柜履约不重复建设开船后的定时查询。
2026-09-04 16:44:08 +08:00
## 当前主体模型与开工禁令
- 国内货柜履约继续按业务单租户、“平台—客户”两级开发,客户之间严格隔离。Java 与接口中的业务 `tenant_id > 0` / `tenantId` 当前表示客户 ID;`tenant_id=0` 是平台身份、平台 RBAC 和平台公共仓库、快递公司、托盘、库位等公共资源技术作用域。客户往来单位、订单、文件和费用仍归属客户 `tenant_id>0`。
- 国内货柜履约不得新增租户主表、租户选择器、客户所属租户配置、租户切换、租户级 RBAC 或租户级配置,也不得把当前 `tenant_id` 从客户 ID 改义为上级租户 ID。
- `tenant`、`Tenant*`、`merchant`、接口路径和字段属于历史兼容命名,继续保留;真实租户能力必须等未来独立需求、数据迁移和跨服务契约方案确认后再实施。
## 文档
2026-09-24 13:43:53 +08:00
- **当前流程基线**:[头程到尾程流程节点梳理(重构版)](../头程到尾程流程节点梳理.md):以“头程下单、海运(货柜)、尾程入库和派送”三大块定义客户展示节点、后台管理节点、真实明细节点,并明确“物理装柜 `LOADED` → 报关线与送港线并行 → 客户确认后整柜正式申报 → 进港/甩柜 → 实际开船进入海运”的顺序。
2026-09-24 09:39:55 +08:00
- [报关资料与船期价格接入梳理](报关资料与船期价格接入梳理.md):对照客户工作台新增原型、业务退税流程与当前代码,梳理客户资料包、平台统一申报、客户报价查询的接入边界和待确认规则。
2026-09-24 13:43:53 +08:00
- [历史审计报告(2026-08-08)](国内货柜履约闭环审计报告-2026-08-08.md):旧口径审计记录,仅用于追溯当时的代码和测试证据,不作为当前流程或开发门禁依据。
- [历史产品确认表(2026-08-08)](国内货柜履约装柜闭环产品确认表-2026-08-08.md):旧口径讨论记录,不作为当前业务规则依据。
- [历史开发前确认单(2026-08-08)](国内货柜履约装柜闭环开发前确认单-2026-08-08.md):旧口径状态、门禁和验收记录,不直接作为当前开发任务输入。
2026-09-04 16:44:08 +08:00
- [国内货柜履约开发规划:国内出仓](国内货柜履约开发规划.md)
- [国内货柜履约开发进度表](国内货柜履约开发进度表.md):参考订单与客户采用“大任务 → 详细任务 → 里程碑 → 未确认事项 → 开工准入 → 验收”结构维护。
- [虫虫出海国内货柜履约开发进度表(Excel)](虫虫出海国内货柜履约开发进度表.xlsx):可筛选、可下拉维护并使用公式汇总的项目进度工作簿。
2026-09-24 13:43:53 +08:00
- [国内货柜履约需求确认表](国内货柜履约需求确认表.md):集中跟踪 P3-Q1~P3-Q17、负责人和最终结论。
2026-09-04 16:44:08 +08:00
- [国内货柜履约开工门禁](国内货柜履约开工门禁.md):维护已确认范围、跨端硬边界和局部阻断项;模块指引引用本文件,不重复维护阶段状态。
- [国内货柜履约页面与原型清单](国内货柜履约页面与原型清单.md):按管理后台、企业客户端和 PDA 维护页面范围及原型状态。
- [国内货柜履约验收任务拆分与待确认清单](国内货柜履约验收任务拆分与待确认清单.md):真实 HTTP/真机验收覆盖、coverageGap 解除条件和并行任务入口。
- `参考资料/出仓流程.png`:本期 9 个核心动作及业务终点的原始参考图。
## 当前状态
2026-09-24 13:43:53 +08:00
国内货柜履约已进入分模块部署联调。已确认不新建独立出仓单,现有订单列表/详情承载主状态;支持一单多柜、一个柜拼多个订单,并采用“父订单→子订单→柜次”关系,已装载数量形成子订单,未装载数量自动生成后续子订单。`LOADED`/装柜完成只校验真实柜号、PDA 拣货与数量守恒、五类证据和未解决异常。装柜完成后,报关线按“客户资料→报关行回执→客户确认/打回重做→所有客户通过→整柜正式申报→查验/放行”推进;送港线独立记录拖车、离仓、进港、甩柜和改配。两条线谁先到都保留事实,只有实际开船才进入海运节点。客户费用确认不阻断排柜和装柜,未确认的当前有效已发布费用版本在装柜完成后按已装范围记录系统默认确认。`LOADED` 后错误统一线下人工处理,国内 Admin/PDA 不提供在线冲正或手工推进 `DELIVERED`。当前不能因子链路已通过而宣告整期完成,最终结论以真实 HTTP 全链路验收为准。
2026-09-04 16:44:08 +08:00
柜子出仓后的船公司/船节点查询已重新归入海外仓业务。国内货柜履约报关首版不做系统对接,全部由人工整理、线下提交和人工上传回执。仓库初始化角色包括操作员、拣货员、理货员,具体权限矩阵由 IAM 契约任务落表。
2026-09-24 13:43:53 +08:00
P3-Q1~P3-Q17 均已确认;P3-Q4 采用 uni-app 开发并支持在线更新,Android 广播扫描已接入。P3-Q5 复用入库测量与计费实时库存、当前位置和可用量接口,不扩展完整 WMS。
2026-09-04 16:44:08 +08:00
### 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。