浏览器版本低!无法浏览完整内容,建议升级或更换浏览器。

WebAPI文档全面上新

新增示例代码、在线运行等功能,帮助您实现快速接入,前往体验吧!

体验新版
服务介绍
服务文档
使用指南
常见问题
更新日志
智能调度多仓排单服务

智能调度多仓排单服务是一类Web API接口服务,提供多个仓库取送货场景下调度方案计算的功能。如需试用请至反馈平台申请开通试用权限,将在1-3个工作日内处理。

功能介绍
多仓排单服务

用户可通过该功能,生成多个仓库订单、车辆和路线的合理调度分配方案。
1.支持多仓排单计算
2.支持多仓排单结果查询
注:使用多仓排单服务前必须先创建路网。


接口功能介绍
多仓排单排线计算
 https://api.map.baidu.com/ros/v1/scheduler/multidepot?ak={您的AK}  //POST请求
请求参数
参数名称
参数类型 是否必须
参数说明
scenesType String 必须 算法需要使用的场景类型,场景维度包含网点规模及排单结果路线交叉程度。枚举:LARGE_SCALE_CLUSTER:大规模聚集性场景,SMALL_SCALE_CLUSTER:小规模聚集性场景,LARGE_SCALE_GENERAL:大规模通用场景,SMALL_SCALE_GENERAL:小规模通用场景。大规模场景要求网点数在600点以上,小规模场景网点数600点以下。聚集性为路线不交叉,但是成本不一定最低,通用性为路线可能交叉,但是成本最低
matrixId String 必须 路网矩阵ID,路网矩阵唯一标识码
lbsType String 必须 路网矩阵类型,枚举,一期仅提供 LEAST_TIME:时间优先
commitId String 非必须 路网矩阵版本ID
distanceType String 必须 距离计算方式,枚举。STRAIGHT:直线距离 TRAVEL:导航距离
depots List<MultiDepotExternalDepot> 必须 仓库信息列表,一期支持单仓

depotId String 必须 仓库ID,用户仓库自定义编码
depotTimeWindow ExternalTimeWindow 非必须 时间窗信息,时间约束条件,车最早出仓时间和最晚回仓时间。

startTime int 必须 起始时间,单位为分钟,取值范围大于0
endTime int 必须 结束时间,单位为分钟,取值范围大于1
vehicleModels List<ExternalVehicleModel> 必须 车辆型号信息

vehicleModelId String 必须 车辆型号ID,用户自定义
capacity ExternalCapacity 必须 车辆额定承载

weight double 非必须 装载重量,单位:千克
volume double 非必须 装载体积,单位:立方米
count double 非必须 装载数量,重量、体积、数量三个维度至少填写一个,车和货的维度保持一致
perDistanceUnitPrice double 必须 车辆每公里行驶成本,单位:元/公里
fixedCost double 非必须 车辆固定损耗成本,单位:元/天,默认值为0
waitingCost double 非必须 车辆等待成本,单位:元/分钟,默认值为0
averageVelocity double 非必须 平均车速,单位:千米/小时,取值范围必须在0到120之间,distanceType为STRAIGHT时,该参数必填且值不小于0
maxVelocity double 非必须 最大车速,单位:千米/小时,取值范围必须在0到120之间,最大车速不可小于平均速度
serviceJobs List<MultiDepotExternalServiceJob> 必须 网点信息列表





locationId String 必须 网点ID,用户自定义
parentId String 非必须 订单所属的父订单ID,用户自定义
depotId String 非必须 订单所属的仓库ID,多仓使用,单仓可以为空
serviceStayDuration double 非必须 网点停留时间,单位:分钟,默认值为0
demand ExternalCapacity 必须 网点待配送货物的量

weight double 非必须 装载重量,单位:千克
volume double 非必须 装载体积,单位:立方米
count double 非必须 装载数量,重量、体积、数量三个维度至少填写一个,车和货的维度保持一致
serviceTimeWindows List<ExternalTimeWindow> 非必须 网点时间窗列表

startTime int 必须 起始时间,单位为分钟,取值为[0-1439]
endTime int 必须 结束时间,单位为分钟,取值为[1-1440]
skills List<String> 非必须 仓库可存储的货物类型列表

price

double 非必须 价格。取值不可小于0

priority

int 非必须 订单优先级,取值范围必须为不小于1,不大于10
vehicleGroups List<MultiDepotExternalVehicleGroup> 必须 车辆信息列表

