Files
docs/业务快速索引.md
T
2026-09-11 10:09:25 +08:00

26 KiB
Raw Blame History

业务快速索引

本文件按需检索,不作为启动必读文档。以下路径均按工作区根目录或表内注明的应用源码根目录起算,不相对于 docs/。

常用说法与歧义分流

先从任务中取“终端 + 业务对象 + 动作”,如“海外 PDA + 柜号 + 收货”。下面是检索提示,不替代业务契约;代码路径均从工作区根起算。用短词检索,不拿整句自然语言做精确匹配。

常用说法 区分依据 首个定位范围
收货、入库、测量、称重 国内到仓称重或测量弹框 apps/admin-web/src/modules/inbounds/;业务路由查“到仓测量”
接柜、卸柜、收货、签收 海外 PDA 柜号认领、照片、实收 apps/pda-overseas-uniapp/src/pages/operation/operation.vue;后端查 ReceivingContainerService
入仓计划、生成计划、按柜生成 平台尾程订单预览与确认,不是现场实收 apps/admin-web/src/modules/overseas-warehouse/pages/LastMileOrdersView.vue;后端查 ContainerInboundPlanConversionCoordinator
审核、审单、批量审核 客户头程订单待审核 apps/admin-web/src/modules/unified-orders/;后端查 BatchOrderReviewPreviewService
审核、测量审核、实测审核 仓库测量结果审核 baiyue-firstleg/firstleg/AGENTS.md 中“审核与初始计价”;页面先查 Admin 入库模块
费用、运费、报价、计费 单票入仓计价、客户专属报价或调价 apps/admin-web/src/modules/inbounds/fee/、apps/admin-web/src/modules/fba-pricing/;后端查 FbaPricingService
柜费、公共费用、分摊 国内柜费来源归 Firstleg;海外柜费来源归 Lastleg;账单与结算结果归 Finance 业务路由查“财务管理与柜级公共费用分摊”或“海外业务费用来源与客户财务”,按实际请求区分
充值、余额、授信、账单、核销 客户自助与平台管理先按终端区分 Client apps/client-web/src/modules/finance/;Admin apps/admin-web/src/modules/finance/
自动生成托盘、托盘码没生成、计划齐全、重试生成托盘码 海外入库计划保存后资源生成,不是国内托盘标签打印 Admin apps/admin-web/src/modules/overseas-warehouse/pages/LastMileOrdersView.vue;Backend baiyue-firstleg/lastleg-service/AGENTS.md 的“人工计划自动生成托盘与资源重试”
托盘码、托盘标签、补打 散货 FBA 装柜标签;一件代发 DP 封托标签另查 Firstleg 合托入口 apps/admin-web/src/modules/loading-lists/components/PalletLabelPrintDialog.vue;业务路由查“散货托盘码”
箱码、箱唛、箱标、单箱扫码 单箱身份与测量,不是托盘或库位 业务路由查“箱唛、箱码与单箱测量”;后端查 InboundCartonLabelService
库位、托盘、占位、释放 国内称重整票块归 Warehouse;海外实物托盘资源归 Warehouse Overseas;业务任务归 Lastleg 业务路由查“称重确认”或“海外仓库与通用资料”;用国内/海外和业务阶段继续限定
拖车、派车、提柜、还柜 国内订舱拖车与目的港码头车队是不同业务;海外配送排车另属 Lastleg 国内 apps/admin-web/src/modules/trucking/;目的港 apps/admin-web/src/modules/container-loading/api/terminalDrayages.ts;配送查“海外出库、排车”
报关资料、退税资料、完成文件 平台整柜操作与客户订单上传先按终端区分 Admin apps/admin-web/src/modules/container-loading/components/ContainerCustomsPanel.vue;Client apps/client-web/src/modules/first-leg/components/CustomsDocumentsDialog.vue
退货、退货预报、退货换标、退货签收、退货合箱 客户退货预报及签收库存,区别于派送异常退回 Client apps/client-web/src/modules/overseas-warehouse/views/ReturnOrdersView.vue;Admin apps/admin-web/src/modules/overseas-warehouse/pages/ReturnInventoryManagementView.vue;PDA apps/pda-overseas-uniapp/AGENTS.md;Lastleg returnreceipt/,见下文“退货预报、签收、库存与合箱”
异常、退回、退仓、回访 派送异常退回与库存退货业务不可混用 派送查 apps/admin-web/src/modules/overseas-warehouse/pages/ExceptionOrdersView.vue;退货预报/库存查 Lastleg returnreceipt/

