搜索结果
← 返回上一个分类
一、文档说明与项目概述
1.1 文档用途
本文档基于成丰货运平台原型设计、PRD文档、业务流程知识库、以及设计过程中与产品经理的沟通记录,对平台的业务规则进行系统梳理和归纳。旨在为开发、测试、产品团队提供一份可查阅、可追溯的规则参考手册。
1.2 项目概况
🚚 货主端PC
发货、运单管理、设置
📱 货主端APP
订单管理、个人信息
🔄 经纪人端PC
接单、司机资源、收益
🚛 司机端APP
抢单、在途、收益
📋 司机小程序
抢单、查看运单
⚙️ 运营中台
订单监控、数据分析
1.3 已完成需求迭代
| # | 需求编号 | 需求名称 | 完成日期 |
|---|---|---|---|
| 1 | RR20260121091271 | 货主发单配置是否展示订单昵称给经纪人开关 | 2026-06-23 |
| 2 | RR20260528249835 | 货主端运单日志/运费明细展示司机装车预支明细 | 2026-06-30 |
| 3 | RR20260623274028 | 【客户成功专项】运输计划功能优化(进行中) | — |
二、平台基础规则
2.1 角色与权限
| 角色 | 说明 | 使用端 | 核心权限 |
|---|---|---|---|
| 货主 | 发布运输需求、管理运单、配置个性化设置 | 货主端PC / 货主端APP | 发货、查看运单、配置设置、审核预支、修改运输计划 |
| 经纪人 | 接单、分配运力、查看司机资源 | 经纪人端PC | 抢单、查看订单列表和详情(受昵称可见性约束)、管理司机 |
| 司机 | 抢单、在途运输、提交预支申请、提现 | 司机端APP / 小程序 | 抢单(受校验约束)、提交装车预支、查看运单、在线/离线切换 |
| 平台运营 | 监控平台整体数据、异常处理 | 运营中台PC | 查看KPI、订单列表、分布图表 |
2.2 订单类型
| 订单类型 | 说明 | 适用场景 |
|---|---|---|
| 平台单 | 货主通过平台发布运单,由平台分配或由经纪人/司机抢单 | 常规运输,需平台介入承运 |
| 定向单 | 货主指定特定经纪人/司机承运 | 已有合作关系,货主指名派单 |
定向单和平台单均适用订单昵称显示配置、运输计划校验规则。装车预支仅适用于平台单。
2.3 编号规则
编号规范
1
运单编号:以 YD 开头,后接日期+序号(如 YD20260624001)
2
订单编号:以 DD 开头,后接日期+序号(如 DD20260624001)
3
需求编号:以 RR 开头,后接日期+序号(如 RR20260528249835)
2.4 计费与定价模式
| 维度 | 规则说明 |
|---|---|
| 定价模式 | 一口价、限价、招投标三种模式 |
| 计费方式 | 按吨计费、按车计费 |
| 车辆来源 | 成丰派车、货主自派 |
| 承运方类型 | 平台承运、经纪人承运、司机直接承运 |
2.5 结算周期
1
结算时间:卸货完成后 48小时内 进行结算
2
结算主体:货主 → 司机(含运费、预支等)
三、发货业务规则
3.1 发货类型
发货流程规则
1
发货类型:货主端发货页面支持 Tab 切换选择「平台发货」或「自有车发货」
2
流程引导:发货页面顶部含 Step 1→2→3→4 流程引导步骤条
3
必填信息:发货地址、收货地址、车型选择、联系人信息、货物信息、运费信息
3.2 运输信息配置
承运方选择规则
1
承运方Tab切换:提供「平台」「经纪人」「司机」三个Tab切换选择承运方
2
平台Tab:选择平台承运,须展示警告提示「平台承运模式下,运单将由平台统一调度分配」
3
平台Tab表单分块:运费信息(6字段)、定价模式、收货信息、结算信息
4
布局规则:运费信息等表单按 3 字段/行 排列
3.3 更多配置
Step 3「更多配置」规则
1
配置开关项:货物无忧、在途监控、发收货单位、磅房、车辆库、现场费用 — 默认关闭
2
开关交互:滑动开关点击切换开/关状态
3
隐藏信息:支持下拉选择隐藏信息字段
4
备注:支持多行文本输入框填写备注信息
3.4 字段校验规则
订单车数上限
1
上限值:发布货源订单或修改货源订单时,订单车数最大为 10000 车
2
校验触发:用户输入的订单车数超过 10000 时,提示错误并禁止提交
四、运单管理规则
4.1 运单列表与筛选
运单列表规则
1
筛选器:支持 20+ 个筛选字段(包括状态、时间、线路、承运方等)
2
数据表格:运单数据包含 40+ 列维度信息,支持分页查看
3
详情查看:点击运单行可打开详情抽屉或进入详情页面
4.2 运单详情
运单详情 Tab 结构
1
Tab 5 个:运单信息、订单信息、运单日志、在途监控、车辆经停
2
运单信息 Tab:含费用明细卡片,展示司机运费、服务费、其他费用
3
装车预支展示:司机运费模块末尾新增装车预支和油气预支两个费用项(仅展示货主预支)
4.3 运单日志
运单日志规则
1
日志类型:时间线形式展示运单全生命周期节点,时间倒序排列
2
预支节点:当运单存在货主预支时,时间线中新增 6 个预支节点(见装车预支章节)
3
无预支时不展示:运单无预支时,日志中不展示任何预支相关节点
五、费用与结算规则
5.1 费用明细结构
费用明细分类规则
A
司机运费:
- 扣补前(原始运费)
- 亏吨扣款
- 其他扣款
- 固定扣款
- 装车预支(新增)
- 油气预支(新增)
- 扣补前(原始运费)
- 亏吨扣款
- 其他扣款
- 固定扣款
- 装车预支(新增)
- 油气预支(新增)
B
服务费:折扣前服务费、商务折扣
C
其他费用:平台服务费、经纪人派车费、运费溢价
装车预支和油气预支仅在有预支时显示,无预支时不展示。司机运费总额不变(预支为已付部分的明细展示,非额外费用)。
5.2 财务规则
含税金额计算公式 v1.0 · 2026-07-09
A
税率 = 9%:含税金额 = 不含税金额 × (1 + 税率)(乘法)
B
税率 ≠ 9%(大于或小于):含税金额 = 不含税金额 / (1 − 税率)(除法)
5.3 结算规则
1
结算触发:货主收货确认后触发结算流程
2
结算时效:卸货完成 48 小时内完成结算
3
预支扣除:存在货主预支时,结算金额 = 剩余运费(总运费 − 已预支金额),预支部分不再重复结算
4
自动额度退回:司机未使用预支时,货主收货确认后系统自动将额度退回
六、装车预支业务规则
6.1 预支类型与适用范围
| 预支类型 | 说明 | 适用范围 | 展示范围 |
|---|---|---|---|
| 装车预支(运费预支) | 货主向司机预付的现金金额 | 仅平台单运单 | 展示货主预支 |
| 油气预支 | 货主向司机预付的油气额度 | 仅平台单运单 | 展示货主预支 |
| 平台预支 | 由平台承担的预支款项 | 仅平台单运单 | 不向货主展示 |
⚠️ 重要说明:平台预支属于平台与司机之间的资金关系,货主端运单日志和费用明细均不展示平台预支相关信息。本期仅展示货主侧的装车预支和油气预支明细。
6.2 预支业务流程
公共流程
① 货主发货(平台单)
② 司机装货(提交装货信息后)
③ 冻结整车运费
④ 判断:是否装车预支?
分支一:否(平台预支)
① 平台冻结预支比例金额 / 预支油气额度
② 平台审核
③ 审核通过,平台将预支金额发放给司机 (到账的是用信额度,非现金)
④ 判断司机是否提现/加油?
是:司机提现/加油 → 扣款成功 → 货主收货确认 → 剩余部分转给司机
否:货主收货确认 → 自动额度退回 → 运费统一结算给司机
是:司机提现/加油 → 扣款成功 → 货主收货确认 → 剩余部分转给司机
否:货主收货确认 → 自动额度退回 → 运费统一结算给司机
分支二:是(货主预支)
① 货主预支运费(从已被冻结的整车运费中扣除)或油气
② 司机装车时申请装车预支
③ 货主审核 (通过 / 驳回)
④ 审核通过,预支金额部分支付司机
⑤ 判断司机是否提现?
是:司机提现 → 货主收货审核通过 → 剩余运费金额转至司机
否:货主收货审核通过 → 自动额度退回 → 运费统一结算给司机
是:司机提现 → 货主收货审核通过 → 剩余运费金额转至司机
否:货主收货审核通过 → 自动额度退回 → 运费统一结算给司机
6.3 关键规则
装车预支核心规则
1
关键 预支到账 ≠ 资金流转:审核通过后到账的是用信额度,只有司机提现或加油时才有实际资金流转
2
关键 不使用预支的退回:司机不提现/不加油时,货主收货确认后系统自动将额度退回
3
平台预支 vs 货主预支:选择"否"由平台预支并审核;选择"是"由货主预支并审核
4
冻结逻辑:司机装货提交装货信息后即冻结整车运费;货主预支从已冻结运费中扣除
6.4 展示规则(货主端)
运单日志 — 预支节点展示规则
1
共6个预支节点,时间倒序排列
| 节点名称 | 触发条件 | 样式 |
|---|---|---|
| 装车预支申请已提交 | 司机提交装车预支申请 | 绿色高亮/蓝色/灰色 |
| 装车预支申请已通过 | 货主审核通过 | 绿色高亮 |
| 预支费用已发放 | 预支费用发放 | 绿色高亮,展开显示运费预支金额、油气预支金额 |
| 装车预支运费已提现 | 司机提现运费预支 | 橙色高亮 |
| 装车预支油气已使用 | 司机使用油气额度 | 橙色高亮 |
| 剩余预支已退回 | 货主收货确认后,未使用预支自动退回 | 橙色高亮,展开显示退回金额 |
费用明细 — 预支字段展示规则
A
PC端:司机运费模块末尾新增「装车预支」和「油气预支」费用项
B
APP端:费用明细页司机运费明细区域新增,橙色字体 #E6A23C
C
无预支不显示:运单无预支时,费用明细中不展示装车预支和油气预支字段
七、订单昵称显示设置规则
订单昵称显示设置 — 完整规则(共9条)
1
默认状态:开关默认状态为"开启",即默认经纪人可见订单昵称
2
保存生效:开关状态仅在点击"保存配置"后才持久化生效;未保存直接离开则不保存
3
实时生效:配置保存后实时生效,对后续所有新创建和已有的订单均适用
4
PC端重置规则:点击"重置"仅恢复开关UI状态为默认值,不自动保存
5
APP端无重置:APP端无"重置"按钮,每次进入设置子页面展示当前已保存的配置状态
6
两端数据同步:PC端与APP端配置数据同步,任一端修改保存后对另一端同样生效
7
关闭时全隐藏:当开关为"关闭"状态时,经纪人在订单列表、订单详情等页面均不展示订单昵称字段
8
经纪人端新增字段:经纪人端订单列表/详情新增"订单昵称"展示字段
9
适用订单类型:定向单和平台单均适用此配置
7.1 交互规则
| 端 | 入口路径 | 操作 | 系统响应 |
|---|---|---|---|
| PC端 | 基础信息 → 个性化设置 → 订单昵称显示设置 | 点击开关 | 开关滑动动画切换,状态文字同步更新 |
| PC端 | 同上 | 点击"保存配置" | 保存开关状态,弹出吐司"配置已生效" |
| PC端 | 同上 | 点击"重置" | 开关恢复为默认开启,弹出吐司"已重置"(需再保存才生效) |
| APP端 | 我的 → 业务工具 → 个性化设置 → 订单昵称显示设置 | 点击开关 | 同PC端动画效果 |
| APP端 | 同上 | 点击"保存配置" | 保存成功 → 吐司"配置已生效" → 2秒后自动返回上一级 |
| APP端 | 同上 | 点击左上角返回 | 返回上一级,不保存修改 |
PC端切换Tab或离开页面时,若配置未保存,弹出确认提示"配置未保存,是否离开?"
八、运输计划业务规则
⚠️ 信息来源:本节业务规则由用户宁宁于2026-07-06与测试团队及前任产品经理沟通确认(规则10、规则11-13为同日补充,规则14为2026-07-22补充,规则15为2026-07-22补充),暂为当前已知信息,后续如有变化会更新。
⚠️ 注意:规则12、规则13已有计划中的优化变更(需求迭代 RR20260623274028,待上线),详见各规则卡片"修订版本"表 V2 行。
⚠️ 注意:规则12、规则13已有计划中的优化变更(需求迭代 RR20260623274028,待上线),详见各规则卡片"修订版本"表 V2 行。
1
已抢单的定义与计算
规则标题
运输计划业务规则 · 已抢单的定义与计算
业务规则内容
总的已抢单 = 总的运单数 + 总的未审核通过的报号运单数
每日已抢单 = 当日报号单数 + 当日已生成运单数
其中:
- 报号单数:司机抢单时,系统将司机当前的抢单需求(含司机、车辆信息)通知给平台,由平台进行审核。审核中的报号单数计入"已抢单"
- 已生成运单数:平台审核通过后生成的运单数
已抢单是运输计划层面的计数,表示该运输计划中有多少车已被司机抢单(含审核中和已通过)
注意 每日和总的是两个维度。总已抢单由各日已抢单累加得到,但总已抢单 ≠ 各日已抢单之和直接展示(因为总已抢单是服务端实时计算的聚合数)。
司机抢单时要求选择抢单日期,因此系统同时维护每日已抢单和总已抢单两个计数。
每日已抢单 = 当日报号单数 + 当日已生成运单数
其中:
- 报号单数:司机抢单时,系统将司机当前的抢单需求(含司机、车辆信息)通知给平台,由平台进行审核。审核中的报号单数计入"已抢单"
- 已生成运单数:平台审核通过后生成的运单数
已抢单是运输计划层面的计数,表示该运输计划中有多少车已被司机抢单(含审核中和已通过)
注意 每日和总的是两个维度。总已抢单由各日已抢单累加得到,但总已抢单 ≠ 各日已抢单之和直接展示(因为总已抢单是服务端实时计算的聚合数)。
司机抢单时要求选择抢单日期,因此系统同时维护每日已抢单和总已抢单两个计数。
相关业务流程
司机抢单 → 系统创建报号单(占位) → 平台审核 → 审核通过生成运单 → 已抢单 = 报号单数 + 已生成运单数
修订版本
| 版本 | 修订日期 | 修订内容 |
|---|---|---|
| V1 | 2026-07-06 | 首次记录,来源:用户与测试团队、前任产品经理沟通确认 |
关联需求迭代
需求编号:RR20260623274028 · 运输计划功能优化PRD
2
司机报号机制
规则标题
运输计划业务规则 · 司机报号机制
业务规则内容
司机在抢单时,系统会将司机当前的抢单需求(包括司机、车辆信息)通知给平台,由平台进行审核。
审核通过后才生成运单。但在审核过程中,报号单在"已抢单"中占位。
注意 因为报号单占位机制防止司机超抢,但结果有可能 已抢单 > 已计划车数
审核通过后才生成运单。但在审核过程中,报号单在"已抢单"中占位。
注意 因为报号单占位机制防止司机超抢,但结果有可能 已抢单 > 已计划车数
相关业务流程
司机点击抢单 → 系统创建报号单(占位,已抢单+1) → 平台审核 → 通过:生成运单 / 不通过:报号单取消,已抢单-1
修订版本
| 版本 | 修订日期 | 修订内容 |
|---|---|---|
| V1 | 2026-07-06 | 首次记录,来源:用户与测试团队、前任产品经理沟通确认 |
关联需求迭代
需求编号:RR20260623274028 · 运输计划功能优化PRD
3
剩余车数未计划
规则标题
运输计划业务规则 · 剩余车数未计划
业务规则内容
设置修改区块中的"剩余XX车还未计划",其车数等于:
注意 这个"剩余还未计划"是订单层面的,与"剩余可抢单"含义不同
剩余还未计划车数 = 订单车数 − 已生成运单数注意 这个"剩余还未计划"是订单层面的,与"剩余可抢单"含义不同
相关业务流程
货主发货(设定订单车数) → 司机抢单生成运单 → 修改区块展示剩余 = 订单车数 − 已生成运单数
修订版本
| 版本 | 修订日期 | 修订内容 |
|---|---|---|
| V1 | 2026-07-06 | 首次记录,来源:用户与测试团队、前任产品经理沟通确认 |
关联需求迭代
需求编号:RR20260623274028 · 运输计划功能优化PRD
4
派车数量限制
规则标题
运输计划业务规则 · 派车数量限制
业务规则内容
修改计划时:
其中剩余还未计划车数 = 订单车数 − 已生成运单数(见规则3)
成丰派车数量 + 自己派车数量 ≤ 剩余还未计划车数其中剩余还未计划车数 = 订单车数 − 已生成运单数(见规则3)
相关业务流程
货主修改运输计划 → 选择成丰派车 + 自己派车 → 系统校验总派车数 ≤ 剩余还未计划车数 → 通过:保存 / 超额:拦截提示
修订版本
| 版本 | 修订日期 | 修订内容 |
|---|---|---|
| V1 | 2026-07-06 | 首次记录,来源:用户与测试团队、前任产品经理沟通确认 |
关联需求迭代
需求编号:RR20260623274028 · 运输计划功能优化PRD
5
已计划与已抢单关系
规则标题
运输计划业务规则 · 已计划与已抢单关系
业务规则内容
修改计划时:
按日期计划模式:
- 总的已计划 = 每日计划之和(货主每天设定一个计划车数,总数即为各日之和)
- 每日已计划 = 货主为该日设定的计划车数
每日不限量模式:
- 每日已计划:第一天 = 总量(订单车数),第二天 = 第一天的结余(订单车数 − 第一天已抢单数),以此类推
- 总的已计划 = 各日不限量额度之和(随抢单进度逐日增加)
通用约束:
- 已计划车数不得小于已抢单车数(
这意味着:当已抢单 > 0 时,已计划不能改为0或低于已抢单
按日期计划模式:
- 总的已计划 = 每日计划之和(货主每天设定一个计划车数,总数即为各日之和)
- 每日已计划 = 货主为该日设定的计划车数
每日不限量模式:
- 每日已计划:第一天 = 总量(订单车数),第二天 = 第一天的结余(订单车数 − 第一天已抢单数),以此类推
- 总的已计划 = 各日不限量额度之和(随抢单进度逐日增加)
通用约束:
- 已计划车数不得小于已抢单车数(
已计划 ≥ 已抢单)这意味着:当已抢单 > 0 时,已计划不能改为0或低于已抢单
相关业务流程
货主修改每日计划车数 → 系统汇总每日之和作为"已计划" → 校验已计划 ≥ 已抢单 → 通过:保存 / 不通过:拦截提示
修订版本
| 版本 | 修订日期 | 修订内容 |
|---|---|---|
| V1 | 2026-07-06 | 首次记录,来源:用户与测试团队、前任产品经理沟通确认 |
关联需求迭代
需求编号:RR20260623274028 · 运输计划功能优化PRD
6
车数数据含义
规则标题
运输计划业务规则 · 车数数据含义
业务规则内容
已计划、已抢单、剩余可抢单指的都是车数(而非运单数或其他维度)。
【每日维度】(按日期计划模式下适用):
司机抢单时要求选择抢单日期,系统按日维度进行校验。
【总维度(页面卡片展示)】:
页面中的"已计划"、"已抢单"、"剩余可抢单"三个卡片展示的是总的数据:
- 总的已计划 = 每日计划之和(按日期计划)/ 各日不限量额度之和(每日不限量)
- 总的已抢单 = 总的运单数 + 总的未审核通过的报号运单数
- 总的剩余可抢单 = 今日及未来各天的每日剩余可抢单之和
注意 总的剩余可抢单 ≠ 总已计划 − 总已抢单。
原因:过去日期的每日剩余可抢单在当日后系统视为 0(司机不能抢过期日期的单子),因此总的剩余可抢单只累加今天及未来日期的每日剩余。而总已计划 − 总已抢单 会把所有日期的计划都算进去(包括过期的),导致数值偏大。
示例:
货主计划:今天10车、明天10车、后天10车 → 总已计划 = 30车
今天司机抢单8车(剩余2车)→ 今日已抢单=8,今日剩余 = 10 − 8 = 2,但今天过去了则今日剩余=0(过期不可抢)
明天已计划=10车,后天已计划=10车
真实的总剩余可抢单 = 0(今日过期) + 10(明天) + 10(后天) = 20车
错误的计算:30(总已计划)− 8(总已抢单)= 22车(偏大)
【每日维度】(按日期计划模式下适用):
每日剩余可抢单 = 当日已计划 − 当日已抢单司机抢单时要求选择抢单日期,系统按日维度进行校验。
【总维度(页面卡片展示)】:
页面中的"已计划"、"已抢单"、"剩余可抢单"三个卡片展示的是总的数据:
- 总的已计划 = 每日计划之和(按日期计划)/ 各日不限量额度之和(每日不限量)
- 总的已抢单 = 总的运单数 + 总的未审核通过的报号运单数
- 总的剩余可抢单 = 今日及未来各天的每日剩余可抢单之和
注意 总的剩余可抢单 ≠ 总已计划 − 总已抢单。
原因:过去日期的每日剩余可抢单在当日后系统视为 0(司机不能抢过期日期的单子),因此总的剩余可抢单只累加今天及未来日期的每日剩余。而总已计划 − 总已抢单 会把所有日期的计划都算进去(包括过期的),导致数值偏大。
示例:
货主计划:今天10车、明天10车、后天10车 → 总已计划 = 30车
今天司机抢单8车(剩余2车)→ 今日已抢单=8,今日剩余 = 10 − 8 = 2,但今天过去了则今日剩余=0(过期不可抢)
明天已计划=10车,后天已计划=10车
真实的总剩余可抢单 = 0(今日过期) + 10(明天) + 10(后天) = 20车
错误的计算:30(总已计划)− 8(总已抢单)= 22车(偏大)
相关业务流程
适用于运输计划相关的所有页面展示和校验逻辑
修订版本
| 版本 | 修订日期 | 修订内容 |
|---|---|---|
| V1 | 2026-07-06 | 首次记录,来源:用户与测试团队、前任产品经理沟通确认 |
关联需求迭代
需求编号:RR20260623274028 · 运输计划功能优化PRD
7
运单状态计数
规则标题
运输计划业务规则 · 运单状态计数
业务规则内容
待装车、待卸货、待收货审核指的都是车数,但这3个数不受其他数据影响,仅表示当前运单状态对应的运单数量(车数)。
即:待装车数 = 当前处于"待装货"状态的运单数(车数),同理待卸货、待收货审核。
运单状态变化后,对应的计数会改变,但这些变化不影响已计划、已抢单、剩余可抢单的值
即:待装车数 = 当前处于"待装货"状态的运单数(车数),同理待卸货、待收货审核。
运单状态变化后,对应的计数会改变,但这些变化不影响已计划、已抢单、剩余可抢单的值
相关业务流程
运单状态流转:待装货 → 待卸货 → 待收货审核 → 已完成
每次状态变化后,对应的状态计数重新计算
每次状态变化后,对应的状态计数重新计算
修订版本
| 版本 | 修订日期 | 修订内容 |
|---|---|---|
| V1 | 2026-07-06 | 首次记录,来源:用户与测试团队、前任产品经理沟通确认 |
关联需求迭代
需求编号:RR20260623274028 · 运输计划功能优化PRD
8
按日期计划模式
规则标题
运输计划业务规则 · 按日期计划模式
业务规则内容
按日期计划是指:货主制定每日的运输计划,司机按这个车数抢单。
每日维度:
- 货主每天设定一个计划车数 → 构成每日已计划
- 司机抢单时需选择抢单日期 → 系统校验当日剩余可抢单 = 当日已计划 − 当日已抢单
- 当当日车数为0时,司机不可以抢当日的计划
- 过去日期的每日剩余可抢单 → 系统视为0(不可抢过期日子的单)
总维度:
- 总的已计划 = 各日计划之和
- 总的已抢单 = 总的运单数 + 总的未审核通过的报号运单数
- 总的剩余可抢单 = 今日及未来各天的每日剩余可抢单之和
司机可抢未来日期的单子(最远可抢2个月后),只要未来某日期的计划车数 > 0,司机就可以抢该日期的单。
每日维度:
- 货主每天设定一个计划车数 → 构成每日已计划
- 司机抢单时需选择抢单日期 → 系统校验当日剩余可抢单 = 当日已计划 − 当日已抢单
- 当当日车数为0时,司机不可以抢当日的计划
- 过去日期的每日剩余可抢单 → 系统视为0(不可抢过期日子的单)
总维度:
- 总的已计划 = 各日计划之和
- 总的已抢单 = 总的运单数 + 总的未审核通过的报号运单数
- 总的剩余可抢单 = 今日及未来各天的每日剩余可抢单之和
司机可抢未来日期的单子(最远可抢2个月后),只要未来某日期的计划车数 > 0,司机就可以抢该日期的单。
相关业务流程
货主按日期设定每日计划车数 → 司机查看计划 → 当日车数=0:不可抢当日 / 当日车数>0:可抢当日 → 未来日期同理
修订版本
| 版本 | 修订日期 | 修订内容 |
|---|---|---|
| V1 | 2026-07-06 | 首次记录,来源:用户与测试团队、前任产品经理沟通确认 |
关联需求迭代
需求编号:RR20260623274028 · 运输计划功能优化PRD
9
每日不限量模式
规则标题
运输计划业务规则 · 每日不限量模式
业务规则内容
每日不限量模式是指:没有"每日计划"的概念,司机可以随意抢单。
每日已计划的计算:
- 该模式下每日已计划不是由货主手动设定,而是由系统按结余自动计算
- 第一天已计划 = 总量(订单车数)
- 第二天已计划 = 第一天的结余 = 订单车数 − 第一天已抢单数
- 以此类推,每天的已计划 = 上一天的结余(即订单车数 − 累计已抢单数)
总维度:
- 总的已计划 = 各日不限量额度之和(随抢单进度逐日增加)
- 剩余可抢运单数 = 订单车数 − 已抢单车数(订单层面)
注意 在不限量模式下,"剩余可抢"是订单层面的,而非每日计划层面。因为不限量模式下不存在货主设定的"每日计划"。
每日已计划的计算:
- 该模式下每日已计划不是由货主手动设定,而是由系统按结余自动计算
- 第一天已计划 = 总量(订单车数)
- 第二天已计划 = 第一天的结余 = 订单车数 − 第一天已抢单数
- 以此类推,每天的已计划 = 上一天的结余(即订单车数 − 累计已抢单数)
总维度:
- 总的已计划 = 各日不限量额度之和(随抢单进度逐日增加)
- 剩余可抢运单数 = 订单车数 − 已抢单车数(订单层面)
注意 在不限量模式下,"剩余可抢"是订单层面的,而非每日计划层面。因为不限量模式下不存在货主设定的"每日计划"。
相关业务流程
货主选择"每日不限量" → 司机随时可抢单 → 已抢单持续增加 → 当 订单车数 − 已抢单车数 = 0 时,全部抢完,不可再抢
修订版本
| 版本 | 修订日期 | 修订内容 |
|---|---|---|
| V1 | 2026-07-06 | 首次记录,来源:用户与测试团队、前任产品经理沟通确认 |
关联需求迭代
需求编号:RR20260623274028 · 运输计划功能优化PRD
10
修改运输计划的入口
规则标题
运输计划业务规则 · 修改运输计划的入口
业务规则内容
除了货主端,成丰货运中台、成丰助手(内部CRM)也有修改运输计划的入口。
因此,运输计划相关的需求迭代需要其他业务线产品配合,确保各入口的校验逻辑和展示保持一致。
因此,运输计划相关的需求迭代需要其他业务线产品配合,确保各入口的校验逻辑和展示保持一致。
相关业务流程
货主端PC/APP、成丰货运中台、成丰助手(内部CRM)均提供修改运输计划入口 → 任一入口修改均影响同一个运输计划 → 需求迭代需同步各业务线产品
修订版本
| 版本 | 修订日期 | 修订内容 |
|---|---|---|
| V1 | 2026-07-06 | 首次记录 |
关联需求迭代
需求编号:RR20260623274028 · 运输计划功能优化PRD
11
已计划车数上限
规则标题
运输计划业务规则 · 已计划车数上限
业务规则内容
已计划车数不得大于订单车数(
创建和修改运输计划时均受此约束。已计划车数是货主当前已安排计划的部分,不能超过货主发布货源时设定的订单总需求。
已计划 ≤ 订单车数)创建和修改运输计划时均受此约束。已计划车数是货主当前已安排计划的部分,不能超过货主发布货源时设定的订单总需求。
相关业务流程
货主创建/修改运输计划 → 系统校验 已计划 ≤ 订单车数 → 通过:保存 / 超额:拦截提示
修订版本
| 版本 | 修订日期 | 修订内容 |
|---|---|---|
| V1 | 2026-07-06 | 首次记录,来源:用户补充确认 |
关联需求迭代
需求编号:RR20260623274028 · 运输计划功能优化PRD
12
创建运输计划时已计划车数下限
规则标题
运输计划业务规则 · 创建运输计划时已计划车数下限
业务规则内容
创建运输计划时,已计划车数必须大于0(
已计划 > 0,即已计划=0 → 系统拦截,无法创建)。
相关业务流程
货主创建运输计划 → 系统校验 已计划 > 0 → 通过:保存成功 / 为0:拦截提示,无法创建
修订版本
| 版本 | 修订日期 | 关联需求迭代 | 规则内容(本版本) | 变更说明 |
|---|---|---|---|---|
| V1 | 2026-07-06 | — | 创建运输计划时,已计划车数必须大于0(已计划=0→拦截,无法创建) | 现有规则,首次记录 |
| V2 | 待上线 | RR20260623274028 | 创建运输计划时,已计划车数可以为0 | 优化点1:放开为0限制。①已计划=0时不影响订单状态,货主可正常发货,发货成功后正常进入后续流程;②已计划=0时司机端货源大厅不可见,后续将已计划调整为>0后司机才能抢单 |
关联需求迭代
需求编号:RR20260623274028(优化点1)· 运输计划功能优化PRD
13
修改运输计划时剩余可抢单下限
规则标题
运输计划业务规则 · 修改运输计划时剩余可抢单下限
业务规则内容
修改运输计划时,剩余可抢单数量必须大于0(
其中
剩余可抢单 > 0,即剩余可抢单=0 → 系统拦截,无法保存)。其中
剩余可抢单 = 已计划 − 已抢单,即当已计划=已抢单时,剩余可抢单=0,系统拦截保存。
相关业务流程
货主修改运输计划 → 系统校验 剩余可抢单 > 0 → 通过:保存成功 / 为0:拦截提示,无法保存
修订版本
| 版本 | 修订日期 | 关联需求迭代 | 规则内容(本版本) | 变更说明 |
|---|---|---|---|---|
| V1 | 2026-07-06 | — | 修改运输计划时,剩余可抢单数量必须大于0(剩余可抢单=0→拦截,无法保存) | 现有规则,首次记录 |
| V2 | 待上线 | RR20260623274028 | 修改运输计划时,剩余可抢单数量可以为0 | 优化点2:放开为0限制。①已计划≥已抢单为基本约束,当已计划=已抢单时剩余可抢单=0,允许保存;②剩余可抢单=0时该订单在司机端不可见(但不改变订单状态),司机扫码抢单、再来一单均不可用;③已有运单正常执行 |
关联需求迭代
需求编号:RR20260623274028(优化点2)· 运输计划功能优化PRD
14
运输计划不影响订单状态
规则标题
运输计划业务规则 · 运输计划不影响订单状态
业务规则内容
运输计划中的数值变化(无论已计划车数是否为0,或剩余可抢单车数是否为0),只是运输计划层面的数值,不影响订单整体状态。
真正影响订单状态的是订单车数(总车数)和订单总吨数。
因此:
- 货主发单时已计划=0 → 不影响订单状态,货主可以正常发货,发货成功后正常进入后续流程
- 货主修改计划后剩余可抢单=0 → 不改变订单状态,仅影响司机端可见性和抢单能力(司机端不可见、扫码和再来一单均不可用)
真正影响订单状态的是订单车数(总车数)和订单总吨数。
因此:
- 货主发单时已计划=0 → 不影响订单状态,货主可以正常发货,发货成功后正常进入后续流程
- 货主修改计划后剩余可抢单=0 → 不改变订单状态,仅影响司机端可见性和抢单能力(司机端不可见、扫码和再来一单均不可用)
相关业务流程
运输计划数值变化(已计划=0 / 剩余可抢单=0) → 仅影响运输计划层面数值和司机端展示 → 不触发订单状态变更 → 订单状态由订单车数和订单总吨数驱动
修订版本
| 版本 | 修订日期 | 修订内容 |
|---|---|---|
| V1 | 2026-07-22 | 首次记录,来源:用户补充确认。明确运输计划数值变化与订单状态的边界关系 |
关联需求迭代
需求编号:RR20260623274028 · 运输计划功能优化PRD
15
司机端推送规则
规则标题
运输计划业务规则 · 司机端推送规则
业务规则内容
被动推送规则:
如果某订单3天内的剩余可抢单之和为0,系统不主动向司机推送该订单,即司机无法被动看到这个订单。
主动可见规则:
即使3天内剩余可抢单之和为0,司机仍可以通过以下方式主动找到该订单:
- 搜索:搜索订单关键词找到该订单
- 再来一单:对历史运单选择"再来一单"
- 扫码:通过二维码扫码等方式找到订单
找到后,司机可以正常抢有剩余车数日期的单子(按日级别判断是否有剩余可抢单)。
适用范围 仅限按日期计划模式。每日不限量模式下不存在每日计划,故不适用此规则。
如果某订单3天内的剩余可抢单之和为0,系统不主动向司机推送该订单,即司机无法被动看到这个订单。
主动可见规则:
即使3天内剩余可抢单之和为0,司机仍可以通过以下方式主动找到该订单:
- 搜索:搜索订单关键词找到该订单
- 再来一单:对历史运单选择"再来一单"
- 扫码:通过二维码扫码等方式找到订单
找到后,司机可以正常抢有剩余车数日期的单子(按日级别判断是否有剩余可抢单)。
适用范围 仅限按日期计划模式。每日不限量模式下不存在每日计划,故不适用此规则。
相关业务流程
每日剩余可抢单更新 → 系统计算3天之和 → 和为0时停止主动推送 → 司机可通过搜索/再来一单/扫码主动找到 → 找到后按日剩余可抢单判断是否可以抢单
修订版本
| 版本 | 修订日期 | 修订内容 |
|---|---|---|
| V1 | 2026-07-22 | 首次记录,来源:用户补充确认。明确司机端被动推送和主动可见的规则 |
关联需求迭代
需求编号:RR20260623274028 · 运输计划功能优化PRD
九、页面交互与导航规则
9.1 APP端滚动设计规范
APP滚动规则
1
手机壳固定高度:设计稿使用 375x812px(iPhone X 比例),使用 flex 纵向布局
2
固定区域:状态栏、标题栏、底部导航栏使用
flex-shrink: 0 固定不动3
内容滚动区:内容区使用
flex: 1; overflow-y: auto 实现超出滚动4
滚动条隐藏:
scrollbar-width: none + ::-webkit-scrollbar { display: none }9.2 页面导航规则
导航与链接规则
1
内部页面跳转:原型中使用绝对路径:
href="file:///Users/liuningning/WorkBuddy/..."2
禁止 target="_blank":内部链接禁止使用
target="_blank",避免预览区无限开新标签3
禁止相对路径:内部页面链接禁止使用相对路径
4
外部链接可用 target="_blank":部署链接可以使用
target="_blank"5
返回按钮:子页面必须有「返回总入口」按钮,指向绝对路径
十、异常与边界处理规则
10.1 通用异常处理
| 异常场景 | 处理方式 |
|---|---|
| 网络异常(保存配置) | 弹出"网络异常,请重试"提示,开关状态保持当前修改值不丢失 |
| 重复点击"保存配置" | 按钮在请求期间禁用(防重复提交),完成后恢复 |
| 未保存直接离开页面 | 弹出确认提示"配置未保存,是否离开?" |
| 抢单时网络异常 | 提示"网络异常,请重试",不改变已抢单数 |
| 修改计划时网络异常 | 提示"网络异常,请重试",计划车数保持修改前值不变 |
10.2 并发场景处理
| 异常场景 | 处理方式 |
|---|---|
| 并发抢单导致超量 | 服务端通过锁机制保证原子性,超量请求返回失败 |
| 抢单过程中计划被修改 | 以服务端最新数据为准进行校验 |
| 多司机同时抢最后一车 | 锁机制确保只允许1人成功 |
10.3 边界场景处理
| 边界场景 | 处理方式 |
|---|---|
| 已抢单数超过已计划车数 | 报号占位机制可能导致此情况(见规则2),后续需优化 |
| 已抢单数为0时修改计划 | 已计划车数可以为0(本次优化点1),修改为任意正整数均可 |
| 修改计划时剩余可抢单为0 | 本次优化后允许保存(优化点2),司机端无法继续抢单但已有运单正常执行 |
| 运单无预支时查看日志 | 不展示任何预支相关节点 |
| 运单有预支但仅部分类型 | 费用明细中仅展示有预支的对应类型 |
| 货主从未配置过昵称设置 | 按默认值(开启)处理 |
10.4 数据一致性规则
1
PC与APP配置同步:订单昵称显示配置在PC端和APP端数据同步
2
服务端优先:抢单校验的服务端校验是最终防线,前端校验仅做体验优化
3
最新数据为准:抢单/修改计划等操作均以服务端最新数据为准