vehicleTypeId String 必须 车辆类型ID,枚举,目前支持GB01
vehicleModelId String 必须 车辆型号ID,用户自定义
depotId String 非必须 车辆所属仓库ID,用户仓库自定义编码
vehicleCount int 必须 该型号车数量,不小于0,0代表没有限制
minVisited int 非必须 车辆允许运送的最小订单数量,不小于0,0代表没有限制
maxVisited int 非必须 车辆允许运送的最大订单数量,不小于0,0代表没有限制
maxRunDistance int 非必须 车辆最大行驶距离,单位:米,不小于0,0代表没有限制
maxRunTime int 非必须 车辆最大行驶时间,单位:分钟,不小于0,0代表没有限制
serviceTimeWindow ExternalTimeWindow 必须 车辆可运输的时间窗

startTime int 必须 起始时间,单位为分钟,取值范围大于0
endTime int 必须 结束时间,单位为分钟,取值范围大于1
vehicleSkills List<String> 非必须 车辆可运输的货物类型列表
returnToDepot boolean 非必须 是否回仓,默认回仓

返回参数
参数名称 参数类型 参数说明
id string 排单排线计算任务ID
status string 任务执行状态RUNNING、ERROR
errorCode String 错误码
errorMessage String 错误信息,(数据格式不正确等)

请求示例
POST https://api.map.baidu.com/ros/v1/scheduler/multidepot?ak={您的AK} HTTP/1.1 

{
	"scenesType": "SMALL_SCALE_GENERAL",
	"matrixId": "550e8400e29b41d4a716446655440000",
	"lbsType": "LEAST_TIME",
	"commitId": "550e8400e29b41d4a716446655440000",
	"distanceType": "TRAVEL",
	"depots": [{
		"depotId": "550e8400e29b41d4a716446655440000",
		"depotTimeWindow": {
			"startTime": 0,
			"endTime": 1440
		}
	}],
	"vehicleModels": [{
			"vehicleModelId": "VEHICLE_MODEL_ID01",
			"capacity": {
				"count": 100.0
			},
			"perDistanceUnitPrice": 3.5,
			"fixedCost": 50.0
		},
		{
			"vehicleModelId": "VEHICLE_MODEL_ID02",
			"capacity": {
				"count": 200.0
			},
			"perDistanceUnitPrice": 5.5,
			"fixedCost": 80.0
		}
	],
	"serviceJobs": [{
			"locationId": "550e8400e29b41d4a716446655440000",
			"parentId": "550e8400e29b41d4a716446655440000",
			"depotId": "550e8400e29b41d4a716446655440000",
			"serviceStayDuration": 20.0,
			"demand": {
				"count": 30.0
			}
		},
		{
			"locationId": "550e8400e29b41d4a716446655440001",
			"parentId": "550e8400e29b41d4a716446655440001",
			"depotId": "550e8400e29b41d4a716446655440000",
			"serviceStayDuration": 10.0,
			"demand": {
				"count": 10.0
			}
		},
		{
			"locationId": "550e8400e29b41d4a716446655440002",
			"parentId": "550e8400e29b41d4a716446655440002",
			"depotId": "550e8400e29b41d4a716446655440000",
			"serviceStayDuration": 25.0,
			"demand": {
				"count": 80.0
			}
		}
	],
	"vehicleGroups": [{
			"vehicleTypeId": "GB01",
			"vehicleModelId": "VEHICLE_MODEL_ID01",
			"depotId":"550e8400e29b41d4a716446655440000",
			"vehicleCount": 0,
            "serviceTimeWindow": {"startTime":0.0,"endTime":1440.0}
		},
		{
			"vehicleTypeId": "GB01",
			"vehicleModelId": "VEHICLE_MODEL_ID02",
			"depotId":"550e8400e29b41d4a716446655440000",
			"vehicleCount": 10,
            "serviceTimeWindow": {"startTime":0.0,"endTime":1440.0}
		}
	],
	"parameters": [
		"algo.vrpObjective=minTime"

	]

}

返回示例
{
 "id" : "8b664a457cdd42ec871e8344368c5d79",
 "status": "RUNNING",
 "errorCode": "",
 "errorMessage": ""
}

多仓排单排线查询
https://api.map.baidu.com/ros/v3/scheduler/problem?ak={您的AK}&problemId={problemId} //GET请求
返回参数
参数名称
参数类型
说明
id String 排单排线计算任务ID
status String 任务执行状态:RUNNING、ERROR、FINISHED
errorCode String 错误码
errorMessage String 错误信息
solution Solution 排单排线结果方案

totalTravelDistance double 该方案车辆总行驶距离,单位:米
totalTravelTime double 该方案车辆总行驶时间,单位:分钟
routes List<Route> 车辆分配线路方案