定位步骤与反馈

  • 已知文件、组件或请求路径:读取适用指引后直接进入该文件或限定服务搜索路由,无需经过词表。
  • 页面问题:终端指引 → 命中页面 → 实际 import/API → 对应 Controller/Service。纯展示问题定位到相关组件即可;遇到后端业务判断再追踪调用链。
  • 状态或权限问题:已知请求时先定位 Controller 的权限与 Service 的状态门禁,再核对前端消费;尚不知请求时从触发动作找到 API。不要先扫所有权限初始化 SQL。
  • 无精确命中:从用户原话提取短词查本表;仍有歧义时利用页面标题、业务编号类型和国内/海外范围缩小。每次只扩展相邻业务范围。
  • 实际任务若发生入口误导、路径失效或重复扩大搜索,在当次交付中简记“原说法 → 最终入口 → 绕路原因”,并修正命中的索引行;进度与临时结果不写回本文件。
  • 评价检索质量看首次入口是否正确、扩大范围次数、找到目标前额外读取的无关文件数;文件存在或离线合同通过只能证明部分有效性,不能代替真实任务耗时。普通任务不额外建立计时脚本或登记台账。

业务快速路由表

退货预报、签收、库存与合箱:Client modules/overseas-warehouse/views/ReturnOrdersView.vue、ReturnInventoryView.vue;Admin modules/overseas-warehouse/pages/ReturnInventoryManagementView.vue;海外 PDA src/pages/return-receipt/return-receipt.vue、src/pages/return-packing/return-packing.vue,API 与检查入口见 apps/pda-overseas-uniapp/AGENTS.md;Backend lastleg-service/returnreceipt/,详细接口与状态见 baiyue-firstleg/lastleg-service/AGENTS.md 的退货入口,OpenAPI 为 overseas-business-v1.yaml。客户预报 → PDA 签收 → 退货箱/SKU 库存 → 同客户合箱 → delivery/ 退货出库;两个 PDA 页面均在 src/pages.json 注册,由 src/data/overseas-workbench.js 提供入口,真机验收另取证。派送异常退回仍归 exceptionorder/。

本表只路由到范围依据和首个代码入口;Admin/Client 路径从对应应用的 src/ 起算,国内 PDA 路径从 apps/pda-uniapp/ 起算,海外 PDA 路径从 apps/pda-overseas-uniapp/src/ 起算,Backend 路径从 baiyue-firstleg/ 起算。进入目标后继续读最近的 AGENTS.md,不要把根表当作模块细节清单。

