派单服务设计(Dispatch Service Design - DIS-D)¶
文档编号:DOC-P71-D / DIS-D 版本:V1.1(安装师傅三分类 M1_SELF/M2_FREE/M3_SME + 运输×安装 3×3=9 组合矩阵双轴加权升级) 最近更新:2026-08-21 创建日期:2026-08-21(V8.0 阶段一派单服务独立化) 维护人:OL / TL / DT 关联文档:README.md、DLV 物流商档案库、CPT-D L5 物流阶段、QMD 物流费公式、RQD-B §八 物流配送需求、RQD-O §3.2 DSP/DLV 功能组、GLY V4.6 §二 DLV/LGP术语 来源:原 docs/主数据服务/平台成熟期派单服务方案.md V1.0 草案 457 行 TL 指示依据:「根据C7,C8的意见调整当前设计内容的同时,另外再编写一份专门的文档,描述平台成熟期的派单服务方案,覆盖3种模式的具体策略和相互关系,作为独立的分支任务,我会在你提供的方案基础上,讨论、修改和确认。」
一、定位与核心概念¶
1.1 服务定位¶
派单服务(DIS)是平台的物流派单决策引擎——独立于物流商档案库(DLV),承接 CPT L5 物流阶段派单触发,基于三模式业务架构(M1 自营 / M2 独立司机 / M3 物流公司)+ C7 保险赔付策略 + OL 人工调整机制,生成派单决策结果并下发 LGP 司机端。
DIS 与 DLV 的边界: - DLV 存储「主体」:物流商档案、业务模式分类(M1/M2/M3)、字段子表、保险赔付记录 DLV-019、信用评分 DLV-035 - DIS 执行「过程」:单次派单决策(合同匹配→优先级算法→司机选择→接单确认→降级策略) - 关系:DIS 通过物流商ID引用 DLV 主体档案;DIS 采集的派单结果/接单率反哺 DLV 信用评分
1.2 核心概念¶
| 概念 | 定义 | 说明 |
|---|---|---|
| 派单 | 平台将物流单分配给具体司机/物流公司的决策过程 | 单次决策,非长期档案 |
| 三模式 | M1 自营 / M2 独立 / M3 物流公司 | 详见 §二 业务模式定义 |
| M3 合同 | 平台与物流公司签订的服务合同(M3-a/b/c/d 四类型) | DLV-M3 字段子表存储 |
| C7 保险确认 | 司机接单前确认「当前保险周期内是否发生赔付事故」 | 引入派单优先级负向权重 |
| OL 人工调整 | 运营人员可覆盖系统派单结果 | 包括跨模式调度/紧急补单/派单冻结 |
| 降级策略 | M3 司机拒绝/不可用时跨模式降级到 M1 | 反之 M1 运力不足可升级 M3 采购 |
1.3 双重价值¶
- 现阶段决策引擎:以 M3 物流公司合同配置为主、M1 自营为补充,支持运营人员人工调整
- 成熟期弹性扩展:M2 独立司机弹性运力、智能排班算法、保险费率动态调整
二、DDD 战略设计(子域划分与限界上下文)¶
2.1 子域定位¶
| 子域类型 | 子域名称 | 边界 | 现阶段定位 | DIS 角色 |
|---|---|---|---|---|
| 核心子域 | 派单决策子域 | 派单匹配引擎 + 优先级算法 + 降级策略 | 平台核心竞争力 | 本文档核心 |
| 支撑子域 | M3 合同配置子域 | 合同 CRUD + 字段子表映射 | 引用 DLV-M3 字段子表 | 数据消费方 |
| 支撑子域 | C7 保险策略子域 | 保险周期确认 + 赔付预警 | 引用 DLV-019 | 数据消费方 |
| 通用子域 | 司机接单子域 | 接受/拒绝 + 状态流转 | 与 LGP App 协同 | 接口契约 |
| 通用子域 | 人工调整子域 | OL 覆盖/跨模式/紧急补单 | 与 OPR 协同 | 接口契约 |
2.2 限界上下文(Bounded Context)¶
graph TD
subgraph "DIS 派单服务限界上下文"
BC1["派单决策上下文<br/>(核心域)"]
BC2["M3 合同配置上下文<br/>(支撑域)"]
BC3["司机接单上下文<br/>(通用域)"]
BC4["人工调整上下文<br/>(通用域)"]
BC5["保险策略上下文<br/>(支撑域)"]
end
subgraph "外部上下文"
DLV_BC["DLV 物流商档案库上下文"]
CPT_BC["CPT 客户项目跟踪上下文"]
LGP_BC["LGP 司机端上下文"]
OPR_BC["OPR 运营后台上下文"]
OPS_BC["OPS 运营服务上下文"]
QMD_BC["QMD 报价模型上下文"]
end
BC1 -- "防腐层 ACL:<br/>物流单事件" --> CPT_BC
BC1 -- "防腐层 ACL:<br/>物流商主体档案" --> DLV_BC
BC1 -- "发布领域事件:<br/>DispatchDecided" --> BC3
BC1 -- "发布领域事件:<br/>InsuranceWarning" --> OPS_BC
BC2 -- "共享内核:<br/>M3 字段子表" --> DLV_BC
BC3 -- "开放主机服务 OHS:<br/>LGP 接单 API" --> LGP_BC
BC4 -- "开放主机服务 OHS:<br/>OPR 调整 API" --> OPR_BC
BC5 -- "共享内核:<br/>DLV-019 保险记录" --> DLV_BC
BC1 -. "查询费率参考" .-> QMD_BC
2.3 上下文映射模式¶
| 关系 | 模式 | 说明 |
|---|---|---|
| DIS → CPT | 防腐层(ACL) | CPT L5 物流单事件经 ACL 转换为 DIS 内部 LogisticsOrder 值对象 |
| DIS → DLV | 共享内核(Shared Kernel)+ ACL | M3 字段子表共享;DLV-019 保险赔付记录经 ACL 转换为 DIS 内部 InsuranceStatus 值对象 |
| DIS → LGP | 开放主机服务(OHS) | LGP 接单 API(接受/拒绝/保险确认) |
| DIS → OPR | 开放主机服务(OHS) | OPR 调整 API(覆盖/跨模式/紧急补单) |
| DIS → OPS | 发布领域事件 | 保险赔付 ≥80% 触发 InsuranceWarningEvent |
| DIS → QMD | 客户/供应商(Customer/Supplier) | QMD 提供费率参考,DIS 为下游消费者 |
三、设计原则¶
| 原则 | 说明 | TL 指示依据 |
|---|---|---|
| 业务架构解耦 | 派单服务作为独立模块,与 DLV 档案库、QSV 报价服务、CPT L5 物流阶段松耦合 | 「设计重点是业务架构的解耦」 |
| 现阶段以模式3为主 | M3 物流公司合同配置 + 运营人员系统配置物流路线/货源 MFR/区域 | 「现阶段的需求:模式3为主」 |
| 模式1作为补充 | M1 自营司机对剩余货源(未被 M3 覆盖)的物流单提供基本排班 | 「模式1作为补充」 |
| 允许人工调整 | 运营人员可对系统派单结果进行人工调整 | 「允许运营人员人工调整」 |
| 司机端接受/拒绝 | 司机接单可选「接受/拒绝」,暂时不提供选单功能 | 「司机端对派单接单可选择接受或拒绝,暂时不提供选单功能」 |
| 成熟期覆盖全部模式 | 成熟期需考虑三种模式所有组合情况 | 「平台在成熟阶段的需求,需要考虑目前列出的所有情况」 |
| 保险赔付纳入派单策略 | DLV-019 保险赔付状态作为派单优先级负向权重因子 | TL C7 指示交叉引用 |
| DDD 战术设计 | 聚合根/实体/值对象/领域服务/领域事件明确划分 | 阶段二 DDD 引入 |
四、服务边界与职责¶
4.1 DIS 负责的职责¶
| 职责 | 说明 | DDD 落地 |
|---|---|---|
| 派单匹配 | 基于 CPT L5 物流单 + DLV 主数据,执行 M3 合同匹配 + M1 排班 | DispatchMatchingService 领域服务 |
| 优先级算法 | 计算司机派单优先级得分(业务模式 + 合同匹配度 + 距离 + 保险 + 信用) | PriorityCalculator 领域服务 |
| 司机选择 | 从候选池选择最优司机/物流公司 | DriverSelector 领域服务 |
| 接单状态机 | 接受/拒绝/超时状态流转 | DispatchOrder 聚合根状态机 |
| 降级策略 | M3→M1 跨模式降级、M2 启用(成熟期) | FallbackStrategy 策略模式 |
| OL 人工调整 | 覆盖派单结果、跨模式调度、紧急补单、派单冻结 | ManualAdjustmentService 应用服务 |
| 保险预警 | DLV-019 赔付金额 ≥80% 保额上限触发预警 | InsuranceWarningEvent 领域事件 |
| 派单结果反哺 | 接单率/拒单率/平均响应时间反哺 DLV-035 信用评分 | DispatchResultReverted 领域事件 |
4.2 DIS 不负责的职责(明确边界)¶
| 不负责项 | 归属服务 | 理由 |
|---|---|---|
| 物流商主体档案管理 | MDS/DLV | 长期档案,非单次派单 |
| CPT L5 物流单生成 | CPT | CPT L4→L5 状态流转生成派单触发事件 |
| 物流费计算 | QSV/QMD | 派单决策时仅查询费率参考,不计算 |
| 司机端 UI/导航 | LGP App | 派单结果下发后由 LGP App 负责执行 |
| 运营后台 UI | OPR Admin | 人工调整入口由 OPR 提供,DIS 提供 API |
| 营销获客 | OPS | 保险预警通知 OPS,但不执行营销动作 |
4.3 与其他服务的关系(架构图)¶
graph TD
DIS["DIS 派单服务<br/>(本文档)"]
DLV["DLV 物流商档案库 V1.1<br/>§2.3 业务模式分类 + §3.7 三模式字段子表"]
CPT["CPT L5 物流阶段<br/>派单触发入口"]
QSV["QSV 报价服务<br/>物流费率输入"]
LGP["LGP App 司机端<br/>接受/拒绝接单"]
OPR["OPR 运营后台<br/>人工调整 + M3 合同配置"]
OPS["OPS 运营服务<br/>保险赔付80%预警功能"]
DLV -- "业务模式分类<br/>M1/M2/M3 字段子表<br/>保险赔付记录 DLV-019" --> DIS
CPT -- "L5 物流单触发派单" --> DIS
DIS -- "派单决策结果" --> LGP
DIS -- "运营预警" --> OPS
OPR -- "M3 合同配置<br/>人工调整指令" --> DIS
DIS -- "派单优先级算法<br/>含保险赔付权重" --> LGP
QSV -. "费率参数" .-> DIS
五、DDD 战术设计¶
5.1 聚合根与实体¶
classDiagram
class DispatchOrder {
+String orderId
+LogisticsOrder logisticsOrder
+DispatchStatus status
+Driver assignedDriver
+DispatchMode dispatchMode
+M3Contract contract
+InsuranceConfirmation insuranceConfirm
+DateTime createdAt
+DateTime dispatchedAt
+DateTime acceptedAt
+accept()
+reject(reason)
+timeout()
+adjust(newDriver, reason)
+freeze()
}
class LogisticsOrder {
+String orderId
+String mfrId
+String deliveryRoute
+String category
+Decimal cargoValue
+Address pickup
+Address delivery
}
class Driver {
+String driverId
+String dlvId
+DispatchMode businessMode
+Integer level
+Decimal creditScore
+InsuranceStatus insurance
}
class M3Contract {
+String contractId
+String logisticsCompanyId
+M3Type type
+DispatchMode dispatchMode
+List routes
+List mfrIds
+List driverIds
+Decimal serviceFeeRate
+DateRange validity
}
class InsuranceConfirmation {
+String driverId
+String insurancePeriod
+Boolean hasClaims
+Decimal claimAmount
+Decimal claimRatio
+DateTime confirmedAt
}
DispatchOrder "1" *-- "1" LogisticsOrder : 值对象
DispatchOrder "1" *-- "1" Driver : 引用
DispatchOrder "1" *-- "0..1" M3Contract : 引用
DispatchOrder "1" *-- "1" InsuranceConfirmation : 值对象
| 聚合根/实体 | 类型 | 边界 | 一致性 |
|---|---|---|---|
DispatchOrder 派单聚合根 |
聚合根 | 单次派单决策的完整生命周期 | 强一致(事务边界) |
LogisticsOrder 物流单 |
值对象 | 由 CPT L5 事件经 ACL 转换而来 | 不可变 |
Driver 司机 |
实体引用 | 引用 DLV 物流商档案 | 最终一致 |
M3Contract M3 合同 |
实体引用 | 引用 DLV-M3 字段子表 | 最终一致 |
InsuranceConfirmation 保险确认 |
值对象 | 司机接单时确认 | 不可变 |
DispatchResult 派单结果 |
实体 | 派单完成后生成 | 反哺 DLV 信用评分 |
5.2 值对象清单¶
| 值对象 | 字段 | 用途 |
|---|---|---|
LogisticsOrder |
orderId, mfrId, deliveryRoute, category, cargoValue, pickup, delivery | CPT L5 → DIS 经 ACL 转换 |
InsuranceStatus |
driverId, insurancePeriod, hasClaims, claimAmount, claimRatio, threshold | DLV-019 → DIS 经 ACL 转换 |
DispatchPriority |
driverId, modeScore, contractScore, logisticsScore, insuranceScore, creditScore, levelMultiplier, totalScore | 优先级算法输出 |
DispatchResult |
orderId, driverId, mode, status, dispatchedAt, acceptedAt, rejectedReason | 派单完成事件载荷 |
AdjustmentReason |
type, description, operatorId, approvedBy, timestamp | OL 调整留痕 |
5.3 领域服务¶
| 领域服务 | 职责 | 输入 | 输出 |
|---|---|---|---|
DispatchMatchingService |
M3 合同匹配 + M1 排班触发 | LogisticsOrder | 候选合同清单 + 司机清单 |
PriorityCalculator |
计算司机派单优先级得分 | Driver + LogisticsOrder + InsuranceStatus | DispatchPriority |
DriverSelector |
从候选池选择最优司机 | ListDriver + DispatchPriority | Driver |
FallbackStrategy |
跨模式降级策略 | failedDispatch + reason | nextMode + Driver |
ManualAdjustmentService |
OL 人工调整应用服务 | DispatchOrder + AdjustmentReason | DispatchOrder |
5.4 领域事件¶
| 事件 | 触发时机 | 载荷 | 订阅方 |
|---|---|---|---|
DispatchRequested |
CPT L5 物流单生成 | orderId, logisticsOrder | DIS 派单匹配引擎 |
DispatchDecided |
DIS 完成派单决策 | orderId, driverId, mode, contractId | LGP App(下发司机端)+ CPT(更新订单状态) |
DispatchAccepted |
司机接受派单 | orderId, driverId, acceptedAt | CPT(订单状态→已派单) |
DispatchRejected |
司机拒绝派单 | orderId, driverId, reason | DIS FallbackStrategy(重派) |
DispatchTimeout |
司机超时未响应 | orderId, driverId, timeoutAt | DIS FallbackStrategy |
DispatchAdjusted |
OL 人工调整派单 | orderId, oldDriver, newDriver, reason | CPT + LGP(重新下发) |
InsuranceWarningTriggered |
DLV-019 赔付金额 ≥80% 保额上限 | driverId, dlvId, claimRatio | OPS(运营预警) |
DispatchResultReverted |
派单完成后反哺 | orderId, driverId, status, responseTime | DLV-035 信用评分 |
5.5 仓储与工厂¶
| 仓储 | 聚合 | 持久化 | 备注 |
|---|---|---|---|
DispatchOrderRepository |
DispatchOrder | dis_dispatch_orders 表 | 派单聚合根持久化 |
DispatchResultRepository |
DispatchResult | dis_dispatch_results 表 | 派单结果(用于反哺统计) |
M3ContractRepository |
M3Contract | 引用 DLV-M3 字段子表 | 只读仓储(DLV 维护) |
DriverPoolRepository |
Driver | 引用 DLV 物流商档案 + 司机档案 | 只读仓储(DLV 维护) |
| 工厂 | 职责 |
|---|---|
DispatchOrderFactory |
从 CPT L5 物流单事件创建 DispatchOrder 聚合根 |
六、业务逻辑详述¶
6.1 双轴三模式并行架构(运输模式 × 安装师傅模式)¶
DIS 派单服务是运输派单(物流商 LGP)与安装派单(师傅 WKR)的双轴决策引擎。运输轴沿用原三模式(M1-SELF / M2-INDP / M3-LOGC 物流公司合同),安装轴新增用户要求的师傅注册三分类(M1 自营 / M2 个体注册 / M3 签约安装供应商小B)。两轴形成 3×3 = 9 种派单组合,各组合优先级与适用场景矩阵单独定义。
6.1.1 运输模式 1 自营司机和车辆(M1-SELF)¶
定义:平台自有司机和车辆(雇佣或承租),由平台直接管理调度。
现阶段定位:补充。对剩余货源(未被 M3 覆盖的物流单)提供基本自营司机排班功能。
适用场景: - M3 物流公司合同未覆盖的剩余货源 - 应急补单:M3 司机临时不可用时的紧急调度 - 特殊客户/特殊品类的高优先级订单(如高端客户指定自营配送)
派单方式:平台→司机直接派单 + 允许运营人员人工调整
司机端行为:接单可选「接受/拒绝」(M1 自营司机同样适用,但拒绝后由系统/OL 重新调度)
6.1.2 模式2 外部独立司机(M2-INDP,成熟期启用)¶
定义:与平台签约的独立司机(非物流公司雇员,个人工商户/自雇),直接对接平台接单。
现阶段定位:成熟期启用。现阶段不实施。
适用场景: - 成熟期 M1 运力不足时的弹性补充 - 偏远区域/特殊品类专项运力 - 高峰期弹性运力扩展
派单方式:平台→司机直接派单
司机端行为:接受/拒绝(成熟期可考虑提供选单功能,现阶段不涉及)
6.1.3 模式3 专业中港跨境物流公司(M3-LOGC,现阶段为主)¶
定义:与不同专业物流公司签订不同类型服务合同,由物流公司提供车辆/司机资源。
现阶段定位:现阶段为主。运营人员根据服务合同在系统中配置物流路线和货源 MFR 或 MFR 所在区域。
M3 合同类型多样性(TL 指示原文落地):
| 合同子类型 | 编码 | 合同约定内容 | 派单方式 | 现阶段优先级 |
|---|---|---|---|---|
| 类型 a | M3-a | 约定专门的物流路线(区域专线) | 平台→物流公司→司机(两层)或平台→司机(一层) | ★ 现阶段核心 |
| 类型 b | M3-b | 约定货源生产商或货源生产商所在区域 | 平台→物流公司→司机(两层)或平台→司机(一层) | ★ 现阶段核心 |
| 类型 c | M3-c | 两层派单:平台派单给物流公司,再由物流公司派单到具体司机车辆 | 平台→物流公司→司机 | ★ 现阶段核心 |
| 类型 d | M3-d | 一层派单:平台直接向司机车辆派单(但走物流公司合同) | 平台→司机(合同挂靠物流公司) | ★ 现阶段核心 |
说明:M3 合同的「物流路线/货源 MFR 区域」与「派单方式(一层/两层)」是两个独立维度,可自由组合。例如: - M3-a + M3-c:约定区域专线的两层派单 - M3-b + M3-d:约定货源 MFR 区域的一层派单(走物流公司合同但平台直派司机)
6.1.4 安装模式 1 自营师傅(INSTALL-M1_SELF,核心支柱)¶
定义:平台织布鸟 WLYT 直接雇佣签约的全职师傅(WPL REGISTER_TYPE = M1_SELF),五险一金 + 保底工资 + 绩效奖金,平台直接排班与管理。
现阶段定位:派单核心支柱(与运输轴以 M3 为主形成并行核心)。标准客单、高端客户指定、VIP 厂家 MFR 深度合作项目优先由自营师傅安装。
派单方式:DIS 引擎 → WKR 师傅端 App 直接派单 + 运营 OL 人工覆盖调整。
拒单处罚:月 2 次拒单 = OL 黄牌谈话 + 1 小时岗前培训;连续 3 次 = 综合评分扣 20 分 + NORM 观察期 30 天。
6.1.5 安装模式 2 个体师傅注册(INSTALL-M2_FREE,弹性补充)¶
定义:香港自雇人士 / 个人工商户 / 兼职师傅,WPL 注册审核通过后直接在平台接单,平台抽佣 10%~15%(按师傅等级 GOLD 10% / AUTH 12% / NORM 15%)。
现阶段定位:弹性补充。高峰期(五一/双十一/年前后)运力、离岛单、小众品类(如专业音响、定制橱柜安装)由 M2 个体师傅覆盖自营欠缺的供给。
派单方式:DIS 引擎 → WKR 师傅端 App 派单池显示,接受/拒绝抢单模式。
拒单处罚:连续 2 次 35 分钟内拒单 = 综合评分扣 25 分 + 账号 30 分钟挂起 + 强制观看《拒单规则培训视频》4m12s(DIS-UC-06 异常用例落地),再拒 1 次 = -80 黄牌 SUSPEND 7 天。
6.1.6 安装模式 3 签约安装服务供应商企业-小 B(INSTALL-M3_SME,成熟期主力)¶
定义:与平台签约的小 B 安装公司 / 装修公司 / 工程承包商(PPL 资料册企业 ID)派遣的全职或签约师傅,师傅 WPL REGISTER_TYPE = M3_SME 且强制绑定企业 ID,平台与注册企业结算,企业负责向师傅发放工资。
现阶段定位:成熟期主力。批量工程项目(如整栋唐楼 24 户统一家具安装)、厂家 MFR 深度合作(美标洁具全港 5 年保修项目)、企业全品类打包合作由 M3 安装企业承接。
派单方式:DIS 引擎 → 安装企业调度门户(mfr-portal 扩展版,安装企业角色 VIEW)→ 企业调度员派单到其内部师傅池;或 M3-d 一层模式:平台直接派单到企业挂靠的单个师傅,但走企业结算合同。
拒单处罚:企业整体季度考核系数扣 0.05(全年完成率 <95% → 次年合同降价 3%);单师傅连续拒单 = 企业侧内部替换,平台不直接扣企业师傅个人评分。
6.1.7 运输轴 × 安装轴 9 种派单组合矩阵(优先级系数)¶
| 运输 ↓ 安装 → | 安装 M1 自营 (系数 ×1.15) | 安装 M2 个体注册(×1.00) | 安装 M3 小 B 企业(×0.95) |
|---|---|---|---|
| 运输 M1 自营 | 🟢🟢 组合 1-1 全自营(×1.15 ×1.15 = 1.32 最高优先级) 适用:高端客户 VIP 指定、百万豪宅整屋安装 |
🟡🟢 组合 1-2(×1.15 ×1.00 = 1.15) 适用:自营车缺人力高峰期,临时借个体师傅 |
🔴🟢 组合 1-3(×1.15 ×0.95 = 1.09) 适用:自营车+签约企业师傅联合上门 |
| 运输 M2 独立物流商 | 🟢🟡 组合 2-1(×0.95 ×1.15 = 1.09) 适用:偏远区域物流商 M2 + 本地自营 M1 师傅 |
🟡🟡 组合 2-2 双个体(×0.95 ×1.00 = 0.95) 适用:小件自提+邻居师傅顺路安装 |
🔴🟡 组合 2-3(×0.95 ×0.95 = 0.90) 适用:M2 跨境专线 + M3 香港端安装企业 |
| 运输 M3 物流公司合同 | 🟢🔴 组合 3-1(×0.80 ×1.15 = 0.92) 适用:MFR 厂家跨境货运 + 自营师傅到厂安装 |
🟡🔴 组合 3-2(×0.80 ×1.00 = 0.80) 适用:MFR 厂家合作初期试水 + M2 个体弹性 |
🔴🔴 组合 3-3 全合同(×0.80 ×0.95 = 0.76 成熟期默认) 适用:MFR 深度合作批量单,物流+安装全外包合同 |
决策引擎执行顺序:派单引擎先算出每个单独运输候选的运输分,再算出每个安装候选的安装分(含 REGISTER_TYPE 系数),两者按 运输分 × 0.55 + 安装分 × 0.45 加权得到综合总分,按综合分从高到低生成候选列表;OL 可按负向权重人工调整单师傅分数(DIS-UC-05)。
CPT L5 派单触发时 DIS 自动分类规则:若订单 SCL 品类属于 32 细分类目的「小众定制」→ 安装候选池强制插入 ≥2 名 M2 个体师傅;若订单来源 tag = 厂家 MFR 批量项目 → 强制首选 组合 3-3 全合同。
6.2 现阶段派单服务方案(筹备期 · 模式3为主 + 模式1补充)¶
6.2.1 现阶段派单流程总览¶
flowchart TD
START["CPT L5 物流单生成<br/>(订单进入派单阶段)"]
M3MATCH["M3 合同匹配<br/>运营人员已配置:<br/>·物流路线(M3-a)<br/>·货源MFR/区域(M3-b)"]
M3MATCH -- "匹配成功" --> M3DISP["M3 派单执行<br/>按合同类型 c/d 选择派单方式"]
M3DISP -- "类型c: 两层派单" --> M3LOGC["物流公司接收<br/>物流公司内部派单到司机"]
M3DISP -- "类型d: 一层派单" --> M3DRIVER["平台直接派单给司机<br/>(合同挂靠物流公司)"]
M3MATCH -- "未匹配(剩余货源)" --> M1DISP["M1 自营司机排班<br/>基本排班功能"]
M3LOGC --> DRIVER["司机接单确认<br/>(含C7保险周期确认)"]
M3DRIVER --> DRIVER
M1DISP --> DRIVER
DRIVER -- "接受" --> EXECUTE["物流执行<br/>CPT L5 物流阶段流转"]
DRIVER -- "拒绝" --> REASSIGN["重新派单<br/>·优先尝试同模式其他司机<br/>·跨模式降级: M3→M1<br/>·OL 人工调整介入"]
REASSIGN --> M3DISP
REASSIGN --> M1DISP
OPMAN["OL 运营人工调整<br/>·可覆盖系统派单结果<br/>·可手动指定司机/车辆<br/>·可跨模式调度"]
OPMAN -.->. M3DISP
OPMAN -.->. M1DISP
OPMAN -.->. REASSIGN
6.2.2 M3 合同配置流程(现阶段核心功能)¶
配置入口:OPR 运营后台 → 物流商管理 → M3 合同配置
配置流程:
| 步骤 | 动作 | 负责角色 | 输入 | 输出 |
|---|---|---|---|---|
| 1 | 选择物流公司 | OL | DLV 物流商ID(M3 模式) | 锁定合同主体 |
| 2 | 选择合同子类型 | OL | M3-a/b/c/d 任一或组合 | DLV-M3-002 合同类型 |
| 3 | 配置物流路线(M3-a) | OL | 区域专线或区域范围 JSON | DLV-M3-003 约定物流路线 |
| 4 | 配置货源 MFR 或区域(M3-b) | OL | MFR ID 列表 / MFR 所在区域 | DLV-M3-004 约定货源生产商或区域 |
| 5 | 选择派单方式(M3-c/d) | OL | 两层派单 / 一层派单 | DLV-M3-005 派单方式 |
| 6 | 关联旗下司机车辆清单 | OL | 司机ID + 车辆ID 列表 | DLV-M3-006 物流公司旗下司机车辆清单 |
| 7 | 配置服务费率与合同有效期 | OL + FL | 服务费率 + 起止日期 | DLV-M3-007 合同有效期 + 服务费率 |
| 8 | 生效并记录 | 系统 | — | DLV-M3-008 运营配置入口记录 |
6.2.3 M3 派单匹配算法(现阶段)¶
# 伪代码:M3 派单匹配算法(DispatchMatchingService.dispatch_match_m3)
def dispatch_match_m3(logistics_order):
"""
输入:CPT L5 物流单(含 MFR ID、收货地址、品类、货值等)
输出:匹配的 M3 合同清单 + 派单方式
"""
# 1. 货源 MFR 匹配(M3-b 优先)
m3_b_contracts = query_m3_contracts(
type='M3-b',
mfr_id=logistics_order.mfr_id,
mfr_region=logistics_order.mfr_region
)
# 2. 物流路线匹配(M3-a)
m3_a_contracts = query_m3_contracts(
type='M3-a',
route_contains=logistics_order.delivery_route
)
# 3. 合并候选合同(按优先级排序)
candidates = prioritize_contracts(m3_b_contracts + m3_a_contracts)
# 4. 派单方式决策(M3-c 两层 vs M3-d 一层)
for contract in candidates:
if contract.dispatch_mode == 'M3-c':
# 两层派单:通知物流公司,由其内部分配司机
notify_logistics_company(contract.logistics_company_id, logistics_order)
return {'mode': 'M3-c', 'contract': contract, 'status': 'pending_company_dispatch'}
elif contract.dispatch_mode == 'M3-d':
# 一层派单:平台直接派给物流公司旗下司机
driver = select_driver_from_company(contract.logistics_company_id, logistics_order)
if driver:
# C7 保险周期确认
if verify_insurance_clearance(driver):
send_dispatch_to_driver(driver, logistics_order)
return {'mode': 'M3-d', 'contract': contract, 'driver': driver, 'status': 'dispatched'}
else:
# 保险赔付记录存在,降低优先级或限制高货值订单
if logistics_order.cargo_value > HIGH_VALUE_THRESHOLD:
continue # 跳过该司机,尝试下一个
else:
send_dispatch_with_insurance_notice(driver, logistics_order)
return {'mode': 'M3-d', 'contract': contract, 'driver': driver, 'status': 'dispatched_with_insurance_notice'}
# 5. 无 M3 合同匹配 → 转入 M1 自营司机排班
return {'mode': 'M1-fallback', 'status': 'no_m3_match'}
6.2.4 M1 自营司机排班(现阶段补充)¶
触发条件:M3 合同未匹配的剩余货源物流单
排班逻辑:
| 步骤 | 动作 | 说明 |
|---|---|---|
| 1 | 查询可用 M1 自营司机 | 排班状态=可用 + 车辆类型匹配 + 区域覆盖 |
| 2 | 按距离/载重/时段评分排序 | 基本排班算法(不过度复杂化) |
| 3 | C7 保险周期确认 | 同 M3-d 流程 |
| 4 | 派单给评分最高司机 | 系统自动派单 |
| 5 | 司机接受/拒绝 | 拒绝后尝试次优司机,全部拒绝则 OL 人工调整 |
| 6 | OL 人工调整入口 | OL 可覆盖系统派单结果,手动指定司机/车辆 |
现阶段 M1 不提供选单功能(TL 指示):司机端只能对系统派来的单据选择「接受/拒绝」,不能主动浏览选择单据。
6.2.5 司机接单行为(现阶段统一规则)¶
适用范围:M1 自营司机 + M3-d 一层派单司机(M3-c 两层派单由物流公司内部分配,不在平台司机端体现)
接单流程:
sequenceDiagram
participant SYS as 平台派单系统
participant LGP as LGP App 司机端
participant DRIVER as 司机
participant OPR as OPR 运营后台
SYS->>LGP: 推送派单通知(含订单摘要 + C7保险确认请求)
LGP->>DRIVER: 显示派单详情
alt 保险周期内无赔付事故
DRIVER->>LGP: 确认「无赔付事故」
else 保险周期内已发生赔付
DRIVER->>LGP: 提供已发生赔付金额
SYS->>SYS: 派单策略评估(降低优先级或限制高货值)
end
alt 接受
DRIVER->>LGP: 点击「接受」
LGP->>SYS: 接单确认
SYS->>SYS: 订单状态→已派单
else 拒绝
DRIVER->>LGP: 点击「拒绝」
LGP->>SYS: 拒绝反馈
SYS->>SYS: 重新派单(同模式其他司机→跨模式降级→OL人工调整)
end
Note over DRIVER,OPR: 暂不提供选单功能(TL 指示)<br/>司机不能主动浏览选择单据
6.2.6 OL 运营人工调整机制¶
调整入口:OPR 运营后台 → 物流派单管理 → 人工调整
可调整操作:
| 调整类型 | 说明 | 限制 |
|---|---|---|
| 覆盖系统派单结果 | 取消系统派单,手动指定其他司机/车辆 | 需填写调整原因 |
| 跨模式调度 | M3→M1 或 M1→M3 切换 | 需 BO/TL 授权(涉及成本变化) |
| 紧急补单 | M3 司机临时不可用,紧急调度 M1 自营 | 系统记录紧急补单标记 |
| 派单冻结/解冻 | 临时冻结某司机/车辆的派单(如保险赔付预警) | 自动同步 DLV-019 保险状态 |
| 批量调整 | 批量调整多个订单的派单(如区域运力临时调整) | 需 OL 主管审批 |
6.3 成熟期派单服务方案(规模化运营 · 三模式全覆盖)¶
6.3.1 成熟期演进目标¶
| 维度 | 现阶段(筹备期) | 成熟期 |
|---|---|---|
| 模式覆盖 | M3 为主 + M1 补充 | M1 + M2 + M3 全覆盖 |
| M1 排班 | 基本排班 + 人工调整 | 智能排班算法(含 GPS/路况/载重优化) |
| M2 独立司机 | 不启用 | 弹性运力扩展 |
| M3 合同类型 | a/b/c/d 四类 | 新增组合类型 + 动态合同管理 |
| 派单方式 | M3-c 两层 + M3-d 一层 | 引入 M2 一层派单 + 混合派单 |
| 司机端 | 接受/拒绝(无选单) | 接受/拒绝 + 可选选单功能(TL 暂未要求,成熟期评估) |
| 保险策略 | C7 保险周期确认 + 80% 预警 | 引入保险费率动态调整 + 风险定价 |
| 人工调整 | OL 全程可调 | OL 异常介入 + 系统自动化为主 |
6.3.2 成熟期三模式协同关系¶
graph TD
ORDER["CPT L5 物流单"]
MATCH["派单匹配引擎<br/>(统一入口)"]
ORDER --> MATCH
MATCH -- "M3 合同匹配<br/>(优先)" --> M3["M3 物流公司派单<br/>·两层派单(M3-c)<br/>·一层派单(M3-d)"]
MATCH -- "M2 独立司机匹配<br/>(弹性补充)" --> M2["M2 独立司机派单<br/>·平台→司机直接派单"]
MATCH -- "M1 自营司机匹配<br/>(剩余/应急)" --> M1["M1 自营司机排班<br/>·智能排班算法"]
M3 -- "运力不足/拒绝" --> FALLBACK1["降级到 M2/M1"]
M2 -- "运力不足/拒绝" --> FALLBACK2["降级到 M1"]
M1 -- "运力不足" --> ESCALATE["升级到 TL/BO<br/>紧急运力采购"]
M3 --> CONFIRM["司机接单确认<br/>(含C7保险周期确认)"]
M2 --> CONFIRM
M1 --> CONFIRM
CONFIRM -- "接受" --> EXECUTE["物流执行"]
CONFIRM -- "拒绝" --> MATCH
OPR["OL 运营人工调整<br/>(全程可介入)"] -.->. MATCH
OPR -.->. M3
OPR -.->. M2
OPR -.->. M1
6.3.3 成熟期派单优先级算法(含 C7 保险赔付权重)¶
# 伪代码:成熟期派单优先级算法(PriorityCalculator.calculate_dispatch_priority)
def calculate_dispatch_priority(driver, logistics_order):
"""
计算司机派单优先级得分(分数越高优先级越高)
"""
score = 0
# 1. 业务模式优先级(M3 > M2 > M1,现阶段策略)
mode_score = {'M3': 100, 'M2': 80, 'M1': 60}
score += mode_score[driver.business_mode]
# 2. 合同匹配度(M3 专用)
if driver.business_mode == 'M3':
score += match_m3_contract_score(driver.contract, logistics_order)
# 3. 距离/载重/时段评分(基本排班)
score += calculate_logistics_score(driver, logistics_order)
# 4. C7 保险赔付状态(负向权重)
insurance_record = query_insurance_record(driver.dlv_id)
if insurance_record.has_claims:
# 已发生赔付事故 → 降低优先级
score -= 20
# 高货值订单限制
if logistics_order.cargo_value > HIGH_VALUE_THRESHOLD:
score -= 50 # 大幅降低
# 赔付金额接近保额上限 80%
if insurance_record.claim_ratio >= 0.8:
score -= 80 # 接近暂停派单
trigger_operation_alert(driver.dlv_id) # 触发运营预警
# 5. 信用评分(DLV-035)
score += driver.credit_score * 0.1
# 6. 等级乘数(DLV-L1/L2/L3)
level_multiplier = {'DLV-L1': 1.05, 'DLV-L2': 1.0, 'DLV-L3': 0.95}
score *= level_multiplier[driver.level]
return score
6.3.4 成熟期 M2 独立司机启用方案(待 TL 决策)¶
启用条件(建议): - M1 + M3 运力连续 30 天利用率 ≥85% - 出现 M3 合同未覆盖的新区域/新品类 - 高峰期弹性运力需求(如双 11/618 等促销季)
M2 启用流程: 1. BO/TL 决策启用 M2 模式 2. OL 在 DLV 档案库新建 M2 独立司机档案(DLV-M2-INDP 字段子表) 3. M2 司机签订个人合作合同(含保险参保状态) 4. M2 司机接入 LGP App(与 M1/M3 司机端同一 App,权限差异) 5. 派单匹配引擎纳入 M2 候选池
七、对接方案¶
7.1 与 DLV 物流商档案库对接¶
| DLV 数据 | 来源 | DIS 用途 |
|---|---|---|
| 业务模式分类(DLV-M1/M2/M3) | DLV §2.3 | 派单模式选择 |
| M3 字段子表(DLV-M3-001~008) | DLV §3.7 | M3 合同配置读取 |
| 保险赔付记录(DLV-019) | DLV §3.3 | C7 保险周期确认 + 派单优先级权重 |
| 物流商等级(DLV-L1/L2/L3) | DLV §2.1 | 派单优先级乘数 |
| 信用评分(DLV-035) | DLV §3.x | 派单优先级加分 |
| 旗下司机车辆清单(DLV-M3-006) | DLV §3.7 | M3-d 一层派单司机选择 |
7.2 与 CPT 客户项目跟踪服务对接¶
| 对接点 | 方向 | 说明 |
|---|---|---|
| L5 物流单生成 → DIS | CPT→DIS | CPT L4 签约完成后,L5 物流单生成时发布 DispatchRequested 事件 |
| DIS 派单决策 → CPT | DIS→CPT | DIS 发布 DispatchDecided 事件,CPT 更新订单状态为「已派单」 |
| 司机接单确认 → CPT | LGP→DIS→CPT | DIS 发布 DispatchAccepted 事件,CPT 更新订单状态 |
| OL 人工调整 → CPT | OPR→DIS→CPT | DIS 发布 DispatchAdjusted 事件,CPT 更新订单状态 |
7.3 与 LGP 司机端对接¶
| API | 方向 | 用途 |
|---|---|---|
POST /lgp/dispatch/notify |
DIS→LGP | 推送派单通知给司机 |
POST /lgp/dispatch/accept |
LGP→DIS | 司机接受派单 |
POST /lgp/dispatch/reject |
LGP→DIS | 司机拒绝派单 |
POST /lgp/insurance/confirm |
LGP→DIS | C7 保险周期确认 |
GET /lgp/dispatch/{id} |
LGP→DIS | 查询派单详情 |
7.4 与 OPR 运营后台对接¶
| API | 方向 | 用途 |
|---|---|---|
GET /dis/m3-contracts |
OPR→DIS | 查询 M3 合同清单 |
POST /dis/m3-contracts |
OPR→DIS | 新建/更新 M3 合同配置 |
POST /dis/adjust |
OPR→DIS | 人工调整派单结果 |
GET /dis/dispatch/{id} |
OPR→DIS | 查询派单详情 |
GET /dis/dispatch/history |
OPR→DIS | 查询派单历史(按司机/物流商/订单) |
GET /dis/alerts/insurance |
OPR→DIS | 查询保险赔付预警清单 |
POST /dis/dispatch/freeze |
OPR→DIS | 冻结/解冻司机派单 |
7.5 与 OPS 运营服务对接¶
| 对接点 | 方向 | 说明 |
|---|---|---|
| 保险赔付 ≥80% 预警 | DIS→OPS | 发布 InsuranceWarningTriggered 事件,OPS 触发运营预警流程 |
| 派单结果反哺 DLV-035 | DIS→DLV | 派单完成后发布 DispatchResultReverted 事件,DLV 更新信用评分 |
7.6 与 QMD 报价模型对接¶
| 对接点 | 方向 | 说明 |
|---|---|---|
| 物流费率参考 | QMD→DIS | 派单决策时查询物流费率(参考),不参与计算 |
八、接口定义与数据流¶
8.1 接口清单¶
| 接口 | 来源 | 目标 | 用途 |
|---|---|---|---|
POST /dis/dispatch |
CPT L5 | DIS | 触发派单(输入物流单,输出派单结果) |
GET /dis/m3-contracts |
OPR | DIS | 查询 M3 合同清单 |
POST /dis/m3-contracts |
OPR | DIS | 新建/更新 M3 合同配置 |
POST /dis/adjust |
OPR | DIS | 人工调整派单结果 |
POST /lgp/dispatch/accept |
LGP | DIS | 司机接受派单 |
POST /lgp/dispatch/reject |
LGP | DIS | 司机拒绝派单 |
POST /lgp/insurance/confirm |
LGP | DIS | C7 保险周期确认 |
GET /dis/alerts/insurance |
OPR | DIS | 查询保险赔付预警清单 |
8.2 数据流向¶
| 数据 | 来源 | 目标 | 频率 |
|---|---|---|---|
| M3 合同配置 | OPR | DLV-M3 字段子表 | 配置变更时 |
| 派单决策结果 | DIS | CPT L5 / LGP App | 每次派单 |
| 司机接单状态 | LGP | DIS / CPT | 每次接单 |
| 保险赔付记录 | 保险公司/司机 | DLV-019 | 接单时同步 |
| 信用评分反哺 | CPT L5/L8 | DLV-035~041 | 月度 |
| 运营预警 | DIS | OPR | 保险赔付≥80%时 |
九、现阶段实施路线图(筹备期 → 早期运营)¶
9.1 阶段划分¶
| 阶段 | 时间 | 目标 | 关键交付 |
|---|---|---|---|
| 阶段1:M3 合同配置功能 | 现阶段 | OPR 运营后台支持 M3-a/b/c/d 合同配置 | M3 合同配置 CRUD + DLV-M3 字段子表 |
| 阶段2:M3 派单匹配引擎 | 现阶段 | 根据 M3 合同配置自动匹配物流单 | 派单匹配算法 + 优先级评分 |
| 阶段3:M1 自营司机排班 | 现阶段 | 剩余货源的基本排班 | M1 排班算法 + 人工调整 |
| 阶段4:LGP App 接单功能 | 现阶段 | 司机端接受/拒绝 + C7 保险确认 | LGP App 派单详情页 + 接受/拒绝按钮 |
| 阶段5:OL 人工调整 | 现阶段 | OPR 后台人工调整派单 | 覆盖派单 + 跨模式调度 + 紧急补单 |
| 阶段6:C7 保险预警 | 现阶段 | 运营预警功能 | DLV-019 同步 + 80% 预警 + OL 介入入口 |
| 阶段7:成熟期 M2 启用 | 成熟期 | M2 独立司机接入 | M2 字段子表 + 派单匹配纳入 M2 |
| 阶段8:成熟期智能排班 | 成熟期 | M1 智能排班算法升级 | GPS/路况/载重优化算法 |
9.2 现阶段(阶段1-6)实施优先级¶
| 优先级 | 阶段 | 说明 |
|---|---|---|
| 🔴 P0 | 阶段1 + 阶段2 | M3 合同配置 + 派单匹配引擎(现阶段核心) |
| 🟡 P1 | 阶段3 + 阶段4 | M1 排班 + LGP App 接单(现阶段补充) |
| 🟢 P2 | 阶段5 + 阶段6 | OL 人工调整 + C7 保险预警(运营支撑) |
| 🔵 成熟期 | 阶段7 + 阶段8 | M2 启用 + 智能排班升级(待 TL 决策) |
十、业务架构解耦设计¶
10.1 模块边界¶
graph LR
subgraph "DLV 档案库模块"
DLV[(DLV 物流商档案库)]
DLV_M1[M1 字段子表]
DLV_M2[M2 字段子表]
DLV_M3[M3 字段子表]
end
subgraph "DIS 派单服务模块(本文档)"
MATCH[派单匹配引擎]
ALGO[优先级算法]
SCHED[排班调度器]
ADJUST[人工调整接口]
end
subgraph "CPT L5 物流阶段模块"
CPT[(CPT 订单流转)]
L5[L5 派单触发]
end
subgraph "LGP App 司机端模块"
LGP[(司机端)]
ACCEPT[接单接受/拒绝]
INS_CFM[C7 保险确认]
end
subgraph "OPR 运营后台模块"
OPR[(运营后台)]
M3_CFG[M3 合同配置]
MANUAL[人工调整]
ALERT[保险预警]
end
DLV -- "业务模式分类+字段子表" --> MATCH
CPT -- "L5 物流单" --> MATCH
MATCH --> ALGO
ALGO --> SCHED
SCHED --> LGP
ADJUST --> SCHED
OPR --> M3_CFG
M3_CFG --> DLV_M3
OPR --> MANUAL
MANUAL --> ADJUST
LGP --> ACCEPT
LGP --> INS_CFM
INS_CFM --> DLV
OPR --> ALERT
10.2 数据库表设计草案(待阶段三细化)¶
| 表名 | 用途 | 主要字段 |
|---|---|---|
dis_dispatch_orders |
派单聚合根持久化 | order_id, logistics_order_json, status, driver_id, mode, contract_id, insurance_confirm_json, created_at, dispatched_at, accepted_at |
dis_dispatch_results |
派单结果(反哺统计) | order_id, driver_id, mode, status, response_time, rejected_reason |
dis_m3_contracts_cache |
M3 合同配置缓存(读自 DLV-M3 字段子表) | contract_id, logistics_company_id, type, dispatch_mode, routes_json, mfr_ids_json, driver_ids_json, service_fee_rate, validity |
dis_insurance_warnings |
保险赔付预警记录 | warning_id, driver_id, dlv_id, claim_ratio, triggered_at, status |
dis_manual_adjustments |
OL 人工调整留痕 | adjustment_id, order_id, type, old_driver_id, new_driver_id, reason, operator_id, approved_by, created_at |
十一、待 TL 决策的开放问题¶
| # | 问题 | 听写建议 | 待 TL 指示 |
|---|---|---|---|
| Q1 | M3 合同配置是否支持「组合类型」(如 M3-a + M3-c 同时生效) | ✅ 支持,TL 原话「M3 合同的物流路线/货源 MFR 区域与派单方式是两个独立维度,可自由组合」已落地 | 待确认 |
| Q2 | M1 自营司机排班是否需要 GPS 实时定位 | 现阶段不做,成熟期阶段8引入智能排班时再做 | 待确认 |
| Q3 | 司机拒绝派单后的「同模式其他司机」候选数量 | 建议 3 个,全部拒绝后跨模式降级 | 待确认 |
| Q4 | C7 保险赔付预警阈值(80%)是否可配置 | 建议运营后台可配置(默认 80%) | 待确认 |
| Q5 | OL 人工调整是否需要二级审批 | 建议覆盖派单/紧急补单一审(OL主管);跨模式调度需 BO/TL 授权 | 待确认 |
| Q6 | M2 独立司机启用条件(30天利用率 ≥85%)阈值是否合理 | 待 TL 评估 | 待确认 |
十二、修订记录¶
| 版本 | 日期 | 修订人 | 修订内容 |
|---|---|---|---|
| V1.0 草案 | 2026-08-21 上午 | DT | 初稿(位于 docs/主数据服务/平台成熟期派单服务方案.md,457 行) |
| V1.0 | 2026-08-21 下午 | DT | 迁移升级为独立服务设计:① 文档迁移至 docs/派单服务/派单服务设计.md,编号升级为 DOC-P71-D DIS-D;② 引入 DDD 战略设计(§二 子域划分+限界上下文+上下文映射);③ 引入 DDD 战术设计(§五 聚合根/实体/值对象/领域服务/领域事件/仓储);④ 服务边界与职责表对齐 DDD 落地(§4.1);⑤ 业务逻辑保留原有三模式+M3合同+M1排班+C7保险+OL调整完整内容;⑥ 接口与数据流合并到§八;⑦ 新增§十一待 TL 决策的开放问题 |
| V1.1 | 2026-08-21 | DT | 安装师傅三分类升级(运输轴 × 安装轴 双轴三模式 3×3=9 组合矩阵)(承接用户指令:"派单服务还包括安装师傅,分为模式1/2/3"):① §6.1 原"三种物流供应商"升级为"双轴三模式并行架构 运输×安装";② §6.1.4 新增安装模式 1 M1_SELF(自营全职师傅 ×1.15 系数,拒单规则:月 2 黄牌谈话 / 连续 3 次 -20 分);③ §6.1.5 新增安装模式 2 M2_FREE(香港自雇 / 个体户注册师傅 ×1.00,抽佣 10-15% 等级化,拒单:连续 2 次 -25 分 + 30m 挂起 + 4m12s 培训视频);④ §6.1.6 新增安装模式 3 M3_SME(签约安装服务供应商小 B 企业派遣 ×0.95 企业结算,必绑 PPL-SME-ID,拒单:企业季度系数 -0.05 / 次年降 3%);⑤ §6.1.7 新增 9 组合矩阵表(运输 3 行 × 安装 3 列,1-1 全自营 1.32 / 3-3 全合同 0.76 默认成熟期)+ 加权公式:综合总分 = 运输分 × 0.55 + 安装分 × 0.45 + CPT L5 小众品类 / MFR 批量强制规则;⑥ WPL 特征库 V1.2 REGISTER_TYPE Enum 三分类 + WPL-006b 签约企业 ID 字段联动;⑦ dispatch.html 扩展三列 M1/M2/M3 安装候选池卡片 + 今日派单记录安装类型 badge 列;⑧ 文档头 V1.0→V1.1 + 最近更新 2026-08-21 |
本文档为派单服务(DIS DOC-P71-D V1.1)的设计文档,独立于 DLV 物流商档案库,承接 CPT L5 派单触发,下发 LGP 司机端 + WKR 师傅端双端协同派单。原《平台成熟期派单服务方案》已迁移至本文档,主数据服务目录下原文件已删除。