id String 路线唯一标识符
vehicleModelId String 该路线使用的车辆型号ID
travelDistance double 该路线车辆行驶里程,单位:米
travelTime double 该路线车辆行驶时间,单位:分钟
startLocation StartLocation 车辆起始点信息

locationId String 仓点ID
coordinate Coordinate 起始点坐标

latitude double 坐标纬度
longitude double 坐标经度
address String 地址
departureTime double 出发时间,单位:分钟
roadPlans List<RoadPlan> 配送路线规划

serviceJobId String 网点ID
coordinate Coordinate 网点坐标

latitude
double
坐标纬度
longitude
double
坐标经度
address
String
地址
arrivalTime
double
到达网点时间,单位:分钟
departureTime
double
离开网点时间,单位:分钟
routeCoordinates List<Coordinate> 行驶路线坐标

latitude double 坐标纬度
longitude double 坐标经度
address
String
地址
routeMessage RouteMessage 路线信息说明

code String 路线信息码
message String 路线信息描述

服务状态码
返回码 定义 常见原因
200 返回成功 服务请求正常召回
400 请求失败 请求参数不合法,请按照返回提示修改参数
401 未鉴权 ak不合法或者账号未开通相应权限
403 禁止 未开通白名单,请前往反馈工单联系我们
503 服务不可用 服务异常,请前往反馈工单联系我们
500 内部服务错误 服务异常,请前往反馈工单联系我们

使用方法
编码说明

API请求中需要用到中文或一些特殊字符的参数,如query、region等,为了避免提交到后台乱码,需要对这几个参数值进行编码处理,转换成UTF-8字符的二字符十六进制值,凡是不在下表中的字符都需要进行编码。

字符集合 字符
URL非保留字
a b c d e f g h i j k l m n o p q r s t u v w x y z A B C D E F G H I J K L M N O P Q R S T U V W X Y Z 0 1 2 3 4 5 6 7 8 9 - _ . ~
URL保留字
 ! * ' ( ) ; : @ & = + $ , / ? % # [ ]

如果中文参数中使用URL保留字字符的字面意思,例如:region关键字取值为"?北京",检索关键字包含一个问号,此问号也必须进行编码。

附注:

javascript中一般采用encodeURIComponent函数对特殊字符进行编码。

Java中可以使用函数URLEncoder.encode对特殊字符进行编码。

C#中可以使用函数HttpUtility.UrlEncode对特殊字符进行编码。

php中可以使用函数urlencode对特殊字符进行编码。


服务常见问题
1、如何开通多仓排单API?

多仓排单API暂未提供免费配额,如需试用请至反馈平台申请开通试用权限,将在1-3个工作日内处理。


2020年2月25日

V1.0


产品上线
智能调度多仓排单服务上线

服务资源下载
百度地图城市名称-中心点经纬度(cityCenter)关系对照

您可以通过此文件获知百度地图的全国各城市中心点(cityCenter)经纬度


百度地图城市名称-城市代码(cityCode)关系对照

您可以通过此文件获知百度地图的全国各城市代码(cityCode)。 在使用百度地图API或SDK各种涉及citycode参数的服务时,您可参看此文件传入准确值,如JavaScript API的本地检索服务(根据cityCode获取本地检索结果)、Android SDK离线地图服务(根据cityCode,获取对应城市离线地图)等。
注意:cityCode为百度内部定义,已不再维护,请谨慎使用。


百度地图行政区划adcode映射表【更新至19年7月】

 逆地理编码服务使用的国家标准行政区划代码(adcode)映射表。持续更新。
注意:该映射表对应的是最新版行政区划,V2.0版本需要设置latest_admin=1,V3.0版本默认返回最新行政区划)

百度地图country_code映射表

 百度地图定义的country_code数字编码映射表,持续更新。


国际标准国家代码映射表

 ISO 3166-1国际标准国家映射码中,两位字母&三位字母映射表


百度地图POI行业分类(tag)

您可以通过此链接获知百度地图POI(兴趣点)的tag引导体系,辅助您检索POI。 如检索query为百度地图的tag“生活服务”,返回的检索结果即包含关键字为“生活服务”的POI、也包含tag为“生活服务”的POI,从而聚焦检索结果。


  • 文档根本没法用

  • 文档水平很差

  • 文档水平一般

  • 文档不错

  • 文档写的很好

如发现文档错误,或对此文档有更好的建议,请在下方反馈。问题咨询请前往反馈平台提交工单咨询。

提交反馈

拖动标注工具

添加矩形标注

添加箭头标注

完成

取消