卡车和司机导入
通过该接口,可以将不同外部系统如ERP系统、WMS系统的司机和卡车数据进行批量的导入。
版本号 | 文档 | 说明 |
---|---|---|
0.1 | 当前版本文档 |
oTMS同时在生产环境和测试环境中提供Web Service接口,其中测试环境用于集成测试。两种环境下都需要由oTMS系统管理员分配API帐号密码后方可使用。
注意: 请合理地调用公共接口。如果发现存在异常调用或者对我们系统性能造成影响等情况,会对API账号的调用进行限制,甚至停用。
目前对该接口的调用限制为每个公司每秒最多10个请求
注意: 请合理地调用公共接口。如果发现存在异常调用或者对我们系统性能造成影响等情况,会对API账号的调用进行限制,甚至停用。
目前对该接口的调用限制为每个公司每秒最多10个请求
目前对该接口的调用限制为每个公司每秒最多10个请求
公共参数
环境 | HTTP请求方法 | HTTPS请求地址 | 请求主体MIME类型 | 响应主体MIME类型 |
---|---|---|---|---|
正式环境 | PUT | https://login.otms.cn/ws/truckAndDriverImport | application/xml | application/xml |
沙箱环境 | PUT | https://demo.otms.cn/ws/truckAndDriverImport | application/xml | application/xml |
请求参数
字段名 | 位置 | 是否必填 | 描述 | Schema |
---|---|---|---|---|
body | body | 是 | 卡车与司机导入请求 | TruckAndDriverImportRequest |
Authorization | header | Basic Authorization。如果不为空,则优先使用该值作身份认证。否则使用请求报文中的用户名与密码 | string |
响应参数
状态码 | 描述 | 响应模型 |
---|---|---|
200 | successful operation | TruckAndDriverImportResponse |
DriverImport
字段名 | 类型 | 是否必填 | 描述 | 示例 |
---|---|---|---|---|
sequence | integer (int32) | 是 | 序列数 | |
name | string | 是 | 司机姓名。若司机已在手机端app上注册,则导入系统的司机名会变为司机当时注册的姓名 | |
mobile | string | 是 | 司机的手机号。在oTMS系统中该项为司机的唯一标识符。当导入成功后,系统会立即向该手机号发送邀请。必须是合法的单个手机号。 | |
remarks | string | 否 | 备注 | |
trustedDriver | boolean | 否 | 该司机是否为信任司机。默认值为否。 | |
idCard | string | 否 | 司机身份证号码,可选。 | |
updateExists | boolean | 否 | 司机已存在时更新。默认值为否。 |
DriverImportResponse
字段名 | 类型 | 是否必填 | 描述 | 示例 |
---|---|---|---|---|
sequence | integer (int32) | 是 | 序列数 | |
importStatus | string | 是 | 司机导入的结果 | |
responseCodes | array[string] | 否 | 返回码列表。包含了导入结果的详细信息。 | |
name | string | 否 | 司机姓名。如果导入成功,且司机已在手机端app上注册,则该姓名为司机在注册时输入的姓名。否则会从请求中获取。 | |
mobile | string | 否 | 司机手机号,从请求中获取。 |
DriverTruckBindDto
字段名 | 类型 | 是否必填 | 描述 | 示例 |
---|---|---|---|---|
sequence | integer (int32) | 是 | 序列数 | |
truckPlate | string | 是 | 卡车车牌号。必须是合法的单个车牌号。在oTMS系统中车牌号是卡车的唯一标识符。 | |
driverMobile | string | 是 | 司机的手机号。在oTMS系统中该项为司机的唯一标识符。 |
TruckAndDriverImportRequest
字段名 | 类型 | 是否必填 | 描述 | 示例 |
---|---|---|---|---|
version | string | 是 | 请求的版本号。当前版本号为0.1 | |
login | string | 否 | 用户名。用于 API 调用者身份认证。如果请求头中的Authorization不为空,则该值会被忽略。 | |
password | string | 否 | 密码。用于 API 调用者身份认证。如果请求头中的Authorization不为空,则该值会被忽略。 | |
drivers | array[DriverImport] | 否 | 需导入的司机列表。单次导入的最大数量为100 | |
trucks | array[TruckImport] | 否 | 需导入的卡车列表。单次导入的最大数量为100 | |
connects | array[DriverTruckBindDto] | 否 | 需导入司机卡车绑定关系列表。单次导入的最大数量为100 |
TruckAndDriverImportResponse
字段名 | 类型 | 是否必填 | 描述 | 示例 |
---|---|---|---|---|
version | string | 是 | 响应版本号 | |
responseCode | string | 否 | 全局的反馈代码 | |
importedTrucks | integer (int32) | 是 | 成功导入的卡车数量 | |
importedDrivers | integer (int32) | 是 | 成功导入的司机数量 | |
bindDriverTrucks | integer (int32) | 是 | 成功绑定关系的数量 | |
truckDetails | array[TruckImportResponse] | 否 | 卡车导入结果的详细信息 | |
driverDetails | array[DriverImportResponse] | 否 | 司机导入结果的详细信息 | |
connects | array[DriverImportResponse] | 否 | 司机导入结果的详细信息 |
TruckImport
字段名 | 类型 | 是否必填 | 描述 | 示例 |
---|---|---|---|---|
sequence | integer (int32) | 是 | 序列数 | |
licensedFor | string | 是 | 该卡车的适用于的货物类型,可取下列值: 1 - 普通货物 2 - 温控货物 3 - 危险品 4 - 危险品和温控货物 |
|
truckType | string | 是 | 该卡车的类型,可取下列值: 0 - 敞篷车 1 - 厢式车 3 - 轿运车 |
|
truckLength | number | 否 | 车长。如果存在,必须从已经定义好的值中选择。如果车型不是轿运车则该项为必填项。 | |
truckCbmCapacity | number | 否 | 卡车装载(立方米)。如果存在,必须从已经定义好的值中选择,按车长对应装载(立方米)。 | |
truckMtCapacity | number | 否 | 卡车装载(吨)。如果存在,必须从已经定义好的值中选择,按车长对应装载(吨)。 | |
truckPlate | string | 是 | 卡车车牌号。必须是合法的单个车牌号。在oTMS系统中车牌号是卡车的唯一标识符。 | |
trailerPlate | string | 否 | 挂车车牌号。必须是合法的单个车牌号。 | |
remarks | string | 否 | 备注 |
TruckImportResponse
字段名 | 类型 | 是否必填 | 描述 | 示例 |
---|---|---|---|---|
sequence | integer (int32) | 是 | 序列数 | |
importStatus | string | 是 | 卡车导入的结果 | |
responseCodes | array[string] | 否 | 返回码列表。包含了导入结果的详细信息。 | |
truckPlate | string | 否 | 车牌号,从请求中获取。 |
请求示例
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<truckAndDriverImportRequest version="0.1" login="username" password="password">
<trucks>
<truck sequence="1">
<licensedFor>1</licensedFor>
<truckType>1</truckType>
<truckLength>8.0</truckLength>
<truckCbmCapacity>43</truckCbmCapacity>
<truckMtCapacity>10</truckMtCapacity>
<truckPlate>沪A99999</truckPlate>
<trailerPlate>沪B99999</trailerPlate>
<remarks>remarks</remarks>
</truck>
<truck sequence="2">
<licensedFor>1</licensedFor>
<truckType>3</truckType>
<truckMtCapacity>10</truckMtCapacity>
<truckPlate>沪C99999</truckPlate>
</truck>
</trucks>
<drivers>
<driver sequence="1">
<name>Mike</name>
<mobile>12345678912</mobile>
<remarks>remarks</remarks>
<trustedDriver>true</trustedDriver>
<idCard>312245199002015482</idCard>
</driver>
<driver sequence="2">
<name>George</name>
<mobile>98765431212</mobile>
</driver>
</drivers>
<connects>
<connect sequence="1">
<truckPlate>沪B99999</truckPlate>
<driverMobile>12345678912</driverMobile>
</connect>
<connect sequence="2">
<truckPlate>沪C99999</truckPlate>
<driverMobile>98765431212</driverMobile>
</connect>
</connects>
</truckAndDriverImportRequest>
响应示例
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<truckAndDriverImportResponse version="0.1">
<responseCode/>
<importedTrucks>0</importedTrucks>
<importedDrivers>0</importedDrivers>
<bindDriverTrucks>0</bindDriverTrucks>
<truckDetails>
<truck sequence="1">
<importStatus>FAILED</importStatus>
<responseCodes>
<responseCode>2002</responseCode>
</responseCodes>
<truckPlate>沪A99999</truckPlate>
</truck>
<truck sequence="2">
<importStatus>FAILED</importStatus>
<responseCodes>
<responseCode>2002</responseCode>
</responseCodes>
<truckPlate>沪C99999</truckPlate>
</truck>
</truckDetails>
<driverDetails>
<driver sequence="1">
<importStatus>FAILED</importStatus>
<responseCodes>
<responseCode>2002</responseCode>
</responseCodes>
<name>Mike</name>
<mobile>12345678912</mobile>
</driver>
<driver sequence="2">
<importStatus>FAILED</importStatus>
<responseCodes>
<responseCode>2002</responseCode>
</responseCodes>
<name>George</name>
<mobile>98765431212</mobile>
</driver>
</driverDetails>
<connects>
<connect sequence="2">
<importStatus>FAILED</importStatus>
<responseCodes>
<responseCode>2029</responseCode>
</responseCodes>
<mobile>98765431212</mobile>
</connect>
</connects>
</truckAndDriverImportResponse>
全局反馈代码
反馈代码 | 说明 |
0 | 客户验证失败。 |
1 | 不支持的请求版本。 |
单个请求反馈代码
反馈代码 | 说明 |
2001 | 请求数据未通过验证。 |
2002 | 需导入的数据已存在于系统中。 |
2010 | 卡车类型不能为2 (两者均可) 。 |
2015 | 车长未填。 |
2016 | 无法匹配到系统中预定义的卡车车长或卡车核载量。 |
2020 | 导入的司机名被改为了司机在手机端app上注册的姓名 (该返回码不会使导入失败) 。 |
2025 | 邀请司机失败。 |
2026 | 司机身份证号格式异常。 |
2027 | 未找到对应司机。 |
2028 | 未找到对应车辆。 |
2100 | 未列出的其他错误。 |