2026-10-20 12:01:39 +08:00
|
|
|
|
# Admin 拖车模块指引
|
|
|
|
|
|
|
|
|
|
|
|
## 路径基准与读取顺序
|
|
|
|
|
|
|
|
|
|
|
|
- 本文件适用于 `src/modules/trucking/`,代码路径相对本目录;应用公共规则见 `../../../AGENTS.md`,订舱级拖车细则见 `../../../docs/business-index.md`。
|
|
|
|
|
|
- 本模块只做**订舱级拖车预约**,与目的港码头拖车(`../container-loading/api/terminalDrayages.ts`)是不同生命周期;改前先确认属于哪一类。
|
|
|
|
|
|
- 后端只查 `firstleg/` 的 `firstleg/service/TruckAppointmentService.java` 与 `firstleg/openapi/truck-appointments-v1.yaml`;附件归 `file/`。
|
|
|
|
|
|
|
|
|
|
|
|
## 页面与入口
|
|
|
|
|
|
|
|
|
|
|
|
| 目标 | 页面/路由 | API 与后端 |
|
|
|
|
|
|
|---|---|---|
|
|
|
|
|
|
| 拖车预约列表、状态与筛选 | `pages/TruckAppointmentsView.vue`;`trucking` | `api/platformTrucking.ts`;`firstleg/service/TruckAppointmentService.java` |
|
|
|
|
|
|
| 新建拖车预约、订舱候选 | `pages/TruckAppointmentCreateView.vue`、`components/TruckAppointmentForm.vue`;`trucking/new` | `api/platformTrucking.ts` 的 `/candidates` |
|
|
|
|
|
|
| 预约详情、附件与承运商 | `pages/TruckAppointmentDetailView.vue`、`components/TruckAttachmentDialog.vue`;`trucking/:id` | `api/platformTrucking.ts`;附件 `file/` |
|
|
|
|
|
|
|
|
|
|
|
|
## 关键边界
|
|
|
|
|
|
|
|
|
|
|
|
- 表单只选择服务端返回的 `RELEASED` 订舱与 `TRUCKING + truckingScope=DOMESTIC` 国内拖车供应商;不选择或提交客户、柜次、装柜计划或真实集装箱号。
|
|
|
|
|
|
- 一个订舱最多一张非终态拖车单;重复创建时转入现有单继续编辑,不新建第二张。
|
2026-10-23 12:06:42 +08:00
|
|
|
|
- 提单号和仓库由订舱冻结事实带入,表单不自行拼接或改写;创建及派车不要求上传订舱文件。
|
2026-10-20 12:01:39 +08:00
|
|
|
|
- PDA 完成装柜不自动推进拖车状态;拖车生命周期与 PDA 任务解耦。
|
|
|
|
|
|
- 附件为平台作用域,不重复上传提单文件;清关提柜固定选择 `OVERSEAS` 海外车队,类型在供应商主档单选维护。
|
|
|
|
|
|
|
|
|
|
|
|
## 验证
|
|
|
|
|
|
|
|
|
|
|
|
- 定向:`pnpm test src/modules/trucking/<目标测试>`;表单字段或状态链变更同时核对 `truck-appointments-v1.yaml`。
|
|
|
|
|
|
- 本文件或索引变更后,从后端根运行 `./scripts/agents-index-contract.ps1`。
|