业务 范围依据 首个代码入口
登录认证 docs/订单与客户/README.md Admin modules/auth/、core/auth/;Client modules/auth/;Backend auth/、iam/。海外 Token 不携带角色或权限集,Admin/Client/海外 PDA 从 Auth 登录与刷新响应的顶层授权快照读取,海外 Gateway 再按 IAM 安全投影校验
客户与企业 docs/订单与客户/README.md、docs/订单与客户/订单与客户头程订单闭环设计.md Admin modules/customers/;Client modules/tenant-management/、modules/account/;Backend iam/、auth/、file/。公司联系电话/邮箱是企业资料,不作为成员登录标识且不要求跨企业唯一;成员登录手机号归账号链路,修改时同步 Auth 并撤销该账号会话。审核必填资质仅营业执照与统一社会信用代码;法人身份证选填,可在已有营业执照后单独补传或替换,营业执照仍须与统一社会信用代码整包提交;默认尺寸配置由 IAM 持久任务异步调用 firstleg/,未就绪不得审核通过
供应商与国内整柜 docs/国内货柜履约/国内货柜履约需求确认表.md Admin modules/suppliers/、modules/domestic-containers/;Backend warehouse/;OpenAPI supplier-v1.yaml、domestic-container-v1.yaml
平台收货仓 docs/订单与客户/订单与客户头程订单闭环设计.md Admin modules/warehouses/;Client modules/first-leg/;Backend warehouse/
头程订单、批量审核预览与入仓码关系 docs/订单与客户/README.md、头程订单闭环设计 Admin modules/first-leg-orders/、modules/unified-orders/;Client modules/first-leg/api/inboundCodeAssociations.ts、modules/first-leg/;Backend order/ 的 InboundCodeAssociationService、UnifiedOrderQueryService、BatchOrderReviewPreviewService 与 firstleg/。Order 为 SUBMITTED 时,即使 Firstleg 已存在准备中入库投影,统一列表仍固定显示 PENDING_REVIEW 并提供审核动作;批量审核弹框只调用 /orders/first-leg/batch-review-preview 一次获取按请求顺序返回的快照,不逐票查询详情,主要展示入仓码而非内部订单 ID
客户头程订单批量导入 当前 Order 契约 Client modules/first-leg/views/FirstLegOrdersView.vue、api/firstLeg.ts;Backend order/ 的 MerchantBatchImportService、MerchantWarehouseCatalogClient、MerchantPricingCatalogClient 与 order-v1.yaml。中文 XLSX 模板按当前客户动态生成地址、全部有效仓库和渠道下拉;导入时重新校验动态选项与客户归属,最多 50 行,只创建草稿,支持部分成功或整批原子模式
平台修改客户原始申报与履约渠道 当前 Order/Firstleg 契约 Admin modules/unified-orders/components/OrderDeclarationEditorDialog.vue、api/unifiedOrders.ts;Backend order/ 的 OrderDeclarationUpdateService 与 order-v1.yaml,通过 ORDER_DECLARATION_UPDATED_V1 同步 firstleg/ 的 OrderDeclarationSyncService。只修改申报快照,不覆盖仓库/PDA 实测、测量审核、箱码或已确认费用;渠道变化额外校验分柜、同柜、装柜可逆性与重新计价,国内收货仓或中转仓变化必须重新下单
脚本管理、全量验证与测试造数 baiyue-firstleg/scripts/AGENTS.md、baiyue-firstleg/scripts/README.md Backend scripts/ 为仓库级入口,scripts/admin-test-env-modules/ 为 Admin HTTP 内部模块;服务局部脚本留在 <service>/scripts/,不得散落到 src/test/scripts/;真实 HTTP、部署或环境写入仍须当前轮明确授权
平台/企业 RBAC 订单与客户契约;公共语义见 docs/平台客户层级与权限契约.md Admin modules/iam/、core/access/;Client modules/tenant-management/;Backend iam/、auth/
消息中心与站内通知 触发业务的阶段/专题契约,收件箱以 IAM OpenAPI 为准 Admin/Client modules/notifications/;Backend iam/.../notification/;生产者留在所属服务
PDA 拣货与柜级装柜证据 国内 PDA README、拣货原型、国内货柜履约需求确认 PDA pages/picking/、stores/picking.js、api/pda-loading.js;证据以 taskId + warehouseId 进入任务专用 API,业务所有权固定真实 containerBookingId,不得按入仓单或客户拆分;上传以幂等键绑定包含文件内容的请求哈希,完全重放直接返回已有结果且不得重复上传 File;Backend firstleg/、warehouse/、file/
到仓测量、测量库位、箱规策略与头程计费 docs/入库测量与计费/README.md、测量计费入库主流程 Admin 测量 modules/inbounds/measurement/InboundMeasurementDialog.vue、InboundMeasurementPanel.vue,称重 modules/inbounds/weight/components/WeightOcrPanel.vue,以及 warehouse-resources/、fba-pricing/、dimension-config/、fee-items/;Backend firstleg/ 的 InboundMeasurementService、MeasurementLocationOccupationService、MeasurementSubmissionService、CustomerDimensionConfigService、CustomerDimensionWeightingService、FbaPricingService,并联查 warehouse/、file/、integration-service/。整票库位按确认图片数与有效体积容量需求的较大值尽力预留,扩容只追加且删除图片保留空槽;库位指引失败不阻断称重确认或测量提交。客户固定四档箱规可选择 ADD/MULTIPLY,计价和费用确认以服务端及当前实际测量明细为准
客户专属报价、柜级阶梯运费与费用调整 当前 Firstleg 计价契约、docs/入库测量与计费/README.md Admin modules/fba-pricing/carrier-rates/、modules/inbounds/fee/、modules/unified-orders/components/InboundFeeDetailManager.vue;Backend firstleg/ 的 PlatformPriceBookService、ActivePriceBookEstimator、FbaPricingService、ContainerTierAmountAllocator、InboundFeeDetailService 与 fba-pricing-v1.yaml。公共报价使用 customerId=0,客户专属报价按客户独立版本化并优先于公共 ACTIVE 版本;柜级区域重量阶梯按同柜客户实际计费量聚合命中阶梯后守恒分摊,装柜成员变化只重算未锁定费用。人工调整计费量限系统基准上下 10% 且必须带版本、原因和二次确认;PRIVATE_LAST_MILE_DELIVERY 只允许私人目的仓;一件代发在预装确认前完成计价,WAIT_PALLETIZE 试算不得回退托盘化状态
箱唛、箱码与单箱测量 docs/入库测量与计费/入库测量与计费需求优化版-v2-测量计费入库主流程.md、docs/墨家设备测量上传接口说明-V3.md Admin modules/inbounds/measurement/;Client modules/first-leg/;Backend 按 firstleg/AGENTS.md 的箱唛与测量入口
称重确认、整票库位块与部分拣货资源结算 入库测量与计费主流程、国内货柜履约 PDA 契约 Admin modules/inbounds/weight/components/WeightOcrPanel.vue;Backend firstleg/ 的 MeasurementLocationOccupationService、InboundMeasurementService、MeasurementSubmissionService 与 warehouse/ 的 LocationBlockService。测量提交审核前至少上传并确认一张称重图片,单箱也不得免称重;称重确认尽力建立整票块,提交时再次补齐,库位指引失败不阻断称重确认或测量提交。容量按确认图片数与有效体积折算的较大值,最新测量批次内实测/冻结申报体积取有效较大值;删除图片只清空绑定不释放槽位。部分拣货有余量时整段转移给子单,整票拣完才一次性释放全部普通位与共享 A0,资源身份以 reservationId 为准
入库扣货、解除与凭证 入库测量与计费、国内货柜履约契约 Admin modules/unified-orders/pages/UnifiedOrdersView.vue、modules/inbounds/core/api.ts;Backend firstleg/ 的 InboundHoldService、InboundHoldGuard、InboundHoldEvidenceService,文件归 file/ 的 INBOUND_HOLD_EVIDENCE。扣货状态必须阻断后续物理履约写入;已发生拣货、装柜或出仓时禁止手工扣货/解除,命令携带版本与幂等键,只有进入不可变历史的凭证可下载
财务管理与柜级公共费用分摊 docs/财务管理/ 产品确认、五页验收契约、Firstleg-Finance 跨服务契约 Admin modules/finance/、modules/loading-lists/components/ContainerFeesPanel.vue;Client modules/finance/views/FinanceBillsView.vue,账单行按 inboundCode 复用头程入仓关系详情;Backend finance/、firstleg/,契约 container-fees-v1.yaml;导出与凭证归 file/。跨客户公共柜费按柜内真实客户与订单归属原子建组,金额合计等于柜费总额,审核、驳回、调整和作废整组处理,单行入口不得破坏组一致性
客户资金账户、充值、授信与业务扣费 docs/财务管理/README.md、跨区域认证与服务通信契约 Admin modules/finance/pages/FinanceCustomerAccountsView.vue;Client modules/finance/views/FinanceAccountView.vue;Backend finance/ 的 FinanceWalletService 与三类 Wallet Controller。充值申请经 File 保存凭证,平台审核或手工充扣;余额、授信、冻结、结算和释放以 Finance 主账为准。海外业务经 WALLET_COMMAND_REQUESTED/COMPLETED Outbox/Event Bridge 往返,不跨区同步调用钱包
订单编排、分柜、同柜不可拆组与柜次 docs/国内货柜履约/README.md、docs/国内货柜履约/国内货柜履约需求确认表.md、docs/统一订单主状态与操作契约.md Admin modules/unified-orders/api/coLoadGroups.ts、modules/unified-orders/、container-loading/;Client modules/first-leg/;Backend firstleg/loading/coload/、firstleg/split/、firstleg/loading/、order/;同柜组按订单创建,由服务端冻结每票全部可用入仓片段,仅要求同国内仓、同渠道,允许跨客户及不同目的仓港
全局智能排柜、预装与真实集装箱号后补 同上 Admin modules/container-loading/components/SmartLoadingDialog.vue 内嵌 pages/GlobalSmartLoadingView.vue,柜次页 SmartLoadingWorkbenchView.vue,预装详情 loading-lists/pages/PreloadPlanDetailView.vue;PDA pages/picking/;Backend firstleg/ 的 PlatformSmartLoadingController、SmartLoadingService、PendingReviewOrderClient、loading/,待审核事实来自 Order PendingReviewOrderQueryService。全局候选覆盖 PENDING_REVIEW/WAIT_MEASURE/WAIT_SPLIT/LOADING,状态只用于筛选展示,能否加入以服务端 canAssign 为准;待审核/待测量可提前占位,但确认预装或启动 PDA 前必须进入 WAIT_SPLIT。暂估明细的 totalPackageCount/remainingPackageCount 在测量前取 Order 原始申报箱数,测量完成后取最新已审核测量箱数,读取补充失败只回退当前已分配数,写入调整仍重新校验权威数量。同柜不可拆组仅在全员命中状态集合时作为一个分页与分配单元;人工加入允许跨渠道,智能推荐仍按柜次渠道。计划可一次性移除全部未拣明细,但任一成员已拣的同柜组必须整组保留。创建柜次时原子生成唯一预装计划,加入入仓码即建立关联;真实柜号不阻塞订舱关联、预装确认或 PDA 建任务,但必须在 PDA 最终完成前补齐
客户入库结果与头程费用确认 入库测量与计费主流程、当前 Firstleg 契约 Client modules/first-leg/components/InboundBillingPanel.vue、api/inboundBilling.ts;Backend firstleg/ 的 MerchantInboundBillingController、MerchantInboundBillingService、FbaPricingService 与 firstleg-v1.yaml。客户仅能确认本客户 SENT 的最新费用版本,提交 expectedFeeVersion 与幂等键;确认记录当前成员和时间并永久锁定该版本,平台不得再修改
订舱资料、放舱、出仓前船期与订舱级拖车 国内货柜履约 README、需求确认和实施边界 Admin modules/ocean-bookings/、port-schedules/、trucking/;Backend firstleg/oceanbooking/、firstleg/portschedule/、TruckAppointmentService。拖车预约由 RELEASED 订舱拥有,不按客户、柜次、装柜计划或真实柜号归属;每个订舱最多一张非终态拖车单,创建候选由服务端排除缺提单/有效订舱文件或已有有效拖车单的订舱;PDA 装柜完成不推进拖车状态
目的港码头拖车与还空预警 docs/海外仓业务/README.md Admin 海外清关提柜列表/详情 modules/container-loading/pages/OverseasContainersView.vue、modules/container-loading/pages/OverseasContainerDetailView.vue、API api/terminalDrayages.ts;Backend firstleg/terminaldrayage/、terminal-drayage-v1.yaml。该能力按真实货柜 containerBookingId 聚合,与订舱级拖车预约是不同生命周期;货柜实际到港后从 Warehouse ACTIVE + TRUCKING 供应商选择车队,依次预约提柜、记录实际提柜和实际还柜。提柜/还柜复用标准船节点 PICKED_UP/EMPTY_RETURNED,还空截止与超时按服务端 unloadingCompletedAt + 72h 计算,前端只消费 allowedActions 和预警结果。车队邮件由 Firstleg 持久化排队,首次选择后手动发送,换队原子生成旧车队取消与新车队提柜请求;邮箱取 Warehouse,邮件模板与配置见 baiyue-firstleg/firstleg/docs/terminal-drayage-mail.md。
整柜报关资料与完成文件 国内货柜履约契约 装柜完成后由 Admin modules/container-loading/components/ContainerCustomsPanel.vue 管理整柜报关,Client modules/first-leg/components/CustomsDocumentsDialog.vue、api/customs.ts 按订单处理本客户退税资料;Backend firstleg/customs/container/、customs-v1.yaml,文件归 file/。客户资料可覆盖同柜多个退税入仓码,开始报关后冻结;平台逐资料回传完成文件,全买单柜走平台确认与明细导出
国内出仓确认 国内货柜履约契约 Admin modules/outbound-dispatch/;Backend firstleg/outbound/dispatch/
客户统计与平台日志 当前统计/审计契约 Admin modules/customers/、modules/audit/;Backend firstleg/customerstatistics/、audit-service/
客户工作台账户与设置 订单与客户契约 Client modules/account/、system/、tenant-management/;Backend iam/、auth/
企业订单与跨境业务 订单与客户、国内货柜履约契约 Client modules/order-management/、cross-border/;Backend order/、firstleg/、integration-service/
海外接柜、入库与库内库存 docs/海外仓业务/README.md Admin 按 apps/admin-web/AGENTS.md 海外模块入口;海外入口 gateway-overseas/;尾程/入仓/换标/库存 lastleg-service/;仓库主档归国内 warehouse/,库位/托盘/锁归 warehouse-overseas-service/ 并只引用国内 warehouseId;与排车、出库、派送共同组成海外仓全流程
尾程订单控制与柜级入仓计划转换 docs/海外仓业务/README.md Admin modules/overseas-warehouse/pages/LastMileOrdersView.vue、LastMileOrderDetailView.vue、api/lastMileOrders.ts;Backend lastleg-service/ 的 LastlegOrderController、LastlegOrderCommandService、InboundPlanService、ContainerInboundPlanConversionCoordinator,资源归 warehouse-overseas-service/ 的 WarehousePalletBatchService。orders/container-summaries 按 sourceContainerBookingId 跨客户聚合并分页返回全部稳定来源柜,已完成计划转换的柜仍保留用于接柜仓查询与修改;生成动作只消费 allPlansReady/pendingPlanCount/resourcePendingPlanCount,详情不受列表分页截断。确认前从 /inbound-plans/container-preview 读取服务端分组、托数、阻断项与 snapshotVersion/snapshotHash;convert-container 锁柜重算后先批量预留真实托盘,再本地原子生成剩余独立计划并确认资源,失败仅补偿未确认资源,同柜重放不得产生第二批资源。单票手工计划保存后,全柜计划齐全且预览就绪时自动生成并绑定托盘资源,一票柜立即触发;resourcePendingPlanCount 表示自动生成异常后的重试入口,资源未齐不得进入 PDA 接柜。自动入口见 Lastleg ContainerInboundPlanConversionCoordinator.convertManualAndAutoMaterialize。单票可维护完整入库计划、暂扣/解除及八行人工节点快照;命令提交订单版本与幂等键,暂扣阻断该票后续排车/出库,人工节点首次保存后固定 MANUAL 来源且不得回退柜级节点
海外仓 PDA docs/海外仓业务/README.md Overseas PDA 入仓 api/inbound.js、api/receiving-adapter.js、pages/operation/,库内/换标按工作台入口,排车与出库 pages/dispatch/、pages/outbound/;Backend lastleg-service/inboundplan/pda/、pda/、dispatch/pda/、delivery/;统一经 gateway-overseas/。接柜候选、会话、照片和整柜完成按 sourceContainerBookingId + containerNo 聚合且不绑定客户,允许同柜多客户;各入仓码的计划、任务、SKU、托盘与库存仍按自身客户隔离。多计划同柜按服务端返回的 assigned/mergeAllowed/urgent 展示,合托只是现场可选提示;扫码实收确认计划生成时预留的真实托盘与库位,不重新分配资源;派送与回访由 Admin/Client 承载
海外采购、本土卡车与散板 docs/海外仓业务/README.md Admin modules/overseas-business/;Client modules/cross-border/;Backend lastleg-service/ 的 procurement/、trucking/、looseboard/;统一经 gateway-overseas/
海外仓库与通用资料 docs/海外仓业务/README.md 全部仓库主档进入 Admin modules/warehouses/ 与国内 warehouse/;海外库位/托盘/锁进入 warehouse-overseas-service/ 并引用国内 warehouseId;报价、汇率、车辆按海外服务实际契约
国内出仓后船节点 docs/海外仓业务/README.md Admin modules/port-schedules/、ocean-bookings/、货柜详情;Backend firstleg/portschedule/、integration-service/;从确认国内出仓查询至目的港到达、提柜和还柜。节点按 containerBookingId 柜级聚合,跨区事件使用 tenantId=0 平台技术范围,不携带或校验客户
海外出库、排车、派送、异常与回访 当前海外履约契约 Admin modules/overseas-warehouse/pages/OutboundsView.vue、DeliveryOrdersView.vue、ExceptionOrdersView.vue、CustomerVisitsView.vue;Backend lastleg-service/dispatch/、delivery/、dropship/、exceptionorder/、customervisit/;统一经 gateway-overseas/。异常单按 PENDING → PROCESSING → COMPLETED 流转,处理完成必须引用归属为 OVERSEAS_EXCEPTION_EVIDENCE 的证据;派送退回只从原出库拣货事实选择可退明细,退回海外仓时先把实收恢复到指定真实托盘/库位,再原子完成异常单并将派送置为 RETURNED
海外业务费用来源与客户财务 财务契约、docs/跨区域认证与服务通信契约.md 海外入仓、采购、美国卡车、本土散板和海外仓服务费由 lastleg-service/financefee/ 校验真实业务归属并版本化审核;通过 BUSINESS_FEE_SOURCE_CHANGED 完整快照、event-bridge-service/ 和国内 Finance /internal/finance/v1/business-fee-source-events 可靠入池。PAYABLE + DIRECT_PAID 进入已确认成本且不得再次进入 AP 待结算;Client 仍从 modules/finance/ 读取获准客户财务,不自动开放平台费用来源维护页

散货托盘码生成、打印与跨区传递:Admin modules/loading-lists/components/PalletLabelPrintDialog.vue;Firstleg LoadingPalletLabelService、LoadingCompletedOutboxService;Lastleg LastlegSourcePalletMapper、InboundPlanService。从各项目最近指引继续定位;散货 FBA 标签与一件代发实装托盘分别取各自冻结事实。