docs: align firstleg release contracts and add sailing plans

This commit is contained in:
2026-09-28 15:04:36 +08:00
parent a4c9ca162a
commit df6f434550
18 changed files with 1199 additions and 117 deletions
@@ -2,8 +2,8 @@
> 对应全景流程:F14~F23。
> 阶段起点:入库单主状态为 `WAIT_SPLIT`,不存在有效 HOLD。
> 阶段终点:装柜后完成送港线的仓库离开/进港事实,报关线保留客户确认、正式申报和海关结果;实际开船 `VESSEL_DEPARTED` 由阶段四承接。
> 本阶段复用订单、入库单、柜次和装柜计划,不新建独立“出仓单”。`LOADED` 后报关线和送港线并行;费用确认是并行事实,装柜完成后对已装范围的当前有效费用版本执行系统默认确认。
> 阶段终点:装柜后完成退税报关并进入待发区,再完成送港线的仓库离开/进港事实;实际开船 `VESSEL_DEPARTED` 由阶段四承接。
> 本阶段复用订单、入库单、柜次和装柜计划,不新建独立“出仓单”。`LOADED` 后先推进报关协同,报关完成后进入待发区,再推进送港;费用确认是并行事实,装柜完成后对已装范围的当前有效费用版本执行系统默认确认。
## 1. 阶段目标和边界
@@ -20,7 +20,7 @@
9. `LOADED` 后通知报关行、客户资料收集、回执确认、整柜正式申报和海关结果;
10. 送港、进港、甩柜/改配、实际离仓和拖车费用归集。
`LOADED` 表示货物已经完成实际装柜。此时同时触发报关线和送港线:报关线收集客户资料、发送报关行、处理回执和客户确认;送港线安排拖车、离仓和进港。两条线谁先到都保留各自事实,客户未确认不阻断送港,已进港不代表报关完成。容量不足时记录甩柜和改配船次;只有实际开船后才进入海运节点。国内 Admin/PDA 不得把订单推进到海外派送完成 `DELIVERED`。
`LOADED` 表示货物已经完成实际装柜。此时先触发报关线:收集退税客户资料、发送报关行、处理回执和客户确认;报关完成后进入待发区,才允许推进拖车、离仓和进港。已进港不代表报关完成,容量不足时记录甩柜和改配船次;甩柜不影响已完成报关资料、回执和客户确认。只有实际开船后才进入海运节点。国内 Admin/PDA 不得把订单推进到海外派送完成 `DELIVERED`。
## 2. 角色、终端和对象
@@ -269,7 +269,7 @@ PDA 点击“完成装柜”时,服务端重新校验:
3. 平台将资料发送给报关行,记录发送时间、资料版本和 `roundNo`;
4. 报关行返回本轮回执,平台保存文件和回执字段,并向对应客户展示确认任务。
柜前可以存在资料准备或历史附件,但不创建本柜正式客户确认轮次,也不能显示“已通知报关”。客户资料缺失只形成报关线补件待办,不阻断送港线。
柜前可以存在资料准备或历史附件,但不创建本柜正式客户确认轮次,也不能显示“已通知报关”。客户资料缺失形成报关补件待办,未完成报关不得进入待发区或推进送港。
### 12.2 F22-B 报关行回执与客户确认循环
@@ -285,7 +285,7 @@ PDA 点击“完成装柜”时,服务端重新校验:
1. 平台检查所有客户案例均已确认,冻结本柜最终实装和资料版本,生成整柜正式申报批次;
2. 将整柜资料提交报关行确认,报关行完成正式申报;首版不做外部系统直连,保留人工提交和审计记录;
3. 海关结果独立记录为查验、免查验放行、补件/退回、扣货等,不把客户确认回执直接当成海关放行;
4. 报关线的任一结果都不覆盖送港线的离仓、进港、甩柜事实。送港线可以先到港,报关线也可以先完成客户确认或正式申报。
4. 报关完成后进入待发区;报关事实不覆盖送港线的离仓、进港、甩柜事实。甩柜只改变运输船期,不回退报关资料、回执或客户确认。
## 13. F23 送港、进港与甩柜
@@ -300,9 +300,9 @@ PDA 点击“完成装柜”时,服务端重新校验:
- 订舱已 `RELEASED` 且分配当前柜次;
- 五类证据与有效锁码文本完整;
- 送港任务和当前船次分配完整;
- 报关客户确认或海关结果不作为仓库离开、送港和进港的前置。
- 报关完成是进入待发区以及后续仓库离开、送港和进港的前置。
订舱、拖车、仓库离开和港口进场属于送港线事实。报关线可以先完成客户确认或正式申报,也可以晚于进港;两条线各自展示阻断项。容量不足时记录 `ROLLED_OVER`,保存原船次、滚动次数、新船次、预计开船时间和客户通知。
订舱、拖车、仓库离开和港口进场属于待发区之后的送港线事实。容量不足时记录 `ROLLED_OVER`,保存原船次、滚动次数、新船次、预计开船时间和客户通知;不重新生成报关批次或客户确认任务。
### 13.2 自动与人工确认离仓
@@ -334,7 +334,7 @@ PDA 点击“完成装柜”时,服务端重新校验:
| 订舱 | `DRAFT → RELEASED` | 补齐资料并放舱 |
| 拖车 | 非终态 → `COMPLETED` | 所有要求柜次实际离仓后自动完成 |
| 报关 | `WAITING_DOCUMENTS → SENT_TO_BROKER → RECEIPT_PENDING_CUSTOMER_CONFIRM → CUSTOMER_CONFIRMED / NEEDS_RESUBMIT → ALL_CUSTOMERS_CONFIRMED → FORMAL_SUBMITTED → INSPECTION/RELEASED` | 装柜后通知报关行;回执必须经对应客户确认,打回则新资料/新回执轮次 |
| 送港 | `PORT_DELIVERY_PENDING → DEPARTED_WAREHOUSE → IN_TRANSIT_TO_PORT → PORT_RECEIVED / ROLLED_OVER` | 独立安排拖车和进港;容量不足记录甩柜和改配,不等待报关客户确认 |
| 送港 | `WAITING_FOR_LOADING → PORT_DELIVERY_PENDING → DEPARTED_WAREHOUSE → IN_TRANSIT_TO_PORT → PORT_RECEIVED / ROLLED_OVER` | 报关完成后进入待发区,再安排拖车和进港;容量不足时在原柜船期上人工修改船信息并留痕 |
| 海运 | `WAITING_SAILING → VESSEL_DEPARTED → IN_TRANSIT` | 只有承运船舶真实开航才进入海运节点 |
主状态只表达阶段结果。订舱、拖车、PDA、证据和报关保持关联子状态,页面应汇聚展示,但不能互相覆盖。
@@ -386,7 +386,7 @@ WAIT_SPLIT 入库单/已封托托盘
- [ ] 送港线已记录唯一国内离仓历史;如已进港,存在 `PORT_RECEIVED`,如甩柜,存在原船次/改配船次历史
- [ ] 客户全部确认后才允许整柜正式提交;正式申报后的查验/放行结果单独记录
- [ ] 船舶实际开航后才写入 `VESSEL_DEPARTED` 并启动海运节点查询
- [ ] 跨区事件可幂等重试;送港线和报关线任一先完成都不覆盖另一条线
- [ ] 跨区事件可幂等重试;甩柜/改配只新增船期事实,不覆盖报关资料、回执和客户确认
## 17. 易用性与数据流评审问题