Commit 7b6f5519cb07146d2534752762c1677bde3acd6d
1 parent
7f03dbab
Exists in
master
fix: 修改订单接口文档
Showing
2 changed files
with
1111 additions
and
897 deletions
Show diff stats
| @@ -0,0 +1,1111 @@ | @@ -0,0 +1,1111 @@ | ||
| 1 | + | ||
| 2 | + | ||
| 3 | +### 则一订单对接API | ||
| 4 | + | ||
| 5 | +则一提供了不同规范的API,调用则一订单服务端API前,需了解开发前须知及调用流程。本文提供了调用则一订单服务端API示例,供开发者参考。 | ||
| 6 | + | ||
| 7 | +#### 白名单 | ||
| 8 | + | ||
| 9 | +则一服务端API接口访问有IP白名单限制,需要接口调用方提供调用API的服务器IP地址。 | ||
| 10 | + | ||
| 11 | +#### 数据加签 | ||
| 12 | + | ||
| 13 | +采用md5(32位小写)算法生成签名 | ||
| 14 | +appKey(则一提供) + appSecret(则一提供) + timestamp(当前时间戳毫秒) + nonce(6位随机码大小写字母数子组合) + data(请求数据) | ||
| 15 | + | ||
| 16 | +#### 数据加密 | ||
| 17 | + | ||
| 18 | +数据加密采用AES算法 | ||
| 19 | +加密模式: CBC | ||
| 20 | +填充方式:PKCS5Padding | ||
| 21 | +偏移量:iv(则一提供) | ||
| 22 | +加密内容:appKey(则一提供) + timestamp(当前时间戳毫秒) + nonce(6位随机码大小写字母数子组合) + data(加密数据) | ||
| 23 | +密钥: appSecret(则一提供) | ||
| 24 | +输出:base64 | ||
| 25 | +字符集:utf-8 | ||
| 26 | +注:无敏感数据则无需加密 | ||
| 27 | + | ||
| 28 | +#### 获取访问凭证 | ||
| 29 | + | ||
| 30 | +##### 概述 | ||
| 31 | + | ||
| 32 | +调用则一服务API时,都需要先获取对应权限类型的访问凭证accessToken。访问凭证(accessToken)是由则一权限系统颁发的,用来校验调用者的身份信息,确保调用者具有要执行的操作的权限。 | ||
| 33 | +**说明**: 在使用accessToken时,请注意: | ||
| 34 | + | ||
| 35 | +* accessToken的有效期默认为30天,有效期内重复获取会返回相同结果,过期后获取会返回新的accessToken。 | ||
| 36 | +* 开发者需要缓存accessToken,用于后续接口的调用。不能频繁调用获取accessToken接口,否则会受到频率拦截。 | ||
| 37 | +* 当调用业务API时,如果返回状态码为401,则说明accessToken不正确或已过期,这时需要重新获取accessToken后再调用对应的API。 | ||
| 38 | + | ||
| 39 | +##### 接口信息 | ||
| 40 | + | ||
| 41 | +###### 请求方式: | ||
| 42 | + | ||
| 43 | +post | ||
| 44 | + | ||
| 45 | +###### 请求地址: | ||
| 46 | + | ||
| 47 | +* 生产:https://gw.shjiuze.cn/auth-service-api/login/password | ||
| 48 | +* 测试:https://test.shjiuze.cn/auth-service-api/login/password | ||
| 49 | + | ||
| 50 | +###### Body参数 | ||
| 51 | + | ||
| 52 | +| 名称 | 类型 | 必填 | 示例值 | 描述 | | ||
| 53 | +| -------- | ------ | ---- | ----------- | ---------------- | | ||
| 54 | +| username | String | 是 | zhangsan | 用户名,则一提供 | | ||
| 55 | +| password | String | 是 | password123 | 密码,则一提供 | | ||
| 56 | + | ||
| 57 | +###### 返回参数 | ||
| 58 | + | ||
| 59 | +| 名称 | 类型 | 示例值 | 描述 | | ||
| 60 | +| ------------------------------ | ---------- | -------------------------------- | -------------------------------------------------- | | ||
| 61 | +| success | boolean | true | 成功标识: true 成功,false 失败 | | ||
| 62 | +| businessException | boolean | false | 业务异常标识: true 业务异常,false 正常 | | ||
| 63 | +| errorCode | String | 200 | 错误码: 200 业务异常,500 系统异常, 空表示无错误 | | ||
| 64 | +| message | String | 订单号不能为空 | 错误信息,无错误则返回空 | | ||
| 65 | +| result | ZYTokenDto | | accessToken结果数据 | | ||
| 66 | +| accessToken | String | 000626f15b4b41bba6fe56216a5d2f73 | accessToken | | ||
| 67 | +| expiresIn | Integer | 2060 | 有效期限单位秒,accessToken在2060秒后过期 | | ||
| 68 | +| tokenType | String | bearer | token类型 | | ||
| 69 | + | ||
| 70 | +##### 请求示例 | ||
| 71 | + | ||
| 72 | +###### Http方式 | ||
| 73 | + | ||
| 74 | +```http | ||
| 75 | +POST /auth-service-api/login/password HTTP/1.1 | ||
| 76 | +Host:test.shjiuze.cn | ||
| 77 | +Content-Type:application/json | ||
| 78 | + | ||
| 79 | +{ | ||
| 80 | + "username" : "zeyi", | ||
| 81 | + "password" : "test1111" | ||
| 82 | +} | ||
| 83 | +``` | ||
| 84 | + | ||
| 85 | +###### Java-sdk方式 [下载SDK](https://zeyi-tms-product.oss-cn-hangzhou.aliyuncs.com/file/jar/java-sdk/zy-java-sdk-1.0.0.jar) | ||
| 86 | + | ||
| 87 | +```java | ||
| 88 | +public class Sample { | ||
| 89 | + public static void main(String[] args_) { | ||
| 90 | + String appKey = "appkey"; | ||
| 91 | + String appSecret = "appSecret"; | ||
| 92 | + ZYClient zyClient = new ZYClient(appKey, appSecret); | ||
| 93 | + ZYTokenRequestDto zyTokenRequest = new ZYTokenRequestDto(); | ||
| 94 | + zyTokenRequest.setUsername("zeyi"); | ||
| 95 | + zyTokenRequest.setPassword("test1111"); | ||
| 96 | + String body = gson.toJson(zyTokenRequest); | ||
| 97 | + HttpResponseData httpResponseData = zyClient.doPost(Constants.TEST_HOST + Constants.TOKEN_PATH, body); | ||
| 98 | + if(httpResponseData == null) { | ||
| 99 | + throw new TokenException("则一Token请求失败,返回为空!"); | ||
| 100 | + } | ||
| 101 | + ZYResponse<ZYTokenDto> zyResponse = gson.fromJson(httpResponseData.getBody(), new TypeToken<ZYResponse<ZYTokenDto>>(){}.getType()); | ||
| 102 | + if(!Boolean.TRUE.equals(zyResponse.isSuccess())) { | ||
| 103 | + throw new TokenException("则一Token请求返回失败!" + zyResponse.getMessage()); | ||
| 104 | + } | ||
| 105 | + if(zyResponse.getResult() == null) { | ||
| 106 | + throw new TokenException("则一Token请求返回失败,返回结果为空!" + zyResponse.getMessage()); | ||
| 107 | + } | ||
| 108 | + if(StringUtils.isBlank(zyResponse.getResult().getAccessToken())) { | ||
| 109 | + throw new TokenException("则一Token请求返回数据异常,AccessToken为空!" + zyResponse.getMessage()); | ||
| 110 | + } | ||
| 111 | + // 结果 zyResponse.getResult(); | ||
| 112 | + } | ||
| 113 | +} | ||
| 114 | +``` | ||
| 115 | + | ||
| 116 | +##### 返回示例 | ||
| 117 | + | ||
| 118 | +```json | ||
| 119 | +{ | ||
| 120 | + "success": true, | ||
| 121 | + "businessException": false, | ||
| 122 | + "errorCode": null, | ||
| 123 | + "message": null, | ||
| 124 | + "result": { | ||
| 125 | + "accessToken": "64d7f367-609b-4f7d-a84d-a3d2a0b5ad85", | ||
| 126 | + "expiresIn": 602105, | ||
| 127 | + "tokenType": "bearer" | ||
| 128 | + } | ||
| 129 | +} | ||
| 130 | +``` | ||
| 131 | + | ||
| 132 | +#### 下单 | ||
| 133 | + | ||
| 134 | +##### 接口信息 | ||
| 135 | + | ||
| 136 | +###### 请求方式: | ||
| 137 | + | ||
| 138 | +post | ||
| 139 | + | ||
| 140 | +###### 请求地址: | ||
| 141 | + | ||
| 142 | +* 生产:https://gw.shjiuze.cn/oms-service-api/order/add | ||
| 143 | +* 测试:https://test.shjiuze.cn/oms-service-api/order/add | ||
| 144 | + | ||
| 145 | +###### Headers参数 | ||
| 146 | + | ||
| 147 | +| 名称 | 类型 | 必填 | 示例值 | 描述 | | ||
| 148 | +| ------------- | ------ | -------------------------- | -------------------------------- | ------------------------------------------------------------ | | ||
| 149 | +| Authorization | String | 是 | Bearer a2c5680001 | 调用服务端API的应用凭证accessToken,通过调用获取访问凭证接口获取。 | | ||
| 150 | +| appKey | String | 是 | 0867ef5f23ef6483749e19e1692b | 则一提供 | | ||
| 151 | +| timestamp | String | 是 | 1643251533306 | 当前时间戳毫秒值 | | ||
| 152 | +| nonce | String | 是 | gdst9t | 6位小写字母数字组合随机串 | | ||
| 153 | +| sign | String | 是 | fa3ed338d6dfe18e7273c8692234ee70 | 签名:appKey(则一提供) + appSecret(则一提供) + timestamp + nonce(6位随机码) + data(body参数)通过md5(32位小写)算法生成 | | ||
| 154 | + | ||
| 155 | +###### Body参数 | ||
| 156 | + | ||
| 157 | +| 名称 | 类型 | 必填 | 示例值 | 描述 | | ||
| 158 | +| ------------------------------------- | -------------------- | -------------------------- | ---------------- | ------------------------------------------------------------ | | ||
| 159 | +| customerOrderCode | String | 是 | 220101000001 | 客户订单号,订单唯一标识 | | ||
| 160 | +| customerSn | String | 否 | 220101000001 | 客户委托单号 | | ||
| 161 | +| placeOrderTime | Number | 是 | 1643251533306 | 下单时间,时间戳毫秒值 | | ||
| 162 | +| loadTime | Number | 是 | 1643251533306 | 装货时间,时间戳毫秒值 | | ||
| 163 | +| expectArrivalTime | Number | 否 | 1643251533306 | 期望送达时间,时间戳毫秒值 | | ||
| 164 | +| receiptType | String | 否 | ELECTRON_TYPE | 回单类型:ELECTRON_TYPE/电子回单,PAPER_TYPE/纸质回单,NONE/无 | | ||
| 165 | +| receiptNumber | Number | 否 | 1 | 回单张数 | | ||
| 166 | +| receiptCode | String | 否 | A2022012602278 | 回单号 | | ||
| 167 | +| payType | String | 否 | PAY_IN_CASH | 付款方式:PAY_IN_CASH/现付,PAY_ON_DELIVERY/到付,PAY_ARREARS/欠付,PAY_MONTH/月结,PAY_BACK/回付,PAY_MULTIPLE/多笔付,PAY_FREE/免费 | | ||
| 168 | +| lineName | String | 否 | 上海-天津-北京 | 线路名称 | | ||
| 169 | +| remark | String | 否 | 需要雨布和尾板 | 订单备注 | | ||
| 170 | +| station | OrderStation[] | 是 | | 订单经停点 | | ||
| 171 | +| stationId | String | 否 | 123abc | 站点id | | ||
| 172 | +| stationName | String | 否 | 上海顺丰青浦站点 | 站点名称 | | ||
| 173 | +| provinceCode | String | 否 | 310000 | 省份编号 | | ||
| 174 | +| provinceName | String | 是 | 上海 | 省份名称 | | ||
| 175 | +| cityCode | String | 否 | 310100 | 城市编号 | | ||
| 176 | +| cityName | String | 是 | 上海市 | 城市名称 | | ||
| 177 | +| areaCode | String | 否 | 310118 | 区域编号 | | ||
| 178 | +| areaName | String | 是 | 青浦区 | 区域名称 | | ||
| 179 | +| address | String | 是 | 纪鹤公路1988号 | 详细地址 | | ||
| 180 | +| lat | String | 是 | 36.221825 | 纬度 | | ||
| 181 | +| lng | String | 是 | 120.632908 | 经度 | | ||
| 182 | +| contactName | String | 否 | 张三 | 联系人 | | ||
| 183 | +| contactMobile | String | 否 | 18801000001 | 联系人电话 | | ||
| 184 | +| loadFlag | String | 是 | true | 装货标识 | | ||
| 185 | +| unloadFlag | String | 是 | false | 卸货标识 | | ||
| 186 | +| expectArrivalTime | Number | 否 | 1643251533306 | 预计到达时间,时间戳毫秒值 | | ||
| 187 | +| expectDepartTime | Number | 否 | 1643251533306 | 预计发车时间,时间戳毫秒值 | | ||
| 188 | +| sort | Number | 否 | 1 | 经停点顺序,如果不传则默认按数组顺序 | | ||
| 189 | +| goods | OrderGoods[] | 否 | | 订单货物信息 | | ||
| 190 | +| barCode | String | 否 | 21616162626 | 商品条码 | | ||
| 191 | +| skuId | String | 否 | 1223233536436 | 商品sku_id | | ||
| 192 | +| name | String | 是 | 鞋子 | 货物名称 | | ||
| 193 | +| packageType | String | 否 | | 包装规格 | | ||
| 194 | +| piece | Number | 否 | 200 | 件数 | | ||
| 195 | +| weight | Number | 否 | 200000 | 重量 | | ||
| 196 | +| volume | Number | 否 | 50 | 体积 | | ||
| 197 | +| addService | OrderAddService[] | 否 | | 增值服务 | | ||
| 198 | +| serviceType | String | 否 | | 服务类型 | | ||
| 199 | +| serviceName | String | 是 | 包装服务 | 服务名称 | | ||
| 200 | +| serviceDemand | String | 否 | 纸箱包装 | 服务要求 | | ||
| 201 | +| tags | OrderTag[] | 否 | | 订单标签 | | ||
| 202 | +| tagName | String | 是 | 易碎物品 | 标签名称 | | ||
| 203 | +| vehicleDemands | OrderVehicleDemand[] | 否 | | 车辆需求 | | ||
| 204 | +| demandVanType | String | 是 | MOTOR_VAN | 需求厢型:MOTOR_VAN/厢车,GAOLAN_VAN/高栏,SLAB_VAN/平板,REFRIGERATOR_CAR/冷藏,IVECO/依维柯,JINBEI/金杯,MINI_VAN/小面包,ELSE_VAN/其他 | | ||
| 205 | +| demandSpecification | String | 是 | 9.6 | 需求车型:2.7/3.8/4.2/6.8/7.6/9.6/11/12.5/13.5/15/16.5/17.5/19/21 | | ||
| 206 | +| demandNumber | Number | 否 | 1 | 为空则默认1 | | ||
| 207 | +| vehicleDemand | String | 否 | 车辆需要带雨布 | 车辆要求描述 | | ||
| 208 | + | ||
| 209 | +##### 请求示例 | ||
| 210 | + | ||
| 211 | +###### Java-sdk方式 [下载SDK](https://zeyi-tms-product.oss-cn-hangzhou.aliyuncs.com/file/jar/java-sdk/zy-java-sdk-1.0.0.jar) | ||
| 212 | + | ||
| 213 | +```java | ||
| 214 | +public class Sample { | ||
| 215 | + public static void main(String[] args_) { | ||
| 216 | + String appKey = "appkey"; | ||
| 217 | + String appSecret = "appSecret"; | ||
| 218 | + String jsonData = "下单Body参数JSON数据"; | ||
| 219 | + ZYClient zyClient = new ZYClient(appKey, appSecret); | ||
| 220 | + HttpResponseData httpResponseData = | ||
| 221 | +zyClient.doPost(Constants.TEST_HOST + "/oms-service-api/order/add", "accessToken", jsonData); | ||
| 222 | + if(httpResponseData == null) { | ||
| 223 | + throw new BusinessException("则一请求失败,返回结果为空!"); | ||
| 224 | + } | ||
| 225 | + if(httpResponseData.getStatus() == HttpURLConnection.HTTP_UNAUTHORIZED) { | ||
| 226 | + //重新获取token再次请求 | ||
| 227 | + httpResponseData = zyClient.doPost(Constants.TEST_HOST + | ||
| 228 | + "/oms-service-api/order/add", "accessToken", jsonData); | ||
| 229 | + } | ||
| 230 | + } | ||
| 231 | +} | ||
| 232 | +``` | ||
| 233 | + | ||
| 234 | +##### 返回示例 | ||
| 235 | + | ||
| 236 | +```json | ||
| 237 | +{ | ||
| 238 | + "success": true, | ||
| 239 | + "businessException": false, | ||
| 240 | + "errorCode": null, | ||
| 241 | + "message": null, | ||
| 242 | + "result": { | ||
| 243 | + "code": "则一订单号", | ||
| 244 | + "customerOrderCode": "客户订单号" | ||
| 245 | + } | ||
| 246 | +} | ||
| 247 | +``` | ||
| 248 | + | ||
| 249 | +#### 确认中标 | ||
| 250 | + | ||
| 251 | +##### 接口信息 | ||
| 252 | + | ||
| 253 | +###### 请求方式: | ||
| 254 | + | ||
| 255 | +post | ||
| 256 | + | ||
| 257 | +###### 请求地址: | ||
| 258 | + | ||
| 259 | +* 生产:https://gw.shjiuze.cn/oms-service-api/order/confirmBid | ||
| 260 | +* 测试:https://test.shjiuze.cn/oms-service-api/order/confirmBid | ||
| 261 | + | ||
| 262 | +###### Headers参数 | ||
| 263 | + | ||
| 264 | +| 名称 | 类型 | 必填 | 示例值 | 描述 | | ||
| 265 | +| ------------- | ------ | -------------------------- | -------------------------------- | ------------------------------------------------------------ | | ||
| 266 | +| Authorization | String | 是 | Bearer a2c5680001 | 调用服务端API的应用凭证accessToken,通过调用获取访问凭证接口获取。 | | ||
| 267 | +| appKey | String | 是 | 0867ef5f23ef6483749e19e1692b | 则一提供 | | ||
| 268 | +| timestamp | String | 是 | 1643251533306 | 当前时间戳毫秒值 | | ||
| 269 | +| nonce | String | 是 | gdst9t | 6位小写字母数字组合随机串 | | ||
| 270 | +| sign | String | 是 | fa3ed338d6dfe18e7273c8692234ee70 | 签名:appKey(则一提供) + appSecret(则一提供) + timestamp + nonce(6位随机码) + data(body参数)通过md5(32位小写)算法生成 | | ||
| 271 | + | ||
| 272 | +###### Body参数 | ||
| 273 | + | ||
| 274 | +| 名称 | 类型 | 必填 | 示例值 | 描述 | | ||
| 275 | +| ----------------- | ------ | -------------------------- | ------------ | ------------------------ | | ||
| 276 | +| code | String | 是 | 220101000001 | 则一订单号 | | ||
| 277 | +| customerOrderCode | String | 是 | 220101000001 | 客户订单号,订单唯一标识 | | ||
| 278 | +| confirmId | String | 是 | 220101000001 | 中标报价id | | ||
| 279 | +| quotePrice | Number | 是 | 10000 | 中标价格 | | ||
| 280 | + | ||
| 281 | +##### 请求示例 | ||
| 282 | + | ||
| 283 | +###### Java-sdk方式 [下载SDK](https://zeyi-tms-product.oss-cn-hangzhou.aliyuncs.com/file/jar/java-sdk/zy-java-sdk-1.0.0.jar) | ||
| 284 | + | ||
| 285 | +```java | ||
| 286 | +public class Sample { | ||
| 287 | + public static void main(String[] args_) { | ||
| 288 | + String appKey = "appkey"; | ||
| 289 | + String appSecret = "appSecret"; | ||
| 290 | + String jsonData = "确认中标Body参数JSON数据"; | ||
| 291 | + ZYClient zyClient = new ZYClient(appKey, appSecret); | ||
| 292 | + HttpResponseData httpResponseData = | ||
| 293 | +zyClient.doPost(Constants.TEST_HOST + "/oms-service-api/order/confirmBid", "accessToken", jsonData); | ||
| 294 | + if(httpResponseData == null) { | ||
| 295 | + throw new BusinessException("则一请求失败,返回结果为空!"); | ||
| 296 | + } | ||
| 297 | + if(httpResponseData.getStatus() == HttpURLConnection.HTTP_UNAUTHORIZED) { | ||
| 298 | + //重新获取token再次请求 | ||
| 299 | + httpResponseData = zyClient.doPost(Constants.TEST_HOST + | ||
| 300 | + "/oms-service-api/order/confirmBid", "accessToken", jsonData); | ||
| 301 | + } | ||
| 302 | + } | ||
| 303 | +} | ||
| 304 | +``` | ||
| 305 | + | ||
| 306 | +##### 返回示例 | ||
| 307 | + | ||
| 308 | +```json | ||
| 309 | +{ | ||
| 310 | + "success": true, | ||
| 311 | + "businessException": false, | ||
| 312 | + "errorCode": null, | ||
| 313 | + "message": null, | ||
| 314 | + "result": { | ||
| 315 | + "code": "则一订单号", | ||
| 316 | + "customerOrderCode": "客户订单号", | ||
| 317 | + "confirmId": "中标报价id", | ||
| 318 | + "quotePrice": "中标价格" | ||
| 319 | + } | ||
| 320 | +} | ||
| 321 | +``` | ||
| 322 | + | ||
| 323 | +#### 确认运费接口 | ||
| 324 | + | ||
| 325 | +##### 接口信息 | ||
| 326 | + | ||
| 327 | +###### 概述 | ||
| 328 | + | ||
| 329 | +调用该接口确认最终运费信息。 | ||
| 330 | + | ||
| 331 | +###### 请求方式: | ||
| 332 | + | ||
| 333 | +post | ||
| 334 | + | ||
| 335 | +###### 请求地址: | ||
| 336 | + | ||
| 337 | +* 生产:https://gw.shjiuze.cn/oms-service-api/order/confirmFreight | ||
| 338 | +* 测试:https://test.shjiuze.cn/oms-service-api/order/confirmFreight | ||
| 339 | + | ||
| 340 | +###### Headers参数 | ||
| 341 | + | ||
| 342 | +| 名称 | 类型 | 必填 | 示例值 | 描述 | | ||
| 343 | +| ------------- | ------ | ---- | -------------------------------- | ------------------------------------------------------------ | | ||
| 344 | +| Authorization | String | 是 | Bearer a2c5680001 | 调用服务端API的应用凭证accessToken,通过调用获取访问凭证接口获取。 | | ||
| 345 | +| appKey | String | 是 | 0867ef5f23ef6483749e19e1692b | 则一提供 | | ||
| 346 | +| timestamp | String | 是 | 1643251533306 | 当前时间戳毫秒值 | | ||
| 347 | +| nonce | String | 是 | gdst9t | 6位小写字母数字组合随机串 | | ||
| 348 | +| sign | String | 是 | fa3ed338d6dfe18e7273c8692234ee70 | 签名:appKey(则一提供) + appSecret(则一提供) + timestamp + nonce(6位随机码) + data(body参数)通过md5(32位小写)算法生成 | | ||
| 349 | + | ||
| 350 | +###### Body参数 | ||
| 351 | + | ||
| 352 | +| 名称 | 类型 | 必填 | 示例值 | 描述 | | ||
| 353 | +| ----------------- | ------ | ---- | ------------ | ------------------------ | | ||
| 354 | +| code | String | 是 | 220101000001 | 则一订单号 | | ||
| 355 | +| customerOrderCode | String | 是 | 220101000001 | 客户订单号,订单唯一标识 | | ||
| 356 | +| totalBasePrice | Number | 是 | 10000 | 基础运费合计 | | ||
| 357 | +| totalExtraPrice | Number | 是 | 500 | 超里程运费合计 | | ||
| 358 | +| totalPrice | Number | 是 | 10500 | 运费总额 | | ||
| 359 | +| attachment | String | 否 | 图片url | 附件 | | ||
| 360 | +| freightList | Array | 是 | | 运费信息 | | ||
| 361 | +| waybillCode | String | 是 | Y20220101001 | 运单号 | | ||
| 362 | +| specification | String | 是 | 9.6 | 车型 | | ||
| 363 | +| vanType | String | 是 | MOTOR_VAN | 箱型 | | ||
| 364 | +| number | Number | 否 | 1 | 数量 | | ||
| 365 | +| volume | Number | 否 | 30.256 | 方数 | | ||
| 366 | +| weight | Number | 否 | 80 | 吨位 | | ||
| 367 | +| baseUnit | String | 是 | car/kg/m³ | 基础单位 | | ||
| 368 | +| baseUnitPrice | Number | 是 | 100 | 基础单价 | | ||
| 369 | +| basePrice | Number | 是 | 10000 | 基础运费 | | ||
| 370 | +| extraUnit | String | 否 | car/kg/m³ | 超里程单位 | | ||
| 371 | +| extraUnitPrice | Number | 否 | 100 | 超里程单价 | | ||
| 372 | +| extraPrice | Number | 否 | 1000 | 超里程运费 | | ||
| 373 | + | ||
| 374 | +##### 请求示例 | ||
| 375 | + | ||
| 376 | +###### Java-sdk方式 [下载SDK](https://zeyi-tms-product.oss-cn-hangzhou.aliyuncs.com/file/jar/java-sdk/zy-java-sdk-1.0.0.jar) | ||
| 377 | + | ||
| 378 | +```java | ||
| 379 | +public class Sample { | ||
| 380 | + public static void main(String[] args_) { | ||
| 381 | + String appKey = "appkey"; | ||
| 382 | + String appSecret = "appSecret"; | ||
| 383 | + String jsonData = "确认运费Body参数JSON数据"; | ||
| 384 | + ZYClient zyClient = new ZYClient(appKey, appSecret); | ||
| 385 | + HttpResponseData httpResponseData = | ||
| 386 | +zyClient.doPost(Constants.TEST_HOST + "/oms-service-api/order/confirmFreight", "accessToken", jsonData); | ||
| 387 | + if(httpResponseData == null) { | ||
| 388 | + throw new BusinessException("则一请求失败,返回结果为空!"); | ||
| 389 | + } | ||
| 390 | + if(httpResponseData.getStatus() == HttpURLConnection.HTTP_UNAUTHORIZED) { | ||
| 391 | + //重新获取token再次请求 | ||
| 392 | + httpResponseData = zyClient.doPost(Constants.TEST_HOST + | ||
| 393 | + "/oms-service-api/order/confirmFreight", "accessToken", jsonData); | ||
| 394 | + } | ||
| 395 | + } | ||
| 396 | +} | ||
| 397 | +``` | ||
| 398 | + | ||
| 399 | + | ||
| 400 | + | ||
| 401 | +##### 返回示例 | ||
| 402 | + | ||
| 403 | +```json | ||
| 404 | +{ | ||
| 405 | + "success": true, | ||
| 406 | + "businessException": false, | ||
| 407 | + "errorCode": null, | ||
| 408 | + "message": null, | ||
| 409 | + "result": { | ||
| 410 | + "code": "则一订单号", | ||
| 411 | + "customerOrderCode": "客户订单号" | ||
| 412 | + } | ||
| 413 | +} | ||
| 414 | +``` | ||
| 415 | + | ||
| 416 | + | ||
| 417 | + | ||
| 418 | +#### 取消订单 | ||
| 419 | + | ||
| 420 | +##### 接口信息 | ||
| 421 | + | ||
| 422 | +###### 请求方式: | ||
| 423 | + | ||
| 424 | +post | ||
| 425 | + | ||
| 426 | +###### 请求地址: | ||
| 427 | + | ||
| 428 | +* 生产:https://gw.shjiuze.cn/oms-service-api/order/cancel | ||
| 429 | +* 测试:https://test.shjiuze.cn/oms-service-api/order/cancel | ||
| 430 | + | ||
| 431 | +###### Headers参数 | ||
| 432 | + | ||
| 433 | +| 名称 | 类型 | 必填 | 示例值 | 描述 | | ||
| 434 | +| ------------- | ------ | -------------------------- | -------------------------------- | ------------------------------------------------------------ | | ||
| 435 | +| Authorization | String | 是 | Bearer a2c5680001 | 调用服务端API的应用凭证accessToken,通过调用获取访问凭证接口获取。 | | ||
| 436 | +| appKey | String | 是 | 0867ef5f23ef6483749e19e1692b | 则一提供 | | ||
| 437 | +| timestamp | String | 是 | 1643251533306 | 当前时间戳毫秒值 | | ||
| 438 | +| nonce | String | 是 | gdst9t | 6位小写字母数字组合随机串 | | ||
| 439 | +| sign | String | 是 | fa3ed338d6dfe18e7273c8692234ee70 | 签名:appKey(则一提供) + appSecret(则一提供) + timestamp + nonce(6位随机码) + data(body参数)通过md5(32位小写)算法生成 | | ||
| 440 | + | ||
| 441 | +###### Body参数 | ||
| 442 | + | ||
| 443 | +| 名称 | 类型 | 必填 | 示例值 | 描述 | | ||
| 444 | +| ----------------- | ------ | -------------------------- | ------------ | ------------------------ | | ||
| 445 | +| code | String | 是 | 220101000001 | 则一订单号 | | ||
| 446 | +| customerOrderCode | String | 是 | 220101000001 | 客户订单号,订单唯一标识 | | ||
| 447 | +| cancelRemark | String | 否 | 货量不足 | 取消原因 | | ||
| 448 | + | ||
| 449 | +##### 请求示例 | ||
| 450 | + | ||
| 451 | +###### Java-sdk方式 [下载SDK](https://zeyi-tms-product.oss-cn-hangzhou.aliyuncs.com/file/jar/java-sdk/zy-java-sdk-1.0.0.jar) | ||
| 452 | + | ||
| 453 | +```java | ||
| 454 | +public class Sample { | ||
| 455 | + public static void main(String[] args_) { | ||
| 456 | + String appKey = "appkey"; | ||
| 457 | + String appSecret = "appSecret"; | ||
| 458 | + String jsonData = "取消订单Body参数JSON数据"; | ||
| 459 | + ZYClient zyClient = new ZYClient(appKey, appSecret); | ||
| 460 | + HttpResponseData httpResponseData = | ||
| 461 | +zyClient.doPost(Constants.TEST_HOST + "/oms-service-api/order/cancel", "accessToken", jsonData); | ||
| 462 | + if(httpResponseData == null) { | ||
| 463 | + throw new BusinessException("则一请求失败,返回结果为空!"); | ||
| 464 | + } | ||
| 465 | + if(httpResponseData.getStatus() == HttpURLConnection.HTTP_UNAUTHORIZED) { | ||
| 466 | + //重新获取token再次请求 | ||
| 467 | + httpResponseData = zyClient.doPost(Constants.TEST_HOST + | ||
| 468 | + "/oms-service-api/order/cancel", "accessToken", jsonData); | ||
| 469 | + } | ||
| 470 | + } | ||
| 471 | +} | ||
| 472 | +``` | ||
| 473 | + | ||
| 474 | +##### 返回示例 | ||
| 475 | + | ||
| 476 | +```json | ||
| 477 | +{ | ||
| 478 | + "success": true, | ||
| 479 | + "businessException": false, | ||
| 480 | + "errorCode": null, | ||
| 481 | + "message": null, | ||
| 482 | + "result": { | ||
| 483 | + "code": "则一订单号", | ||
| 484 | + "customerOrderCode": "客户订单号" | ||
| 485 | + } | ||
| 486 | +} | ||
| 487 | +``` | ||
| 488 | + | ||
| 489 | +#### 查询车辆定位 | ||
| 490 | + | ||
| 491 | +##### 接口信息 | ||
| 492 | + | ||
| 493 | +###### 概述 | ||
| 494 | + | ||
| 495 | +可以通过该接口查询车辆当前位置,该接口为收费接口。 | ||
| 496 | + | ||
| 497 | +###### 请求方式: | ||
| 498 | + | ||
| 499 | +post | ||
| 500 | + | ||
| 501 | +###### 请求地址: | ||
| 502 | + | ||
| 503 | +* 生产:https://gw.shjiuze.cn/oms-service-api/vehicle/location | ||
| 504 | +* 测试:https://test.shjiuze.cn/oms-service-api/vehicle/location | ||
| 505 | + | ||
| 506 | +###### Headers参数 | ||
| 507 | + | ||
| 508 | +| 名称 | 类型 | 必填 | 示例值 | 描述 | | ||
| 509 | +| ------------- | ------ | -------------------------- | -------------------------------- | ------------------------------------------------------------ | | ||
| 510 | +| Authorization | String | 是 | Bearer a2c5680001 | 调用服务端API的应用凭证accessToken,通过调用获取访问凭证接口获取。 | | ||
| 511 | +| appKey | String | 是 | 0867ef5f23ef6483749e19e1692b | 则一提供 | | ||
| 512 | +| timestamp | String | 是 | 1643251533306 | 当前时间戳毫秒值 | | ||
| 513 | +| nonce | String | 是 | gdst9t | 6位小写字母数字组合随机串 | | ||
| 514 | +| sign | String | 是 | fa3ed338d6dfe18e7273c8692234ee70 | 签名:appKey(则一提供) + appSecret(则一提供) + timestamp + nonce(6位随机码) + data(body参数)通过md5(32位小写)算法生成 | | ||
| 515 | + | ||
| 516 | +###### Body参数 | ||
| 517 | + | ||
| 518 | +| 名称 | 类型 | 必填 | 示例值 | 描述 | | ||
| 519 | +| ----------------- | ------ | ---- | ------------- | ------------------------ | | ||
| 520 | +| code | String | 是 | D220101000001 | 则一订单号 | | ||
| 521 | +| waybillCode | String | 是 | Y220101000001 | 则一运单号 | | ||
| 522 | +| customerOrderCode | String | 是 | 220101000001 | 客户订单号,订单唯一标识 | | ||
| 523 | +| licenseNumber | String | 是 | 沪DP2312 | 车牌号 | | ||
| 524 | + | ||
| 525 | +##### 请求示例 | ||
| 526 | + | ||
| 527 | +###### Java-sdk方式 [下载SDK](https://zeyi-tms-product.oss-cn-hangzhou.aliyuncs.com/file/jar/java-sdk/zy-java-sdk-1.0.0.jar) | ||
| 528 | + | ||
| 529 | +```java | ||
| 530 | +public class Sample { | ||
| 531 | + public static void main(String[] args_) { | ||
| 532 | + String appKey = "appkey"; | ||
| 533 | + String appSecret = "appSecret"; | ||
| 534 | + String jsonData = "车辆位置查询Body参数JSON数据"; | ||
| 535 | + ZYClient zyClient = new ZYClient(appKey, appSecret); | ||
| 536 | + HttpResponseData httpResponseData = | ||
| 537 | +zyClient.doPost(Constants.TEST_HOST + "/oms-service-api/vehicle/location", "accessToken", jsonData); | ||
| 538 | + if(httpResponseData == null) { | ||
| 539 | + throw new BusinessException("则一请求失败,返回结果为空!"); | ||
| 540 | + } | ||
| 541 | + if(httpResponseData.getStatus() == HttpURLConnection.HTTP_UNAUTHORIZED) { | ||
| 542 | + //重新获取token再次请求 | ||
| 543 | + httpResponseData = zyClient.doPost(Constants.TEST_HOST + | ||
| 544 | + "/oms-service-api/vehicle/location", "accessToken", jsonData); | ||
| 545 | + } | ||
| 546 | + } | ||
| 547 | +} | ||
| 548 | +``` | ||
| 549 | + | ||
| 550 | +##### 返回示例 | ||
| 551 | + | ||
| 552 | +```json | ||
| 553 | +{ | ||
| 554 | + "success":true, | ||
| 555 | + "businessException":false, | ||
| 556 | + "result":{ | ||
| 557 | + "lng":"106.1722328011559", //经度 | ||
| 558 | + "lat":"37.94834927106783", //纬度 | ||
| 559 | + "speed":0, //速度,km/h | ||
| 560 | + "time":"2022-02-07 19:33:19", //定位时间 | ||
| 561 | + "address":"宁夏回族自治区吴忠市利通区清二沟,东方向,296.5米" //定位地点 | ||
| 562 | + } | ||
| 563 | +} | ||
| 564 | +``` | ||
| 565 | + | ||
| 566 | +#### 查询车辆历史轨迹 | ||
| 567 | + | ||
| 568 | +##### 接口信息 | ||
| 569 | + | ||
| 570 | +###### 概述 | ||
| 571 | + | ||
| 572 | +可以通过该接口查询车辆历史运行轨迹数据,该接口为收费接口。 | ||
| 573 | + | ||
| 574 | +###### 请求方式: | ||
| 575 | + | ||
| 576 | +post | ||
| 577 | + | ||
| 578 | +###### 请求地址: | ||
| 579 | + | ||
| 580 | +* 生产:https://gw.shjiuze.cn/oms-service-api/vehicle/track | ||
| 581 | +* 测试:https://test.shjiuze.cn/oms-service-api/vehicle/track | ||
| 582 | + | ||
| 583 | +###### Headers参数 | ||
| 584 | + | ||
| 585 | +| 名称 | 类型 | 必填 | 示例值 | 描述 | | ||
| 586 | +| ------------- | ------ | -------------------------- | -------------------------------- | ------------------------------------------------------------ | | ||
| 587 | +| Authorization | String | 是 | Bearer a2c5680001 | 调用服务端API的应用凭证accessToken,通过调用获取访问凭证接口获取。 | | ||
| 588 | +| appKey | String | 是 | 0867ef5f23ef6483749e19e1692b | 则一提供 | | ||
| 589 | +| timestamp | String | 是 | 1643251533306 | 当前时间戳毫秒值 | | ||
| 590 | +| nonce | String | 是 | gdst9t | 6位小写字母数字组合随机串 | | ||
| 591 | +| sign | String | 是 | fa3ed338d6dfe18e7273c8692234ee70 | 签名:appKey(则一提供) + appSecret(则一提供) + timestamp + nonce(6位随机码) + data(body参数)通过md5(32位小写)算法生成 | | ||
| 592 | + | ||
| 593 | +###### Body参数 | ||
| 594 | + | ||
| 595 | +| 名称 | 类型 | 必填 | 示例值 | 描述 | | ||
| 596 | +| ----------------- | ------ | ---- | ------------- | ------------------------ | | ||
| 597 | +| code | String | 是 | D220101000001 | 则一订单号 | | ||
| 598 | +| waybillCode | String | 是 | Y220101000001 | 则一运单号 | | ||
| 599 | +| customerOrderCode | String | 是 | 220101000001 | 客户订单号,订单唯一标识 | | ||
| 600 | +| licenseNumber | String | 是 | 沪DP2312 | 车牌号 | | ||
| 601 | +| startTime | Number | 是 | 1643251533306 | 开始时间 | | ||
| 602 | +| endTime | Number | 是 | 1643251533308 | 结束时间 | | ||
| 603 | + | ||
| 604 | +##### 请求示例 | ||
| 605 | + | ||
| 606 | +###### Java-sdk方式 [下载SDK](https://zeyi-tms-product.oss-cn-hangzhou.aliyuncs.com/file/jar/java-sdk/zy-java-sdk-1.0.0.jar) | ||
| 607 | + | ||
| 608 | +```java | ||
| 609 | +public class Sample { | ||
| 610 | + public static void main(String[] args_) { | ||
| 611 | + String appKey = "appkey"; | ||
| 612 | + String appSecret = "appSecret"; | ||
| 613 | + String jsonData = "车辆轨迹查询Body参数JSON数据"; | ||
| 614 | + ZYClient zyClient = new ZYClient(appKey, appSecret); | ||
| 615 | + HttpResponseData httpResponseData = | ||
| 616 | +zyClient.doPost(Constants.TEST_HOST + "/oms-service-api/vehicle/track", "accessToken", jsonData); | ||
| 617 | + if(httpResponseData == null) { | ||
| 618 | + throw new BusinessException("则一请求失败,返回结果为空!"); | ||
| 619 | + } | ||
| 620 | + if(httpResponseData.getStatus() == HttpURLConnection.HTTP_UNAUTHORIZED) { | ||
| 621 | + //重新获取token再次请求 | ||
| 622 | + httpResponseData = zyClient.doPost(Constants.TEST_HOST + | ||
| 623 | + "/oms-service-api/vehicle/track", "accessToken", jsonData); | ||
| 624 | + } | ||
| 625 | + } | ||
| 626 | +} | ||
| 627 | +``` | ||
| 628 | + | ||
| 629 | +##### 返回示例 | ||
| 630 | + | ||
| 631 | +```json | ||
| 632 | +{ | ||
| 633 | + "success":true, | ||
| 634 | + "businessException":false, | ||
| 635 | + "result":[ | ||
| 636 | + { | ||
| 637 | + "lon":"116.6709722499687", //经度 | ||
| 638 | + "lat":"39.64092201495669", //纬度 | ||
| 639 | + "gtm":"2022-02-07 18:55:13", //gps时间 | ||
| 640 | + "spd":"249", //速度 除以10为km/h | ||
| 641 | + "hgt":"4", //海拔m | ||
| 642 | + "agl":"257" //正北方向夹角 | ||
| 643 | + }, | ||
| 644 | + { | ||
| 645 | + "lon":"116.66919560752942", | ||
| 646 | + "lat":"39.64070361333219", | ||
| 647 | + "gtm":"2022-02-07 18:55:33", | ||
| 648 | + "spd":"272", | ||
| 649 | + "hgt":"6", | ||
| 650 | + "agl":"260" | ||
| 651 | + } | ||
| 652 | + ] | ||
| 653 | +} | ||
| 654 | +``` | ||
| 655 | + | ||
| 656 | + | ||
| 657 | + | ||
| 658 | +#### 查询订单操作记录 | ||
| 659 | + | ||
| 660 | +##### 接口信息 | ||
| 661 | + | ||
| 662 | +###### 概述 | ||
| 663 | + | ||
| 664 | +可以通过该接口查询订单的操作记录。 | ||
| 665 | + | ||
| 666 | +###### 请求方式: | ||
| 667 | + | ||
| 668 | +post | ||
| 669 | + | ||
| 670 | +###### 请求地址: | ||
| 671 | + | ||
| 672 | +* 生产:https://gw.shjiuze.cn/oms-service-api/order/getOperateList | ||
| 673 | +* 测试:https://test.shjiuze.cn/oms-service-api/order/getOperateList | ||
| 674 | + | ||
| 675 | +###### Headers参数 | ||
| 676 | + | ||
| 677 | +| 名称 | 类型 | 必填 | 示例值 | 描述 | | ||
| 678 | +| ------------- | ------ | -------------------------- | -------------------------------- | ------------------------------------------------------------ | | ||
| 679 | +| Authorization | String | 是 | Bearer a2c5680001 | 调用服务端API的应用凭证accessToken,通过调用获取访问凭证接口获取。 | | ||
| 680 | +| appKey | String | 是 | 0867ef5f23ef6483749e19e1692b | 则一提供 | | ||
| 681 | +| timestamp | String | 是 | 1643251533306 | 当前时间戳毫秒值 | | ||
| 682 | +| nonce | String | 是 | gdst9t | 6位小写字母数字组合随机串 | | ||
| 683 | +| sign | String | 是 | fa3ed338d6dfe18e7273c8692234ee70 | 签名:appKey(则一提供) + appSecret(则一提供) + timestamp + nonce(6位随机码) + data(body参数)通过md5(32位小写)算法生成 | | ||
| 684 | + | ||
| 685 | +###### Body参数 | ||
| 686 | + | ||
| 687 | +| 名称 | 类型 | 必填 | 示例值 | 描述 | | ||
| 688 | +| ----------------- | ------ | ---- | ------------ | ------------------------ | | ||
| 689 | +| code | String | 否 | 220101000001 | 则一订单号 | | ||
| 690 | +| customerOrderCode | String | 是 | 220101000001 | 客户订单号,订单唯一标识 | | ||
| 691 | + | ||
| 692 | +##### 请求示例 | ||
| 693 | + | ||
| 694 | +###### Java-sdk方式 [下载SDK](https://zeyi-tms-product.oss-cn-hangzhou.aliyuncs.com/file/jar/java-sdk/zy-java-sdk-1.0.0.jar) | ||
| 695 | + | ||
| 696 | +```java | ||
| 697 | +public class Sample { | ||
| 698 | + public static void main(String[] args_) { | ||
| 699 | + String appKey = "appkey"; | ||
| 700 | + String appSecret = "appSecret"; | ||
| 701 | + String jsonData = "车辆轨迹查询Body参数JSON数据"; | ||
| 702 | + ZYClient zyClient = new ZYClient(appKey, appSecret); | ||
| 703 | + HttpResponseData httpResponseData = | ||
| 704 | +zyClient.doPost(Constants.TEST_HOST + "/oms-service-api/orderOperateRecord/getList", "accessToken", jsonData); | ||
| 705 | + if(httpResponseData == null) { | ||
| 706 | + throw new BusinessException("则一请求失败,返回结果为空!"); | ||
| 707 | + } | ||
| 708 | + if(httpResponseData.getStatus() == HttpURLConnection.HTTP_UNAUTHORIZED) { | ||
| 709 | + //重新获取token再次请求 | ||
| 710 | + httpResponseData = zyClient.doPost(Constants.TEST_HOST + | ||
| 711 | + "/oms-service-api/orderOperateRecord/getList", "accessToken", jsonData); | ||
| 712 | + } | ||
| 713 | + } | ||
| 714 | +} | ||
| 715 | +``` | ||
| 716 | + | ||
| 717 | +##### 返回示例 | ||
| 718 | + | ||
| 719 | +```json | ||
| 720 | +{ | ||
| 721 | + "success": true, | ||
| 722 | + "businessException": false, | ||
| 723 | + "errorCode": null, | ||
| 724 | + "message": null, | ||
| 725 | + "result": [ | ||
| 726 | + { | ||
| 727 | + "orderCode": "220101000001", | ||
| 728 | + "operateType": "ORDER_XXX", | ||
| 729 | + "operateContent": "操作详情XXXX1", | ||
| 730 | + "operateTime": "2022-02-10 18:23:30", | ||
| 731 | + "operateUser": "张三" | ||
| 732 | + }, | ||
| 733 | + { | ||
| 734 | + "orderCode": "220101000001", | ||
| 735 | + "operateType": "ORDER_XXX", | ||
| 736 | + "operateContent": "操作详情XXXX2", | ||
| 737 | + "operateTime": "2022-02-08 12:43:30", | ||
| 738 | + "operateUser": "李四" | ||
| 739 | + } | ||
| 740 | + ] | ||
| 741 | +} | ||
| 742 | +``` | ||
| 743 | + | ||
| 744 | + | ||
| 745 | + | ||
| 746 | + | ||
| 747 | + | ||
| 748 | + | ||
| 749 | + | ||
| 750 | +### 以下接口需要对接方提供 | ||
| 751 | + | ||
| 752 | +#### 报价接口 | ||
| 753 | + | ||
| 754 | +##### 接口信息 | ||
| 755 | + | ||
| 756 | +###### 概述 | ||
| 757 | + | ||
| 758 | +则一调用该接口进行报价,可以进行多次报价。 | ||
| 759 | + | ||
| 760 | +###### 请求方式: | ||
| 761 | + | ||
| 762 | +post | ||
| 763 | + | ||
| 764 | +###### 请求路径: | ||
| 765 | + | ||
| 766 | +/quotePrice | ||
| 767 | + | ||
| 768 | +###### Body参数 | ||
| 769 | + | ||
| 770 | +| 名称 | 类型 | 必填 | 示例值 | 描述 | | ||
| 771 | +| ----------------- | ------ | -------------------------- | ------------- | ------------------------ | | ||
| 772 | +| code | String | 是 | 220101000001 | 则一订单号 | | ||
| 773 | +| customerOrderCode | String | 是 | 220101000001 | 客户订单号,订单唯一标识 | | ||
| 774 | +| quoteId | String | 是 | 1a2111bacd56 | 报价id,报价唯一标识 | | ||
| 775 | +| quotePrice | Number | 是 | 10000 | 报价金额 | | ||
| 776 | +| contactName | String | 否 | 张三 | 报价联系人 | | ||
| 777 | +| contactMobile | String | 否 | 18801000000 | 报价联系电话 | | ||
| 778 | +| quoteInvalidTime | Number | 否 | 1643251533306 | 报价有效期,时间戳毫秒值 | | ||
| 779 | +| operateTime | Number | 是 | 1643251533306 | 操作时间戳 | | ||
| 780 | + | ||
| 781 | +###### 返回示例 | ||
| 782 | + | ||
| 783 | +```json | ||
| 784 | +{ | ||
| 785 | + "success": true, | ||
| 786 | + "businessException": false, | ||
| 787 | + "errorCode": null, | ||
| 788 | + "message": null, | ||
| 789 | + "result": { | ||
| 790 | + "code": "则一订单号", | ||
| 791 | + "customerOrderCode": "客户订单号" | ||
| 792 | + } | ||
| 793 | +} | ||
| 794 | +``` | ||
| 795 | + | ||
| 796 | +#### 报价接口V2 | ||
| 797 | + | ||
| 798 | +##### 接口信息 | ||
| 799 | + | ||
| 800 | +###### 概述 | ||
| 801 | + | ||
| 802 | +则一调用该接口进行报价,可以进行多次报价。 | ||
| 803 | + | ||
| 804 | +###### 请求方式: | ||
| 805 | + | ||
| 806 | +post | ||
| 807 | + | ||
| 808 | +###### 请求路径: | ||
| 809 | + | ||
| 810 | +/quotePrice | ||
| 811 | + | ||
| 812 | +###### Body参数 | ||
| 813 | + | ||
| 814 | +| 名称 | 类型 | 必填 | 示例值 | 描述 | | ||
| 815 | +| ----------------- | ------ | ---- | ------------- | ------------------------ | | ||
| 816 | +| code | String | 是 | 220101000001 | 则一订单号 | | ||
| 817 | +| customerOrderCode | String | 是 | 220101000001 | 客户订单号,订单唯一标识 | | ||
| 818 | +| quoteId | String | 是 | 112242536364 | 报价id,报价唯一标识 | | ||
| 819 | +| quoteInvalidTime | Number | 否 | 1643251533306 | 报价有效期,时间戳毫秒值 | | ||
| 820 | +| contactName | String | 否 | 张三 | 报价联系人 | | ||
| 821 | +| contactMobile | String | 否 | 18801733668 | 报价联系人电话 | | ||
| 822 | +| operateTime | Number | 是 | 1643251533306 | 操作报价时间戳毫秒值 | | ||
| 823 | +| attachment | String | 否 | 图片url | 附件 | | ||
| 824 | +| freightList | Array | 是 | | 运费信息 | | ||
| 825 | +| waybillCode | String | 是 | Y20220101001 | 运单号(子单号) | | ||
| 826 | +| specification | String | 是 | 17.5 | 车型 | | ||
| 827 | +| vanType | String | 是 | MOTOR_VAN | 箱型 | | ||
| 828 | +| number | Number | 否 | 1 | 数量 | | ||
| 829 | +| volume | Number | 否 | 30.256 | 方数 | | ||
| 830 | +| weight | Number | 否 | 80 | 吨位 | | ||
| 831 | +| baseUnit | String | 是 | car/kg/m³ | 基础单位 | | ||
| 832 | +| baseUnitPrice | Number | 是 | 100 | 基础单价 | | ||
| 833 | +| basePrice | Number | 否 | 10000 | 基础运费 | | ||
| 834 | +| extraUnit | String | 否 | car/kg/m³ | 超里程单位 | | ||
| 835 | +| extraUnitPrice | Number | 否 | 100 | 超里程单价 | | ||
| 836 | + | ||
| 837 | +###### 返回示例 | ||
| 838 | + | ||
| 839 | +```json | ||
| 840 | +{ | ||
| 841 | + "success": true, | ||
| 842 | + "businessException": false, | ||
| 843 | + "errorCode": null, | ||
| 844 | + "message": null, | ||
| 845 | + "result": { | ||
| 846 | + "code": "则一订单号", | ||
| 847 | + "customerOrderCode": "客户订单号" | ||
| 848 | + } | ||
| 849 | +} | ||
| 850 | +``` | ||
| 851 | + | ||
| 852 | + | ||
| 853 | + | ||
| 854 | +#### 接单接口 | ||
| 855 | + | ||
| 856 | +##### 接口信息 | ||
| 857 | + | ||
| 858 | +###### 概述 | ||
| 859 | + | ||
| 860 | +则一调用该接口推送运单号及参考运费范围。 | ||
| 861 | + | ||
| 862 | +###### 请求方式: | ||
| 863 | + | ||
| 864 | +post | ||
| 865 | + | ||
| 866 | +###### 请求路径: | ||
| 867 | + | ||
| 868 | +/receiveOrder | ||
| 869 | + | ||
| 870 | +###### Body参数 | ||
| 871 | + | ||
| 872 | +| 名称 | 类型 | 必填 | 示例值 | 描述 | | ||
| 873 | +| -------------------------------- | --------- | -------------------------- | ------------- | ------------------------ | | ||
| 874 | +| code | String | 是 | 220101000001 | 则一订单号 | | ||
| 875 | +| customerOrderCode | String | 是 | 220101000001 | 客户订单号,订单唯一标识 | | ||
| 876 | +| startTotalPrice | Number | 是 | 18100 | 参考总金额起始值 | | ||
| 877 | +| endTotalPrice | Number | 是 | 21000 | 参考总金额结束值 | | ||
| 878 | +| WaybillList | Waybill[] | 是 | | 运单集合 | | ||
| 879 | +| waybillCode | String | 是 | Y220101000001 | 则一运单号 | | ||
| 880 | +| startPrice | Number | 是 | 18100 | 参考金额起始值 | | ||
| 881 | +| endPrice | Number | 是 | 21000 | 参考总金额结束值 | | ||
| 882 | +| vanType | String | 是 | MOTOR_VAN | 厢型 | | ||
| 883 | +| specification | String | 是 | 9.6 | 车型 | | ||
| 884 | + | ||
| 885 | +###### 返回示例 | ||
| 886 | + | ||
| 887 | +```json | ||
| 888 | +{ | ||
| 889 | + "success": true, | ||
| 890 | + "businessException": false, | ||
| 891 | + "errorCode": null, | ||
| 892 | + "message": null, | ||
| 893 | + "result": { | ||
| 894 | + "code": "则一订单号", | ||
| 895 | + "customerOrderCode": "客户订单号" | ||
| 896 | + } | ||
| 897 | +} | ||
| 898 | +``` | ||
| 899 | + | ||
| 900 | + | ||
| 901 | + | ||
| 902 | + | ||
| 903 | + | ||
| 904 | +#### 推送司机车辆信息 | ||
| 905 | + | ||
| 906 | +##### 接口信息 | ||
| 907 | + | ||
| 908 | +###### 概述 | ||
| 909 | + | ||
| 910 | +则一调用该接口推送订单司机和车辆信息,可以进行多次推送,以操作时间戳最新一次推送的司机车辆信息为准。 | ||
| 911 | + | ||
| 912 | +###### 请求方式: | ||
| 913 | + | ||
| 914 | +post | ||
| 915 | + | ||
| 916 | +###### 请求路径: | ||
| 917 | + | ||
| 918 | +/assignVehicle | ||
| 919 | + | ||
| 920 | +###### Body参数 | ||
| 921 | + | ||
| 922 | +| 名称 | 类型 | 必填 | 示例值 | 描述 | | ||
| 923 | +| -------------------- | ------ | -------------------------- | ------------- | ------------------------ | | ||
| 924 | +| code | String | 是 | 220101000001 | 则一订单号 | | ||
| 925 | +| waybillCode | String | 是 | Y220101000001 | 则一运单号 | | ||
| 926 | +| customerOrderCode | String | 是 | 220101000001 | 客户订单号,订单唯一标识 | | ||
| 927 | +| driverName | String | 是 | 张三 | 司机姓名 | | ||
| 928 | +| driverMobile | String | 是 | 18801000000 | 司机手机号 | | ||
| 929 | +| licenseNumber | String | 是 | 沪DP2312 | 车牌号 | | ||
| 930 | +| trailerLicenseNumber | String | 否 | 陕K7C72挂 | 挂车车牌号 | | ||
| 931 | +| operateTime | Number | 是 | 1643251533306 | 操作时间戳 | | ||
| 932 | +| weight | Number | 否 | 200000 | 重量 | | ||
| 933 | +| volume | Number | 否 | 16 | 体积 | | ||
| 934 | + | ||
| 935 | +###### 返回示例 | ||
| 936 | + | ||
| 937 | +```json | ||
| 938 | +{ | ||
| 939 | + "success": true, | ||
| 940 | + "businessException": false, | ||
| 941 | + "errorCode": null, | ||
| 942 | + "message": null, | ||
| 943 | + "result": { | ||
| 944 | + "code": "则一订单号", | ||
| 945 | + "customerOrderCode": "客户订单号" | ||
| 946 | + } | ||
| 947 | +} | ||
| 948 | +``` | ||
| 949 | + | ||
| 950 | + | ||
| 951 | + | ||
| 952 | +#### 推送发车信息 | ||
| 953 | + | ||
| 954 | +##### 接口信息 | ||
| 955 | + | ||
| 956 | +###### 概述 | ||
| 957 | + | ||
| 958 | +则一调用该接口推送发车运输数据。 | ||
| 959 | + | ||
| 960 | +###### 请求方式: | ||
| 961 | + | ||
| 962 | +post | ||
| 963 | + | ||
| 964 | +###### 请求路径: | ||
| 965 | + | ||
| 966 | +/departVehicle | ||
| 967 | + | ||
| 968 | +###### Body参数 | ||
| 969 | + | ||
| 970 | +| 名称 | 类型 | 必填 | 示例值 | 描述 | | ||
| 971 | +| ----------------- | ------ | -------------------------- | ------------- | ------------------------ | | ||
| 972 | +| code | String | 是 | 220101000001 | 则一订单号 | | ||
| 973 | +| waybillCode | String | 是 | Y220101000001 | 则一运单号 | | ||
| 974 | +| customerOrderCode | String | 是 | 220101000001 | 客户订单号,订单唯一标识 | | ||
| 975 | +| departTime | Number | 是 | 1643251533306 | 发车时间戳 | | ||
| 976 | +| operateTime | Number | 是 | 1643251533306 | 操作时间戳 | | ||
| 977 | +| weight | Number | 否 | 200000 | 重量 | | ||
| 978 | +| volume | Number | 否 | 16 | 体积 | | ||
| 979 | + | ||
| 980 | +###### 返回示例 | ||
| 981 | + | ||
| 982 | +```json | ||
| 983 | +{ | ||
| 984 | + "success": true, | ||
| 985 | + "businessException": false, | ||
| 986 | + "errorCode": null, | ||
| 987 | + "message": null, | ||
| 988 | + "result": { | ||
| 989 | + "code": "则一订单号", | ||
| 990 | + "customerOrderCode": "客户订单号" | ||
| 991 | + } | ||
| 992 | +} | ||
| 993 | +``` | ||
| 994 | + | ||
| 995 | +#### 推送到车信息 | ||
| 996 | + | ||
| 997 | +##### 接口信息 | ||
| 998 | + | ||
| 999 | +###### 概述 | ||
| 1000 | + | ||
| 1001 | +则一调用该接口推送到达数据。 | ||
| 1002 | + | ||
| 1003 | +###### 请求方式: | ||
| 1004 | + | ||
| 1005 | +post | ||
| 1006 | + | ||
| 1007 | +###### 请求路径: | ||
| 1008 | + | ||
| 1009 | +/arriveVehicle | ||
| 1010 | + | ||
| 1011 | +###### Body参数 | ||
| 1012 | + | ||
| 1013 | +| 名称 | 类型 | 必填 | 示例值 | 描述 | | ||
| 1014 | +| ----------------- | ------ | -------------------------- | ------------- | ------------------------ | | ||
| 1015 | +| code | String | 是 | 220101000001 | 则一订单号 | | ||
| 1016 | +| waybillCode | String | 是 | Y220101000001 | 则一运单号 | | ||
| 1017 | +| customerOrderCode | String | 是 | 220101000001 | 客户订单号,订单唯一标识 | | ||
| 1018 | +| arriveTime | Number | 是 | 1643251533306 | 到车时间戳 | | ||
| 1019 | +| operateTime | Number | 是 | 1643251533306 | 操作时间戳 | | ||
| 1020 | + | ||
| 1021 | +###### 返回示例 | ||
| 1022 | + | ||
| 1023 | +```json | ||
| 1024 | +{ | ||
| 1025 | + "success": true, | ||
| 1026 | + "businessException": false, | ||
| 1027 | + "errorCode": null, | ||
| 1028 | + "message": null, | ||
| 1029 | + "result": { | ||
| 1030 | + "code": "则一订单号", | ||
| 1031 | + "customerOrderCode": "客户订单号" | ||
| 1032 | + } | ||
| 1033 | +} | ||
| 1034 | +``` | ||
| 1035 | + | ||
| 1036 | +#### 推送运费信息 | ||
| 1037 | + | ||
| 1038 | +##### 接口信息 | ||
| 1039 | + | ||
| 1040 | +###### 概述 | ||
| 1041 | + | ||
| 1042 | +则一调用该接口推送最终运费信息。 | ||
| 1043 | + | ||
| 1044 | +###### 请求方式: | ||
| 1045 | + | ||
| 1046 | +post | ||
| 1047 | + | ||
| 1048 | +###### 请求路径: | ||
| 1049 | + | ||
| 1050 | +/receiveFreight | ||
| 1051 | + | ||
| 1052 | +###### Body参数 | ||
| 1053 | + | ||
| 1054 | +| 名称 | 类型 | 必填 | 示例值 | 描述 | | ||
| 1055 | +| -------------------------------------- | ------ | ---- | ------------ | ------------------------ | | ||
| 1056 | +| code | String | 是 | 220101000001 | 则一订单号 | | ||
| 1057 | +| customerOrderCode | String | 是 | 220101000001 | 客户订单号,订单唯一标识 | | ||
| 1058 | +| totalBasePrice | Number | 是 | 10000 | 基础运费合计 | | ||
| 1059 | +| totalExtraPrice | Number | 是 | 500 | 超里程运费合计 | | ||
| 1060 | +| totalPrice | Number | 是 | 10500 | 运费总额 | | ||
| 1061 | +| attachment | String | 否 | 图片url | 附件 | | ||
| 1062 | +| freightList | Array | 是 | | 运费信息 | | ||
| 1063 | +| waybillCode | String | 是 | Y20220101001 | 运单号 | | ||
| 1064 | +| specification | String | 是 | 9.6 | 车型 | | ||
| 1065 | +| vanType | String | 是 | MOTOR_VAN | 箱型 | | ||
| 1066 | +| number | Number | 否 | 1 | 数量 | | ||
| 1067 | +| volume | Number | 否 | 30.256 | 方数 | | ||
| 1068 | +| weight | Number | 否 | 80 | 吨位 | | ||
| 1069 | +| baseUnit | String | 是 | car/kg/m³ | 基础单位 | | ||
| 1070 | +| baseUnitPrice | Number | 是 | 100 | 基础单价 | | ||
| 1071 | +| basePrice | Number | 是 | 10000 | 基础运费 | | ||
| 1072 | +| extraUnit | String | 否 | car/kg/m³ | 超里程单位 | | ||
| 1073 | +| extraUnitPrice | Number | 否 | 100 | 超里程单价 | | ||
| 1074 | +| extraPrice | Number | 否 | 1000 | 超里程运费 | | ||
| 1075 | + | ||
| 1076 | +###### 返回示例 | ||
| 1077 | + | ||
| 1078 | +```json | ||
| 1079 | +{ | ||
| 1080 | + "success": true, | ||
| 1081 | + "businessException": false, | ||
| 1082 | + "errorCode": null, | ||
| 1083 | + "message": null, | ||
| 1084 | + "result": { | ||
| 1085 | + "code": "则一订单号", | ||
| 1086 | + "customerOrderCode": "客户订单号" | ||
| 1087 | + } | ||
| 1088 | +} | ||
| 1089 | +``` | ||
| 1090 | + | ||
| 1091 | + | ||
| 1092 | + | ||
| 1093 | +### Java-sdk下载 | ||
| 1094 | + | ||
| 1095 | +[zy-java-sdk](https://zeyi-tms-product.oss-cn-hangzhou.aliyuncs.com/file/jar/java-sdk/zy-java-sdk-1.0.0.jar) | ||
| 1096 | + | ||
| 1097 | + | ||
| 1098 | + | ||
| 1099 | +### 2022-03-09更新日志 | ||
| 1100 | + | ||
| 1101 | +为了保证接口的通用性,本次涉及到改动的信息如下 | ||
| 1102 | + | ||
| 1103 | +- [x] [下单](http://open-doc.shjiuze.cn/order.html#下单): 接口返回值移除子单集合,通过接单接口推送。 | ||
| 1104 | +- [x] [接单接口](http://open-doc.shjiuze.cn/order.html#接单接口):由推送参考价改为接单接口,推送运单集合及每个运单的参考价格。 | ||
| 1105 | +- [x] 对接接口中子单号subCode参数命名更改为运单号waybillCode。 | ||
| 1106 | + | ||
| 1107 | +### 2023-02-22更新日志 | ||
| 1108 | + | ||
| 1109 | +- [x] 增加报价接口V2版本 | ||
| 1110 | +- [x] 增加推送运费信息接口 | ||
| 1111 | +- [x] 增加确认运费接口 | ||
| 0 | \ No newline at end of file | 1112 | \ No newline at end of file |
order/order.md
| @@ -1,897 +0,0 @@ | @@ -1,897 +0,0 @@ | ||
| 1 | - | ||
| 2 | - | ||
| 3 | -### 则一订单对接API | ||
| 4 | - | ||
| 5 | -则一提供了不同规范的API,调用则一订单服务端API前,需了解开发前须知及调用流程。本文提供了调用则一订单服务端API示例,供开发者参考。 | ||
| 6 | - | ||
| 7 | -#### 白名单 | ||
| 8 | - | ||
| 9 | -则一服务端API接口访问有IP白名单限制,需要接口调用方提供调用API的服务器IP地址。 | ||
| 10 | - | ||
| 11 | -#### 数据加签 | ||
| 12 | - | ||
| 13 | -采用md5(32位小写)算法生成签名 | ||
| 14 | -appKey(则一提供) + appSecret(则一提供) + timestamp(当前时间戳毫秒) + nonce(6位随机码大小写字母数子组合) + data(请求数据) | ||
| 15 | - | ||
| 16 | -#### 数据加密 | ||
| 17 | - | ||
| 18 | -数据加密采用AES算法 | ||
| 19 | -加密模式: CBC | ||
| 20 | -填充方式:PKCS5Padding | ||
| 21 | -偏移量:iv(则一提供) | ||
| 22 | -加密内容:appKey(则一提供) + timestamp(当前时间戳毫秒) + nonce(6位随机码大小写字母数子组合) + data(加密数据) | ||
| 23 | -密钥: appSecret(则一提供) | ||
| 24 | -输出:base64 | ||
| 25 | -字符集:utf-8 | ||
| 26 | -注:无敏感数据则无需加密 | ||
| 27 | - | ||
| 28 | -#### 获取访问凭证 | ||
| 29 | - | ||
| 30 | -##### 概述 | ||
| 31 | - | ||
| 32 | -调用则一服务API时,都需要先获取对应权限类型的访问凭证accessToken。访问凭证(accessToken)是由则一权限系统颁发的,用来校验调用者的身份信息,确保调用者具有要执行的操作的权限。 | ||
| 33 | -**说明**: 在使用accessToken时,请注意: | ||
| 34 | - | ||
| 35 | -* accessToken的有效期默认为30天,有效期内重复获取会返回相同结果,过期后获取会返回新的accessToken。 | ||
| 36 | -* 开发者需要缓存accessToken,用于后续接口的调用。不能频繁调用获取accessToken接口,否则会受到频率拦截。 | ||
| 37 | -* 当调用业务API时,如果返回状态码为401,则说明accessToken不正确或已过期,这时需要重新获取accessToken后再调用对应的API。 | ||
| 38 | - | ||
| 39 | -##### 接口信息 | ||
| 40 | - | ||
| 41 | -###### 请求方式: | ||
| 42 | - | ||
| 43 | -post | ||
| 44 | - | ||
| 45 | -###### 请求地址: | ||
| 46 | - | ||
| 47 | -* 生产:https://gw.shjiuze.cn/auth-service-api/login/password | ||
| 48 | -* 测试:https://test.shjiuze.cn/auth-service-api/login/password | ||
| 49 | - | ||
| 50 | -###### Body参数 | ||
| 51 | - | ||
| 52 | -| 名称 | 类型 | 必填 | 示例值 | 描述 | | ||
| 53 | -| -------- | ------ | ---- | ----------- | ---------------- | | ||
| 54 | -| username | String | 是 | zhangsan | 用户名,则一提供 | | ||
| 55 | -| password | String | 是 | password123 | 密码,则一提供 | | ||
| 56 | - | ||
| 57 | -###### 返回参数 | ||
| 58 | - | ||
| 59 | -| 名称 | 类型 | 示例值 | 描述 | | ||
| 60 | -| ------------------------------ | ---------- | -------------------------------- | -------------------------------------------------- | | ||
| 61 | -| success | boolean | true | 成功标识: true 成功,false 失败 | | ||
| 62 | -| businessException | boolean | false | 业务异常标识: true 业务异常,false 正常 | | ||
| 63 | -| errorCode | String | 200 | 错误码: 200 业务异常,500 系统异常, 空表示无错误 | | ||
| 64 | -| message | String | 订单号不能为空 | 错误信息,无错误则返回空 | | ||
| 65 | -| result | ZYTokenDto | | accessToken结果数据 | | ||
| 66 | -| accessToken | String | 000626f15b4b41bba6fe56216a5d2f73 | accessToken | | ||
| 67 | -| expiresIn | Integer | 2060 | 有效期限单位秒,accessToken在2060秒后过期 | | ||
| 68 | -| tokenType | String | bearer | token类型 | | ||
| 69 | - | ||
| 70 | -##### 请求示例 | ||
| 71 | - | ||
| 72 | -###### Http方式 | ||
| 73 | - | ||
| 74 | -```http | ||
| 75 | -POST /auth-service-api/login/password HTTP/1.1 | ||
| 76 | -Host:test.shjiuze.cn | ||
| 77 | -Content-Type:application/json | ||
| 78 | - | ||
| 79 | -{ | ||
| 80 | - "username" : "zeyi", | ||
| 81 | - "password" : "test1111" | ||
| 82 | -} | ||
| 83 | -``` | ||
| 84 | - | ||
| 85 | -###### Java-sdk方式 [下载SDK](https://zeyi-tms-product.oss-cn-hangzhou.aliyuncs.com/file/jar/java-sdk/zy-java-sdk-1.0.0.jar) | ||
| 86 | - | ||
| 87 | -```java | ||
| 88 | -public class Sample { | ||
| 89 | - public static void main(String[] args_) { | ||
| 90 | - String appKey = "appkey"; | ||
| 91 | - String appSecret = "appSecret"; | ||
| 92 | - ZYClient zyClient = new ZYClient(appKey, appSecret); | ||
| 93 | - ZYTokenRequestDto zyTokenRequest = new ZYTokenRequestDto(); | ||
| 94 | - zyTokenRequest.setUsername("zeyi"); | ||
| 95 | - zyTokenRequest.setPassword("test1111"); | ||
| 96 | - String body = gson.toJson(zyTokenRequest); | ||
| 97 | - HttpResponseData httpResponseData = zyClient.doPost(Constants.TEST_HOST + Constants.TOKEN_PATH, body); | ||
| 98 | - if(httpResponseData == null) { | ||
| 99 | - throw new TokenException("则一Token请求失败,返回为空!"); | ||
| 100 | - } | ||
| 101 | - ZYResponse<ZYTokenDto> zyResponse = gson.fromJson(httpResponseData.getBody(), new TypeToken<ZYResponse<ZYTokenDto>>(){}.getType()); | ||
| 102 | - if(!Boolean.TRUE.equals(zyResponse.isSuccess())) { | ||
| 103 | - throw new TokenException("则一Token请求返回失败!" + zyResponse.getMessage()); | ||
| 104 | - } | ||
| 105 | - if(zyResponse.getResult() == null) { | ||
| 106 | - throw new TokenException("则一Token请求返回失败,返回结果为空!" + zyResponse.getMessage()); | ||
| 107 | - } | ||
| 108 | - if(StringUtils.isBlank(zyResponse.getResult().getAccessToken())) { | ||
| 109 | - throw new TokenException("则一Token请求返回数据异常,AccessToken为空!" + zyResponse.getMessage()); | ||
| 110 | - } | ||
| 111 | - // 结果 zyResponse.getResult(); | ||
| 112 | - } | ||
| 113 | -} | ||
| 114 | -``` | ||
| 115 | - | ||
| 116 | -##### 返回示例 | ||
| 117 | - | ||
| 118 | -```json | ||
| 119 | -{ | ||
| 120 | - "success": true, | ||
| 121 | - "businessException": false, | ||
| 122 | - "errorCode": null, | ||
| 123 | - "message": null, | ||
| 124 | - "result": { | ||
| 125 | - "accessToken": "64d7f367-609b-4f7d-a84d-a3d2a0b5ad85", | ||
| 126 | - "expiresIn": 602105, | ||
| 127 | - "tokenType": "bearer" | ||
| 128 | - } | ||
| 129 | -} | ||
| 130 | -``` | ||
| 131 | - | ||
| 132 | -#### 下单 | ||
| 133 | - | ||
| 134 | -##### 接口信息 | ||
| 135 | - | ||
| 136 | -###### 请求方式: | ||
| 137 | - | ||
| 138 | -post | ||
| 139 | - | ||
| 140 | -###### 请求地址: | ||
| 141 | - | ||
| 142 | -* 生产:https://gw.shjiuze.cn/oms-service-api/order/add | ||
| 143 | -* 测试:https://test.shjiuze.cn/oms-service-api/order/add | ||
| 144 | - | ||
| 145 | -###### Headers参数 | ||
| 146 | - | ||
| 147 | -| 名称 | 类型 | 必填 | 示例值 | 描述 | | ||
| 148 | -| ------------- | ------ | -------------------------- | -------------------------------- | ------------------------------------------------------------ | | ||
| 149 | -| Authorization | String | 是 | Bearer a2c5680001 | 调用服务端API的应用凭证accessToken,通过调用获取访问凭证接口获取。 | | ||
| 150 | -| appKey | String | 是 | 0867ef5f23ef6483749e19e1692b | 则一提供 | | ||
| 151 | -| timestamp | String | 是 | 1643251533306 | 当前时间戳毫秒值 | | ||
| 152 | -| nonce | String | 是 | gdst9t | 6位小写字母数字组合随机串 | | ||
| 153 | -| sign | String | 是 | fa3ed338d6dfe18e7273c8692234ee70 | 签名:appKey(则一提供) + appSecret(则一提供) + timestamp + nonce(6位随机码) + data(body参数)通过md5(32位小写)算法生成 | | ||
| 154 | - | ||
| 155 | -###### Body参数 | ||
| 156 | - | ||
| 157 | -| 名称 | 类型 | 必填 | 示例值 | 描述 | | ||
| 158 | -| ------------------------------------- | -------------------- | -------------------------- | ---------------- | ------------------------------------------------------------ | | ||
| 159 | -| customerOrderCode | String | 是 | 220101000001 | 客户订单号,订单唯一标识 | | ||
| 160 | -| customerSn | String | 否 | 220101000001 | 客户委托单号 | | ||
| 161 | -| placeOrderTime | Number | 是 | 1643251533306 | 下单时间,时间戳毫秒值 | | ||
| 162 | -| loadTime | Number | 是 | 1643251533306 | 装货时间,时间戳毫秒值 | | ||
| 163 | -| expectArrivalTime | Number | 否 | 1643251533306 | 期望送达时间,时间戳毫秒值 | | ||
| 164 | -| receiptType | String | 否 | ELECTRON_TYPE | 回单类型:ELECTRON_TYPE/电子回单,PAPER_TYPE/纸质回单,NONE/无 | | ||
| 165 | -| receiptNumber | Number | 否 | 1 | 回单张数 | | ||
| 166 | -| receiptCode | String | 否 | A2022012602278 | 回单号 | | ||
| 167 | -| payType | String | 否 | PAY_IN_CASH | 付款方式:PAY_IN_CASH/现付,PAY_ON_DELIVERY/到付,PAY_ARREARS/欠付,PAY_MONTH/月结,PAY_BACK/回付,PAY_MULTIPLE/多笔付,PAY_FREE/免费 | | ||
| 168 | -| lineName | String | 否 | 上海-天津-北京 | 线路名称 | | ||
| 169 | -| remark | String | 否 | 需要雨布和尾板 | 订单备注 | | ||
| 170 | -| station | OrderStation[] | 是 | | 订单经停点 | | ||
| 171 | -| stationId | String | 否 | 123abc | 站点id | | ||
| 172 | -| stationName | String | 否 | 上海顺丰青浦站点 | 站点名称 | | ||
| 173 | -| provinceCode | String | 否 | 310000 | 省份编号 | | ||
| 174 | -| provinceName | String | 是 | 上海 | 省份名称 | | ||
| 175 | -| cityCode | String | 否 | 310100 | 城市编号 | | ||
| 176 | -| cityName | String | 是 | 上海市 | 城市名称 | | ||
| 177 | -| areaCode | String | 否 | 310118 | 区域编号 | | ||
| 178 | -| areaName | String | 是 | 青浦区 | 区域名称 | | ||
| 179 | -| address | String | 是 | 纪鹤公路1988号 | 详细地址 | | ||
| 180 | -| lat | String | 是 | 36.221825 | 纬度 | | ||
| 181 | -| lng | String | 是 | 120.632908 | 经度 | | ||
| 182 | -| contactName | String | 否 | 张三 | 联系人 | | ||
| 183 | -| contactMobile | String | 否 | 18801000001 | 联系人电话 | | ||
| 184 | -| loadFlag | String | 是 | true | 装货标识 | | ||
| 185 | -| unloadFlag | String | 是 | false | 卸货标识 | | ||
| 186 | -| expectArrivalTime | Number | 否 | 1643251533306 | 预计到达时间,时间戳毫秒值 | | ||
| 187 | -| expectDepartTime | Number | 否 | 1643251533306 | 预计发车时间,时间戳毫秒值 | | ||
| 188 | -| sort | Number | 否 | 1 | 经停点顺序,如果不传则默认按数组顺序 | | ||
| 189 | -| goods | OrderGoods[] | 否 | | 订单货物信息 | | ||
| 190 | -| barCode | String | 否 | 21616162626 | 商品条码 | | ||
| 191 | -| skuId | String | 否 | 1223233536436 | 商品sku_id | | ||
| 192 | -| name | String | 是 | 鞋子 | 货物名称 | | ||
| 193 | -| packageType | String | 否 | | 包装规格 | | ||
| 194 | -| piece | Number | 否 | 200 | 件数 | | ||
| 195 | -| weight | Number | 否 | 200000 | 重量 | | ||
| 196 | -| volume | Number | 否 | 50 | 体积 | | ||
| 197 | -| addService | OrderAddService[] | 否 | | 增值服务 | | ||
| 198 | -| serviceType | String | 否 | | 服务类型 | | ||
| 199 | -| serviceName | String | 是 | 包装服务 | 服务名称 | | ||
| 200 | -| serviceDemand | String | 否 | 纸箱包装 | 服务要求 | | ||
| 201 | -| tags | OrderTag[] | 否 | | 订单标签 | | ||
| 202 | -| tagName | String | 是 | 易碎物品 | 标签名称 | | ||
| 203 | -| vehicleDemands | OrderVehicleDemand[] | 否 | | 车辆需求 | | ||
| 204 | -| demandVanType | String | 是 | MOTOR_VAN | 需求厢型:MOTOR_VAN/厢车,GAOLAN_VAN/高栏,SLAB_VAN/平板,REFRIGERATOR_CAR/冷藏,IVECO/依维柯,JINBEI/金杯,MINI_VAN/小面包,ELSE_VAN/其他 | | ||
| 205 | -| demandSpecification | String | 是 | 9.6 | 需求车型:2.7/3.8/4.2/6.8/7.6/9.6/11/12.5/13.5/15/16.5/17.5/19/21 | | ||
| 206 | -| demandNumber | Number | 否 | 1 | 为空则默认1 | | ||
| 207 | -| vehicleDemand | String | 否 | 车辆需要带雨布 | 车辆要求描述 | | ||
| 208 | - | ||
| 209 | -##### 请求示例 | ||
| 210 | - | ||
| 211 | -###### Java-sdk方式 [下载SDK](https://zeyi-tms-product.oss-cn-hangzhou.aliyuncs.com/file/jar/java-sdk/zy-java-sdk-1.0.0.jar) | ||
| 212 | - | ||
| 213 | -```java | ||
| 214 | -public class Sample { | ||
| 215 | - public static void main(String[] args_) { | ||
| 216 | - String appKey = "appkey"; | ||
| 217 | - String appSecret = "appSecret"; | ||
| 218 | - String jsonData = "下单Body参数JSON数据"; | ||
| 219 | - ZYClient zyClient = new ZYClient(appKey, appSecret); | ||
| 220 | - HttpResponseData httpResponseData = | ||
| 221 | -zyClient.doPost(Constants.TEST_HOST + "/oms-service-api/order/add", "accessToken", jsonData); | ||
| 222 | - if(httpResponseData == null) { | ||
| 223 | - throw new BusinessException("则一请求失败,返回结果为空!"); | ||
| 224 | - } | ||
| 225 | - if(httpResponseData.getStatus() == HttpURLConnection.HTTP_UNAUTHORIZED) { | ||
| 226 | - //重新获取token再次请求 | ||
| 227 | - httpResponseData = zyClient.doPost(Constants.TEST_HOST + | ||
| 228 | - "/oms-service-api/order/add", "accessToken", jsonData); | ||
| 229 | - } | ||
| 230 | - } | ||
| 231 | -} | ||
| 232 | -``` | ||
| 233 | - | ||
| 234 | -##### 返回示例 | ||
| 235 | - | ||
| 236 | -```json | ||
| 237 | -{ | ||
| 238 | - "success": true, | ||
| 239 | - "businessException": false, | ||
| 240 | - "errorCode": null, | ||
| 241 | - "message": null, | ||
| 242 | - "result": { | ||
| 243 | - "code": "则一订单号", | ||
| 244 | - "customerOrderCode": "客户订单号" | ||
| 245 | - } | ||
| 246 | -} | ||
| 247 | -``` | ||
| 248 | - | ||
| 249 | -#### 确认中标 | ||
| 250 | - | ||
| 251 | -##### 接口信息 | ||
| 252 | - | ||
| 253 | -###### 请求方式: | ||
| 254 | - | ||
| 255 | -post | ||
| 256 | - | ||
| 257 | -###### 请求地址: | ||
| 258 | - | ||
| 259 | -* 生产:https://gw.shjiuze.cn/oms-service-api/order/confirmBid | ||
| 260 | -* 测试:https://test.shjiuze.cn/oms-service-api/order/confirmBid | ||
| 261 | - | ||
| 262 | -###### Headers参数 | ||
| 263 | - | ||
| 264 | -| 名称 | 类型 | 必填 | 示例值 | 描述 | | ||
| 265 | -| ------------- | ------ | -------------------------- | -------------------------------- | ------------------------------------------------------------ | | ||
| 266 | -| Authorization | String | 是 | Bearer a2c5680001 | 调用服务端API的应用凭证accessToken,通过调用获取访问凭证接口获取。 | | ||
| 267 | -| appKey | String | 是 | 0867ef5f23ef6483749e19e1692b | 则一提供 | | ||
| 268 | -| timestamp | String | 是 | 1643251533306 | 当前时间戳毫秒值 | | ||
| 269 | -| nonce | String | 是 | gdst9t | 6位小写字母数字组合随机串 | | ||
| 270 | -| sign | String | 是 | fa3ed338d6dfe18e7273c8692234ee70 | 签名:appKey(则一提供) + appSecret(则一提供) + timestamp + nonce(6位随机码) + data(body参数)通过md5(32位小写)算法生成 | | ||
| 271 | - | ||
| 272 | -###### Body参数 | ||
| 273 | - | ||
| 274 | -| 名称 | 类型 | 必填 | 示例值 | 描述 | | ||
| 275 | -| ----------------- | ------ | -------------------------- | ------------ | ------------------------ | | ||
| 276 | -| code | String | 是 | 220101000001 | 则一订单号 | | ||
| 277 | -| customerOrderCode | String | 是 | 220101000001 | 客户订单号,订单唯一标识 | | ||
| 278 | -| confirmId | String | 是 | 220101000001 | 中标报价id | | ||
| 279 | -| quotePrice | Number | 是 | 10000 | 中标价格 | | ||
| 280 | - | ||
| 281 | -##### 请求示例 | ||
| 282 | - | ||
| 283 | -###### Java-sdk方式 [下载SDK](https://zeyi-tms-product.oss-cn-hangzhou.aliyuncs.com/file/jar/java-sdk/zy-java-sdk-1.0.0.jar) | ||
| 284 | - | ||
| 285 | -```java | ||
| 286 | -public class Sample { | ||
| 287 | - public static void main(String[] args_) { | ||
| 288 | - String appKey = "appkey"; | ||
| 289 | - String appSecret = "appSecret"; | ||
| 290 | - String jsonData = "确认中标Body参数JSON数据"; | ||
| 291 | - ZYClient zyClient = new ZYClient(appKey, appSecret); | ||
| 292 | - HttpResponseData httpResponseData = | ||
| 293 | -zyClient.doPost(Constants.TEST_HOST + "/oms-service-api/order/confirmBid", "accessToken", jsonData); | ||
| 294 | - if(httpResponseData == null) { | ||
| 295 | - throw new BusinessException("则一请求失败,返回结果为空!"); | ||
| 296 | - } | ||
| 297 | - if(httpResponseData.getStatus() == HttpURLConnection.HTTP_UNAUTHORIZED) { | ||
| 298 | - //重新获取token再次请求 | ||
| 299 | - httpResponseData = zyClient.doPost(Constants.TEST_HOST + | ||
| 300 | - "/oms-service-api/order/confirmBid", "accessToken", jsonData); | ||
| 301 | - } | ||
| 302 | - } | ||
| 303 | -} | ||
| 304 | -``` | ||
| 305 | - | ||
| 306 | -##### 返回示例 | ||
| 307 | - | ||
| 308 | -```json | ||
| 309 | -{ | ||
| 310 | - "success": true, | ||
| 311 | - "businessException": false, | ||
| 312 | - "errorCode": null, | ||
| 313 | - "message": null, | ||
| 314 | - "result": { | ||
| 315 | - "code": "则一订单号", | ||
| 316 | - "customerOrderCode": "客户订单号", | ||
| 317 | - "confirmId": "中标报价id", | ||
| 318 | - "quotePrice": "中标价格" | ||
| 319 | - } | ||
| 320 | -} | ||
| 321 | -``` | ||
| 322 | - | ||
| 323 | -#### 取消订单 | ||
| 324 | - | ||
| 325 | -##### 接口信息 | ||
| 326 | - | ||
| 327 | -###### 请求方式: | ||
| 328 | - | ||
| 329 | -post | ||
| 330 | - | ||
| 331 | -###### 请求地址: | ||
| 332 | - | ||
| 333 | -* 生产:https://gw.shjiuze.cn/oms-service-api/order/cancel | ||
| 334 | -* 测试:https://test.shjiuze.cn/oms-service-api/order/cancel | ||
| 335 | - | ||
| 336 | -###### Headers参数 | ||
| 337 | - | ||
| 338 | -| 名称 | 类型 | 必填 | 示例值 | 描述 | | ||
| 339 | -| ------------- | ------ | -------------------------- | -------------------------------- | ------------------------------------------------------------ | | ||
| 340 | -| Authorization | String | 是 | Bearer a2c5680001 | 调用服务端API的应用凭证accessToken,通过调用获取访问凭证接口获取。 | | ||
| 341 | -| appKey | String | 是 | 0867ef5f23ef6483749e19e1692b | 则一提供 | | ||
| 342 | -| timestamp | String | 是 | 1643251533306 | 当前时间戳毫秒值 | | ||
| 343 | -| nonce | String | 是 | gdst9t | 6位小写字母数字组合随机串 | | ||
| 344 | -| sign | String | 是 | fa3ed338d6dfe18e7273c8692234ee70 | 签名:appKey(则一提供) + appSecret(则一提供) + timestamp + nonce(6位随机码) + data(body参数)通过md5(32位小写)算法生成 | | ||
| 345 | - | ||
| 346 | -###### Body参数 | ||
| 347 | - | ||
| 348 | -| 名称 | 类型 | 必填 | 示例值 | 描述 | | ||
| 349 | -| ----------------- | ------ | -------------------------- | ------------ | ------------------------ | | ||
| 350 | -| code | String | 是 | 220101000001 | 则一订单号 | | ||
| 351 | -| customerOrderCode | String | 是 | 220101000001 | 客户订单号,订单唯一标识 | | ||
| 352 | -| cancelRemark | String | 否 | 货量不足 | 取消原因 | | ||
| 353 | - | ||
| 354 | -##### 请求示例 | ||
| 355 | - | ||
| 356 | -###### Java-sdk方式 [下载SDK](https://zeyi-tms-product.oss-cn-hangzhou.aliyuncs.com/file/jar/java-sdk/zy-java-sdk-1.0.0.jar) | ||
| 357 | - | ||
| 358 | -```java | ||
| 359 | -public class Sample { | ||
| 360 | - public static void main(String[] args_) { | ||
| 361 | - String appKey = "appkey"; | ||
| 362 | - String appSecret = "appSecret"; | ||
| 363 | - String jsonData = "取消订单Body参数JSON数据"; | ||
| 364 | - ZYClient zyClient = new ZYClient(appKey, appSecret); | ||
| 365 | - HttpResponseData httpResponseData = | ||
| 366 | -zyClient.doPost(Constants.TEST_HOST + "/oms-service-api/order/cancel", "accessToken", jsonData); | ||
| 367 | - if(httpResponseData == null) { | ||
| 368 | - throw new BusinessException("则一请求失败,返回结果为空!"); | ||
| 369 | - } | ||
| 370 | - if(httpResponseData.getStatus() == HttpURLConnection.HTTP_UNAUTHORIZED) { | ||
| 371 | - //重新获取token再次请求 | ||
| 372 | - httpResponseData = zyClient.doPost(Constants.TEST_HOST + | ||
| 373 | - "/oms-service-api/order/cancel", "accessToken", jsonData); | ||
| 374 | - } | ||
| 375 | - } | ||
| 376 | -} | ||
| 377 | -``` | ||
| 378 | - | ||
| 379 | -##### 返回示例 | ||
| 380 | - | ||
| 381 | -```json | ||
| 382 | -{ | ||
| 383 | - "success": true, | ||
| 384 | - "businessException": false, | ||
| 385 | - "errorCode": null, | ||
| 386 | - "message": null, | ||
| 387 | - "result": { | ||
| 388 | - "code": "则一订单号", | ||
| 389 | - "customerOrderCode": "客户订单号" | ||
| 390 | - } | ||
| 391 | -} | ||
| 392 | -``` | ||
| 393 | - | ||
| 394 | -#### 查询车辆定位 | ||
| 395 | - | ||
| 396 | -##### 接口信息 | ||
| 397 | - | ||
| 398 | -###### 概述 | ||
| 399 | - | ||
| 400 | -可以通过该接口查询车辆当前位置,该接口为收费接口。 | ||
| 401 | - | ||
| 402 | -###### 请求方式: | ||
| 403 | - | ||
| 404 | -post | ||
| 405 | - | ||
| 406 | -###### 请求地址: | ||
| 407 | - | ||
| 408 | -* 生产:https://gw.shjiuze.cn/oms-service-api/vehicle/location | ||
| 409 | -* 测试:https://test.shjiuze.cn/oms-service-api/vehicle/location | ||
| 410 | - | ||
| 411 | -###### Headers参数 | ||
| 412 | - | ||
| 413 | -| 名称 | 类型 | 必填 | 示例值 | 描述 | | ||
| 414 | -| ------------- | ------ | -------------------------- | -------------------------------- | ------------------------------------------------------------ | | ||
| 415 | -| Authorization | String | 是 | Bearer a2c5680001 | 调用服务端API的应用凭证accessToken,通过调用获取访问凭证接口获取。 | | ||
| 416 | -| appKey | String | 是 | 0867ef5f23ef6483749e19e1692b | 则一提供 | | ||
| 417 | -| timestamp | String | 是 | 1643251533306 | 当前时间戳毫秒值 | | ||
| 418 | -| nonce | String | 是 | gdst9t | 6位小写字母数字组合随机串 | | ||
| 419 | -| sign | String | 是 | fa3ed338d6dfe18e7273c8692234ee70 | 签名:appKey(则一提供) + appSecret(则一提供) + timestamp + nonce(6位随机码) + data(body参数)通过md5(32位小写)算法生成 | | ||
| 420 | - | ||
| 421 | -###### Body参数 | ||
| 422 | - | ||
| 423 | -| 名称 | 类型 | 必填 | 示例值 | 描述 | | ||
| 424 | -| ----------------- | ------ | ---- | ------------- | ------------------------ | | ||
| 425 | -| code | String | 是 | D220101000001 | 则一订单号 | | ||
| 426 | -| waybillCode | String | 是 | Y220101000001 | 则一运单号 | | ||
| 427 | -| customerOrderCode | String | 是 | 220101000001 | 客户订单号,订单唯一标识 | | ||
| 428 | -| licenseNumber | String | 是 | 沪DP2312 | 车牌号 | | ||
| 429 | - | ||
| 430 | -##### 请求示例 | ||
| 431 | - | ||
| 432 | -###### Java-sdk方式 [下载SDK](https://zeyi-tms-product.oss-cn-hangzhou.aliyuncs.com/file/jar/java-sdk/zy-java-sdk-1.0.0.jar) | ||
| 433 | - | ||
| 434 | -```java | ||
| 435 | -public class Sample { | ||
| 436 | - public static void main(String[] args_) { | ||
| 437 | - String appKey = "appkey"; | ||
| 438 | - String appSecret = "appSecret"; | ||
| 439 | - String jsonData = "车辆位置查询Body参数JSON数据"; | ||
| 440 | - ZYClient zyClient = new ZYClient(appKey, appSecret); | ||
| 441 | - HttpResponseData httpResponseData = | ||
| 442 | -zyClient.doPost(Constants.TEST_HOST + "/oms-service-api/vehicle/location", "accessToken", jsonData); | ||
| 443 | - if(httpResponseData == null) { | ||
| 444 | - throw new BusinessException("则一请求失败,返回结果为空!"); | ||
| 445 | - } | ||
| 446 | - if(httpResponseData.getStatus() == HttpURLConnection.HTTP_UNAUTHORIZED) { | ||
| 447 | - //重新获取token再次请求 | ||
| 448 | - httpResponseData = zyClient.doPost(Constants.TEST_HOST + | ||
| 449 | - "/oms-service-api/vehicle/location", "accessToken", jsonData); | ||
| 450 | - } | ||
| 451 | - } | ||
| 452 | -} | ||
| 453 | -``` | ||
| 454 | - | ||
| 455 | -##### 返回示例 | ||
| 456 | - | ||
| 457 | -```json | ||
| 458 | -{ | ||
| 459 | - "success":true, | ||
| 460 | - "businessException":false, | ||
| 461 | - "result":{ | ||
| 462 | - "lng":"106.1722328011559", //经度 | ||
| 463 | - "lat":"37.94834927106783", //纬度 | ||
| 464 | - "speed":0, //速度,km/h | ||
| 465 | - "time":"2022-02-07 19:33:19", //定位时间 | ||
| 466 | - "address":"宁夏回族自治区吴忠市利通区清二沟,东方向,296.5米" //定位地点 | ||
| 467 | - } | ||
| 468 | -} | ||
| 469 | -``` | ||
| 470 | - | ||
| 471 | -#### 查询车辆历史轨迹 | ||
| 472 | - | ||
| 473 | -##### 接口信息 | ||
| 474 | - | ||
| 475 | -###### 概述 | ||
| 476 | - | ||
| 477 | -可以通过该接口查询车辆历史运行轨迹数据,该接口为收费接口。 | ||
| 478 | - | ||
| 479 | -###### 请求方式: | ||
| 480 | - | ||
| 481 | -post | ||
| 482 | - | ||
| 483 | -###### 请求地址: | ||
| 484 | - | ||
| 485 | -* 生产:https://gw.shjiuze.cn/oms-service-api/vehicle/track | ||
| 486 | -* 测试:https://test.shjiuze.cn/oms-service-api/vehicle/track | ||
| 487 | - | ||
| 488 | -###### Headers参数 | ||
| 489 | - | ||
| 490 | -| 名称 | 类型 | 必填 | 示例值 | 描述 | | ||
| 491 | -| ------------- | ------ | -------------------------- | -------------------------------- | ------------------------------------------------------------ | | ||
| 492 | -| Authorization | String | 是 | Bearer a2c5680001 | 调用服务端API的应用凭证accessToken,通过调用获取访问凭证接口获取。 | | ||
| 493 | -| appKey | String | 是 | 0867ef5f23ef6483749e19e1692b | 则一提供 | | ||
| 494 | -| timestamp | String | 是 | 1643251533306 | 当前时间戳毫秒值 | | ||
| 495 | -| nonce | String | 是 | gdst9t | 6位小写字母数字组合随机串 | | ||
| 496 | -| sign | String | 是 | fa3ed338d6dfe18e7273c8692234ee70 | 签名:appKey(则一提供) + appSecret(则一提供) + timestamp + nonce(6位随机码) + data(body参数)通过md5(32位小写)算法生成 | | ||
| 497 | - | ||
| 498 | -###### Body参数 | ||
| 499 | - | ||
| 500 | -| 名称 | 类型 | 必填 | 示例值 | 描述 | | ||
| 501 | -| ----------------- | ------ | ---- | ------------- | ------------------------ | | ||
| 502 | -| code | String | 是 | D220101000001 | 则一订单号 | | ||
| 503 | -| waybillCode | String | 是 | Y220101000001 | 则一运单号 | | ||
| 504 | -| customerOrderCode | String | 是 | 220101000001 | 客户订单号,订单唯一标识 | | ||
| 505 | -| licenseNumber | String | 是 | 沪DP2312 | 车牌号 | | ||
| 506 | -| startTime | Number | 是 | 1643251533306 | 开始时间 | | ||
| 507 | -| endTime | Number | 是 | 1643251533308 | 结束时间 | | ||
| 508 | - | ||
| 509 | -##### 请求示例 | ||
| 510 | - | ||
| 511 | -###### Java-sdk方式 [下载SDK](https://zeyi-tms-product.oss-cn-hangzhou.aliyuncs.com/file/jar/java-sdk/zy-java-sdk-1.0.0.jar) | ||
| 512 | - | ||
| 513 | -```java | ||
| 514 | -public class Sample { | ||
| 515 | - public static void main(String[] args_) { | ||
| 516 | - String appKey = "appkey"; | ||
| 517 | - String appSecret = "appSecret"; | ||
| 518 | - String jsonData = "车辆轨迹查询Body参数JSON数据"; | ||
| 519 | - ZYClient zyClient = new ZYClient(appKey, appSecret); | ||
| 520 | - HttpResponseData httpResponseData = | ||
| 521 | -zyClient.doPost(Constants.TEST_HOST + "/oms-service-api/vehicle/track", "accessToken", jsonData); | ||
| 522 | - if(httpResponseData == null) { | ||
| 523 | - throw new BusinessException("则一请求失败,返回结果为空!"); | ||
| 524 | - } | ||
| 525 | - if(httpResponseData.getStatus() == HttpURLConnection.HTTP_UNAUTHORIZED) { | ||
| 526 | - //重新获取token再次请求 | ||
| 527 | - httpResponseData = zyClient.doPost(Constants.TEST_HOST + | ||
| 528 | - "/oms-service-api/vehicle/track", "accessToken", jsonData); | ||
| 529 | - } | ||
| 530 | - } | ||
| 531 | -} | ||
| 532 | -``` | ||
| 533 | - | ||
| 534 | -##### 返回示例 | ||
| 535 | - | ||
| 536 | -```json | ||
| 537 | -{ | ||
| 538 | - "success":true, | ||
| 539 | - "businessException":false, | ||
| 540 | - "result":[ | ||
| 541 | - { | ||
| 542 | - "lon":"116.6709722499687", //经度 | ||
| 543 | - "lat":"39.64092201495669", //纬度 | ||
| 544 | - "gtm":"2022-02-07 18:55:13", //gps时间 | ||
| 545 | - "spd":"249", //速度 除以10为km/h | ||
| 546 | - "hgt":"4", //海拔m | ||
| 547 | - "agl":"257" //正北方向夹角 | ||
| 548 | - }, | ||
| 549 | - { | ||
| 550 | - "lon":"116.66919560752942", | ||
| 551 | - "lat":"39.64070361333219", | ||
| 552 | - "gtm":"2022-02-07 18:55:33", | ||
| 553 | - "spd":"272", | ||
| 554 | - "hgt":"6", | ||
| 555 | - "agl":"260" | ||
| 556 | - } | ||
| 557 | - ] | ||
| 558 | -} | ||
| 559 | -``` | ||
| 560 | - | ||
| 561 | - | ||
| 562 | - | ||
| 563 | -#### 查询订单操作记录 | ||
| 564 | - | ||
| 565 | -##### 接口信息 | ||
| 566 | - | ||
| 567 | -###### 概述 | ||
| 568 | - | ||
| 569 | -可以通过该接口查询订单的操作记录。 | ||
| 570 | - | ||
| 571 | -###### 请求方式: | ||
| 572 | - | ||
| 573 | -post | ||
| 574 | - | ||
| 575 | -###### 请求地址: | ||
| 576 | - | ||
| 577 | -* 生产:https://gw.shjiuze.cn/oms-service-api/order/getOperateList | ||
| 578 | -* 测试:https://test.shjiuze.cn/oms-service-api/order/getOperateList | ||
| 579 | - | ||
| 580 | -###### Headers参数 | ||
| 581 | - | ||
| 582 | -| 名称 | 类型 | 必填 | 示例值 | 描述 | | ||
| 583 | -| ------------- | ------ | -------------------------- | -------------------------------- | ------------------------------------------------------------ | | ||
| 584 | -| Authorization | String | 是 | Bearer a2c5680001 | 调用服务端API的应用凭证accessToken,通过调用获取访问凭证接口获取。 | | ||
| 585 | -| appKey | String | 是 | 0867ef5f23ef6483749e19e1692b | 则一提供 | | ||
| 586 | -| timestamp | String | 是 | 1643251533306 | 当前时间戳毫秒值 | | ||
| 587 | -| nonce | String | 是 | gdst9t | 6位小写字母数字组合随机串 | | ||
| 588 | -| sign | String | 是 | fa3ed338d6dfe18e7273c8692234ee70 | 签名:appKey(则一提供) + appSecret(则一提供) + timestamp + nonce(6位随机码) + data(body参数)通过md5(32位小写)算法生成 | | ||
| 589 | - | ||
| 590 | -###### Body参数 | ||
| 591 | - | ||
| 592 | -| 名称 | 类型 | 必填 | 示例值 | 描述 | | ||
| 593 | -| ----------------- | ------ | ---- | ------------ | ------------------------ | | ||
| 594 | -| code | String | 否 | 220101000001 | 则一订单号 | | ||
| 595 | -| customerOrderCode | String | 是 | 220101000001 | 客户订单号,订单唯一标识 | | ||
| 596 | - | ||
| 597 | -##### 请求示例 | ||
| 598 | - | ||
| 599 | -###### Java-sdk方式 [下载SDK](https://zeyi-tms-product.oss-cn-hangzhou.aliyuncs.com/file/jar/java-sdk/zy-java-sdk-1.0.0.jar) | ||
| 600 | - | ||
| 601 | -```java | ||
| 602 | -public class Sample { | ||
| 603 | - public static void main(String[] args_) { | ||
| 604 | - String appKey = "appkey"; | ||
| 605 | - String appSecret = "appSecret"; | ||
| 606 | - String jsonData = "车辆轨迹查询Body参数JSON数据"; | ||
| 607 | - ZYClient zyClient = new ZYClient(appKey, appSecret); | ||
| 608 | - HttpResponseData httpResponseData = | ||
| 609 | -zyClient.doPost(Constants.TEST_HOST + "/oms-service-api/orderOperateRecord/getList", "accessToken", jsonData); | ||
| 610 | - if(httpResponseData == null) { | ||
| 611 | - throw new BusinessException("则一请求失败,返回结果为空!"); | ||
| 612 | - } | ||
| 613 | - if(httpResponseData.getStatus() == HttpURLConnection.HTTP_UNAUTHORIZED) { | ||
| 614 | - //重新获取token再次请求 | ||
| 615 | - httpResponseData = zyClient.doPost(Constants.TEST_HOST + | ||
| 616 | - "/oms-service-api/orderOperateRecord/getList", "accessToken", jsonData); | ||
| 617 | - } | ||
| 618 | - } | ||
| 619 | -} | ||
| 620 | -``` | ||
| 621 | - | ||
| 622 | -##### 返回示例 | ||
| 623 | - | ||
| 624 | -```json | ||
| 625 | -{ | ||
| 626 | - "success": true, | ||
| 627 | - "businessException": false, | ||
| 628 | - "errorCode": null, | ||
| 629 | - "message": null, | ||
| 630 | - "result": [ | ||
| 631 | - { | ||
| 632 | - "orderCode": "220101000001", | ||
| 633 | - "operateType": "ORDER_XXX", | ||
| 634 | - "operateContent": "操作详情XXXX1", | ||
| 635 | - "operateTime": "2022-02-10 18:23:30", | ||
| 636 | - "operateUser": "张三" | ||
| 637 | - }, | ||
| 638 | - { | ||
| 639 | - "orderCode": "220101000001", | ||
| 640 | - "operateType": "ORDER_XXX", | ||
| 641 | - "operateContent": "操作详情XXXX2", | ||
| 642 | - "operateTime": "2022-02-08 12:43:30", | ||
| 643 | - "operateUser": "李四" | ||
| 644 | - } | ||
| 645 | - ] | ||
| 646 | -} | ||
| 647 | -``` | ||
| 648 | - | ||
| 649 | - | ||
| 650 | - | ||
| 651 | - | ||
| 652 | - | ||
| 653 | - | ||
| 654 | - | ||
| 655 | -### 以下接口需要对接方提供 | ||
| 656 | - | ||
| 657 | -#### 报价接口 | ||
| 658 | - | ||
| 659 | -##### 接口信息 | ||
| 660 | - | ||
| 661 | -###### 概述 | ||
| 662 | - | ||
| 663 | -则一调用该接口进行报价,可以进行多次报价。 | ||
| 664 | - | ||
| 665 | -###### 请求方式: | ||
| 666 | - | ||
| 667 | -post | ||
| 668 | - | ||
| 669 | -###### 请求路径: | ||
| 670 | - | ||
| 671 | -/quotePrice | ||
| 672 | - | ||
| 673 | -###### Body参数 | ||
| 674 | - | ||
| 675 | -| 名称 | 类型 | 必填 | 示例值 | 描述 | | ||
| 676 | -| ----------------- | ------ | -------------------------- | ------------- | ------------------------ | | ||
| 677 | -| code | String | 是 | 220101000001 | 则一订单号 | | ||
| 678 | -| customerOrderCode | String | 是 | 220101000001 | 客户订单号,订单唯一标识 | | ||
| 679 | -| quoteId | String | 是 | 1a2111bacd56 | 报价id,报价唯一标识 | | ||
| 680 | -| quotePrice | Number | 是 | 10000 | 报价金额 | | ||
| 681 | -| contactName | String | 否 | 张三 | 报价联系人 | | ||
| 682 | -| contactMobile | String | 否 | 18801000000 | 报价联系电话 | | ||
| 683 | -| quoteInvalidTime | Number | 否 | 1643251533306 | 报价有效期,时间戳毫秒值 | | ||
| 684 | -| operateTime | Number | 是 | 1643251533306 | 操作时间戳 | | ||
| 685 | - | ||
| 686 | -###### 返回示例 | ||
| 687 | - | ||
| 688 | -```json | ||
| 689 | -{ | ||
| 690 | - "success": true, | ||
| 691 | - "businessException": false, | ||
| 692 | - "errorCode": null, | ||
| 693 | - "message": null, | ||
| 694 | - "result": { | ||
| 695 | - "code": "则一订单号", | ||
| 696 | - "customerOrderCode": "客户订单号" | ||
| 697 | - } | ||
| 698 | -} | ||
| 699 | -``` | ||
| 700 | - | ||
| 701 | - | ||
| 702 | - | ||
| 703 | -#### 接单接口 | ||
| 704 | - | ||
| 705 | -##### 接口信息 | ||
| 706 | - | ||
| 707 | -###### 概述 | ||
| 708 | - | ||
| 709 | -则一调用该接口推送运单号及参考运费范围。 | ||
| 710 | - | ||
| 711 | -###### 请求方式: | ||
| 712 | - | ||
| 713 | -post | ||
| 714 | - | ||
| 715 | -###### 请求路径: | ||
| 716 | - | ||
| 717 | -/receiveOrder | ||
| 718 | - | ||
| 719 | -###### Body参数 | ||
| 720 | - | ||
| 721 | -| 名称 | 类型 | 必填 | 示例值 | 描述 | | ||
| 722 | -| -------------------------------- | --------- | -------------------------- | ------------- | ------------------------ | | ||
| 723 | -| code | String | 是 | 220101000001 | 则一订单号 | | ||
| 724 | -| customerOrderCode | String | 是 | 220101000001 | 客户订单号,订单唯一标识 | | ||
| 725 | -| startTotalPrice | Number | 是 | 18100 | 参考总金额起始值 | | ||
| 726 | -| endTotalPrice | Number | 是 | 21000 | 参考总金额结束值 | | ||
| 727 | -| WaybillList | Waybill[] | 是 | | 运单集合 | | ||
| 728 | -| waybillCode | String | 是 | Y220101000001 | 则一运单号 | | ||
| 729 | -| startPrice | Number | 是 | 18100 | 参考金额起始值 | | ||
| 730 | -| endPrice | Number | 是 | 21000 | 参考总金额结束值 | | ||
| 731 | -| vanType | String | 是 | MOTOR_VAN | 厢型 | | ||
| 732 | -| specification | String | 是 | 9.6 | 车型 | | ||
| 733 | - | ||
| 734 | -###### 返回示例 | ||
| 735 | - | ||
| 736 | -```json | ||
| 737 | -{ | ||
| 738 | - "success": true, | ||
| 739 | - "businessException": false, | ||
| 740 | - "errorCode": null, | ||
| 741 | - "message": null, | ||
| 742 | - "result": { | ||
| 743 | - "code": "则一订单号", | ||
| 744 | - "customerOrderCode": "客户订单号" | ||
| 745 | - } | ||
| 746 | -} | ||
| 747 | -``` | ||
| 748 | - | ||
| 749 | - | ||
| 750 | - | ||
| 751 | - | ||
| 752 | - | ||
| 753 | -#### 推送司机车辆信息 | ||
| 754 | - | ||
| 755 | -##### 接口信息 | ||
| 756 | - | ||
| 757 | -###### 概述 | ||
| 758 | - | ||
| 759 | -则一调用该接口推送订单司机和车辆信息,可以进行多次推送,以操作时间戳最新一次推送的司机车辆信息为准。 | ||
| 760 | - | ||
| 761 | -###### 请求方式: | ||
| 762 | - | ||
| 763 | -post | ||
| 764 | - | ||
| 765 | -###### 请求路径: | ||
| 766 | - | ||
| 767 | -/assignVehicle | ||
| 768 | - | ||
| 769 | -###### Body参数 | ||
| 770 | - | ||
| 771 | -| 名称 | 类型 | 必填 | 示例值 | 描述 | | ||
| 772 | -| -------------------- | ------ | -------------------------- | ------------- | ------------------------ | | ||
| 773 | -| code | String | 是 | 220101000001 | 则一订单号 | | ||
| 774 | -| waybillCode | String | 是 | Y220101000001 | 则一运单号 | | ||
| 775 | -| customerOrderCode | String | 是 | 220101000001 | 客户订单号,订单唯一标识 | | ||
| 776 | -| driverName | String | 是 | 张三 | 司机姓名 | | ||
| 777 | -| driverMobile | String | 是 | 18801000000 | 司机手机号 | | ||
| 778 | -| licenseNumber | String | 是 | 沪DP2312 | 车牌号 | | ||
| 779 | -| trailerLicenseNumber | String | 否 | 陕K7C72挂 | 挂车车牌号 | | ||
| 780 | -| operateTime | Number | 是 | 1643251533306 | 操作时间戳 | | ||
| 781 | -| weight | Number | 否 | 200000 | 重量 | | ||
| 782 | -| volume | Number | 否 | 16 | 体积 | | ||
| 783 | - | ||
| 784 | -###### 返回示例 | ||
| 785 | - | ||
| 786 | -```json | ||
| 787 | -{ | ||
| 788 | - "success": true, | ||
| 789 | - "businessException": false, | ||
| 790 | - "errorCode": null, | ||
| 791 | - "message": null, | ||
| 792 | - "result": { | ||
| 793 | - "code": "则一订单号", | ||
| 794 | - "customerOrderCode": "客户订单号" | ||
| 795 | - } | ||
| 796 | -} | ||
| 797 | -``` | ||
| 798 | - | ||
| 799 | - | ||
| 800 | - | ||
| 801 | -#### 推送发车信息 | ||
| 802 | - | ||
| 803 | -##### 接口信息 | ||
| 804 | - | ||
| 805 | -###### 概述 | ||
| 806 | - | ||
| 807 | -则一调用该接口推送发车运输数据。 | ||
| 808 | - | ||
| 809 | -###### 请求方式: | ||
| 810 | - | ||
| 811 | -post | ||
| 812 | - | ||
| 813 | -###### 请求路径: | ||
| 814 | - | ||
| 815 | -/departVehicle | ||
| 816 | - | ||
| 817 | -###### Body参数 | ||
| 818 | - | ||
| 819 | -| 名称 | 类型 | 必填 | 示例值 | 描述 | | ||
| 820 | -| ----------------- | ------ | -------------------------- | ------------- | ------------------------ | | ||
| 821 | -| code | String | 是 | 220101000001 | 则一订单号 | | ||
| 822 | -| waybillCode | String | 是 | Y220101000001 | 则一运单号 | | ||
| 823 | -| customerOrderCode | String | 是 | 220101000001 | 客户订单号,订单唯一标识 | | ||
| 824 | -| departTime | Number | 是 | 1643251533306 | 发车时间戳 | | ||
| 825 | -| operateTime | Number | 是 | 1643251533306 | 操作时间戳 | | ||
| 826 | -| weight | Number | 否 | 200000 | 重量 | | ||
| 827 | -| volume | Number | 否 | 16 | 体积 | | ||
| 828 | - | ||
| 829 | -###### 返回示例 | ||
| 830 | - | ||
| 831 | -```json | ||
| 832 | -{ | ||
| 833 | - "success": true, | ||
| 834 | - "businessException": false, | ||
| 835 | - "errorCode": null, | ||
| 836 | - "message": null, | ||
| 837 | - "result": { | ||
| 838 | - "code": "则一订单号", | ||
| 839 | - "customerOrderCode": "客户订单号" | ||
| 840 | - } | ||
| 841 | -} | ||
| 842 | -``` | ||
| 843 | - | ||
| 844 | -#### 推送到车信息 | ||
| 845 | - | ||
| 846 | -##### 接口信息 | ||
| 847 | - | ||
| 848 | -###### 概述 | ||
| 849 | - | ||
| 850 | -则一调用该接口推送到达数据。 | ||
| 851 | - | ||
| 852 | -###### 请求方式: | ||
| 853 | - | ||
| 854 | -post | ||
| 855 | - | ||
| 856 | -###### 请求路径: | ||
| 857 | - | ||
| 858 | -/arriveVehicle | ||
| 859 | - | ||
| 860 | -###### Body参数 | ||
| 861 | - | ||
| 862 | -| 名称 | 类型 | 必填 | 示例值 | 描述 | | ||
| 863 | -| ----------------- | ------ | -------------------------- | ------------- | ------------------------ | | ||
| 864 | -| code | String | 是 | 220101000001 | 则一订单号 | | ||
| 865 | -| waybillCode | String | 是 | Y220101000001 | 则一运单号 | | ||
| 866 | -| customerOrderCode | String | 是 | 220101000001 | 客户订单号,订单唯一标识 | | ||
| 867 | -| arriveTime | Number | 是 | 1643251533306 | 到车时间戳 | | ||
| 868 | -| operateTime | Number | 是 | 1643251533306 | 操作时间戳 | | ||
| 869 | - | ||
| 870 | -###### 返回示例 | ||
| 871 | - | ||
| 872 | -```json | ||
| 873 | -{ | ||
| 874 | - "success": true, | ||
| 875 | - "businessException": false, | ||
| 876 | - "errorCode": null, | ||
| 877 | - "message": null, | ||
| 878 | - "result": { | ||
| 879 | - "code": "则一订单号", | ||
| 880 | - "customerOrderCode": "客户订单号" | ||
| 881 | - } | ||
| 882 | -} | ||
| 883 | -``` | ||
| 884 | - | ||
| 885 | -### Java-sdk下载 | ||
| 886 | - | ||
| 887 | -[zy-java-sdk](https://zeyi-tms-product.oss-cn-hangzhou.aliyuncs.com/file/jar/java-sdk/zy-java-sdk-1.0.0.jar) | ||
| 888 | - | ||
| 889 | - | ||
| 890 | - | ||
| 891 | -### 2022-03-09更新日志 | ||
| 892 | - | ||
| 893 | -为了保证接口的通用性,本次涉及到改动的信息如下 | ||
| 894 | - | ||
| 895 | -1. [下单](http://open-doc.shjiuze.cn/order.html#下单): 接口返回值移除子单集合,通过接单接口推送。 | ||
| 896 | -2. [接单接口](http://open-doc.shjiuze.cn/order.html#接单接口):由推送参考价改为接单接口,推送运单集合及每个运单的参考价格。 | ||
| 897 | -3. 对接接口中子单号subCode参数命名更改为运单号waybillCode。 | ||
| 898 | \ No newline at end of file | 0 | \ No newline at end of file |